Commit Graph

42 Commits

Author SHA1 Message Date
mhitch
ee0ecb0855 Coerce the SII driver into working with MI SCSI; convert scsipi_xfer info
into a ScsiCmd structure.
2000-06-02 20:20:29 +00:00
simonb
bf851ea6cb Nuke register. 2000-03-30 14:45:04 +00:00
nisimura
13441f2429 It's not necessary to have #if NSII > 0. 2000-03-04 06:05:36 +00:00
simonb
ede7778a1c Remove unneeded include files (up to 16 in two files!). 2000-01-10 03:24:31 +00:00
simonb
636b65bec8 The clean-up continues:
- Make local-only function and variables static.
 - Move function prototypes and extern variable declarations to
   header files.
 - Delete unused variables.
There's still a handful of extern declaraions that should be fixed up.
2000-01-09 03:55:28 +00:00
simonb
ee075b7de7 Function prototype cleanup. 2000-01-08 01:02:35 +00:00
simonb
b7a2ec3f01 + Call prom_scsiid() to found out what the host SCSI ID should
be instead of hardcoding values.
 + Print the host SCSI ID in siiattach().

XXX - probably should do the same to the ASC driver??  The manuals for
the 5000 series machines don't mention the scsiidN env variable, but it
is present on all the models I've looked at...
1999-06-08 23:41:59 +00:00
simonb
dc1d3940db Nuke register and remove trailling white space. 1999-04-24 08:01:01 +00:00
thorpej
29d472f53d Garbage-collect the open_target_lu and close_target_lu entry points from
struct scsipi_adapter; they were not used.

Add a scsipi_ioctl entry point to struct scsipi_adapter.  This will be
used to issue ioctl commands to the host adapters.

Inspired by PR #6090, from Matt Jacob.
1998-10-10 00:28:28 +00:00
simonb
76e48472e6 Include pmax/pmax/pmaxtype.h for definition of DS_PMAX 1998-05-19 04:31:27 +00:00
simonb
469658d533 - Allow all valid SCSI id's to work on the SII and first two ASC
controllers (including SCSI id 7 on the 2100/3100).
- On the pmax (2100,3100) set the host SCSI id to 6.
- Move disk and tape config for the second ASC controller from the GENERIC
  config file to scsi.pmax so all configurations can use the second
  controller.
1998-05-08 00:05:19 +00:00
jonathan
4ea6444493 Decsystem 5100 (aka mipsmate aka kn230) support:
* dec_5100.c: sysconf, interrupt, and  motherboard (drain writebuffer)
   support for 5100.
 * support for hardware kludge in 5100: sii DMA buffer is hardware
   padded to alternate 32-bit words, not alternating 16-bit  halfwords.
 * 5100 has no framebuffer, console is wired to serial port 0.

With ibus support, boots as far as exec'ing init, and hangs.
1998-04-19 01:27:02 +00:00
jonathan
9d3e5cca36 garbage-collect old integrated frontend from sii backend. 1998-03-30 09:47:51 +00:00
thorpej
0475e09198 Update for changes to config. 1998-01-12 20:04:24 +00:00
bouyer
6f3bab1f59 Merge scsipi branch in the mainline. This add support for ATAPI devices
(currently only CD-ROM drives on i386). The sys/dev/scsipi system provides 2
busses to which devices can attach (scsibus and atapibus). This needed to
change some include files and structure names in the low level scsi drivers.
1997-08-27 11:22:52 +00:00
jonathan
4631885e91 Kill __BROKEN_INDIRECT_CONFIG on pmax.
Based on a patch from Chris G. Demetriou, December 1996.
1997-07-21 05:39:02 +00:00
jonathan
1f44934407 * Change Sprite MACH_xxx prefix to MIPS_xxx.
* Use standard mips terminology (xxx_KSEG0, xxx_KSEG1) instead of the
  (more meaningful) Sprite names (xxx_CACHED, xxx_UNCACHED).
1997-06-22 07:42:25 +00:00
jonathan
f4dc901780 Use #include <machine/bus.h> in pmax device drivers.
Garbage-collect `#include <pmax/locore.h>' lines.
1997-06-16 02:53:23 +00:00
mhitch
74245805bb DECstation MIPS3 support: wbflush() is cpu-dependent, need declaration from
machine/locore.h.
1997-06-15 17:58:56 +00:00
jonathan
3906c8cde5 Fix possible uninitialized variable bug which trips -Wall. When
recovering from a possible race condition in sii_intr, read the active
target from the destat register, and set the softc state pointer
`state' appropriately.  (This warning is in a block that prints a
warning message, and the warning message has _never_ been seen. The
bug is probably innocuous.)

Also addresses the `more thought needed' in the log message for rev. 1.12.
1997-05-29 19:26:06 +00:00
mhitch
0db8e55935 DMA state was not getting saved if dmaCurPhase was data-out. If the
message-in was a save data pointer, the driver would loop in the
interrupt routine.
1997-05-22 03:26:16 +00:00
jonathan
d6611ebcef * Add fixes for possibly-uninitialized variables from rev 1.11.
(The operator-precdence changes in 1.11 were pulled up in rev 1.14).

* If the chip asserts a SCSI-bus error (SII_BER) in sii_intr,
  reset the SII_BER bit instead   of ignoring it.
  XXX SII_BER May need checking and resetting elsewhere.
1997-04-29 01:58:38 +00:00
mhitch
32fccda062 The active target needs to be initialized in siiattach() instead of
old_siiattach().
1996-10-22 23:15:10 +00:00
jonathan
23ad284399 Remove obsolete `#include <machine/MachConst.h>'.
Where CACHED_TO_HYS() is still needed for kernel-virtual-to-physical
or physical-to-uncached mapping (fb drivers), replace with
`#include <mips/cpuregs.h>'.
1996-10-13 13:13:50 +00:00
christos
d286889901 backout previous kprintf change 1996-10-13 03:39:27 +00:00
jonathan
986daa1436 Split sii driver into bus-dependent front-end and chip-specific back-end:
sii_ds.c -- front-end for Decstation 2100, 3100, 5100(?)
    sii.c --  driver for DEC scsi asic used in decstations and vax 3400s
    siivar.h -- shared softc
1996-10-13 03:02:39 +00:00
christos
19d8368f2f printf -> kprintf, sprintf -> ksprintf 1996-10-11 00:44:42 +00:00
jonathan
3a51c3ecb0 Move old 4.4bsd/pmax driver declaration below prototypes of driver
entry points, for -Wall -Wstrict-prototypes.
1996-09-21 08:47:17 +00:00
mhitch
3686def7f7 Add parenthesis to correct a check for current SII state, so that a forced
disconnect will be done (it would never have been done with the old code).
1996-09-07 01:19:45 +00:00
mhitch
5b0728f9a2 Correct update of DMA address register when saving DMA state on a
message-in.  The remaining transfer count restored when a device is
reselected needs to be saved.  The saved value is needed to compute
the number of bytes transferred if another disconnect occurs.  This
fixes a random read data corruption that occurs on certain disks that
may disconnect more than once in the middle of a DMA transfer.
1996-07-30 06:36:33 +00:00
jonathan
f0d175fd22 Commit version that _really_ has only the innocuous fixes in the
last CVS message.

Possible uninitialized use of variables in the SII state machine,
requiring more thought, are still present.
1996-04-12 18:22:35 +00:00
jonathan
f6897c8eb6 fixes for -Wall -Wmissing-prototypes:
pass 1 over pmax SII driver: change "MachEmptyWriteBuffer()" to
"wbflush()", add prototyped forward declarations.
1996-04-12 18:15:23 +00:00
thorpej
77abd102b7 New device attachment scheme:
- split softc size and match/attach out from cfdriver into
	  a new struct cfattach.

	- new "attach" directive for files.*.  May specify the name of
	  the cfattach structure, so that devices may be easily attached
	  to parents with different autoconfiguration semantics.
1996-03-17 01:38:52 +00:00
jonathan
5ea2ec2357 Re-write Decstation turbochannel autoconfiguration code to use the machine-
independent TC support in sys/dev/tc/tc.c and sys/dev/tc/tcvar.h:
  * Change the tc autoconfiguration tables to use a struct tc_attach_args
    instead of the ad-hoc structure.
  * Change all pmax device drivers to use a `struct confargs' that's
    assignment-compatible with  sys/dev/tc/tcvar.h `struct tcdev_attach_args'.
    Devices that can be present on a TC or as ioctl asic/mainbus builtins
    use  the same `struct confargs'.
  * Eliminate the `BUS_CVTADDR()' macros which the pmax port inherited from
    an old, now-obsolete sys/arch/alpha snapshot.

  * Update the comments and debugging code in interrupt handlers to
    be consistent with the machine-independent TC support.

Other commits that overlap the same source files include: re-enabling
clock-tick interrupts earlier, and counting hardclock ticks for vmstat -i.
1996-01-29 22:52:15 +00:00
jonathan
d7b9b56e07 Rename the old pmax SCSI driver's "struct scsi_device" to
"struct pmax_scsi_device", to avoid name conflicts with the sys/dev/scsi
SCSI driver.
1995-09-13 19:35:53 +00:00
jonathan
23366c17ff Rename the old 4.4bsd/pmax old-style config "struct device" to
"struct pmax_device" to avoid conflict with <sys/device.h>.

Change the signature of interrupt-handlers to take a void *
(a pointer to the softc) and return an int (indicating spurious
interrupts or other conditions.)
1995-09-11 08:29:11 +00:00
jonathan
88b9b7eb4a Update DECstation drivers to use new-style config, removing
old-style config support, except for SCSI disks and tapes.
1995-08-10 04:21:35 +00:00
dean
907abf89c7 put #ifdef DEBUG around call to debug routines 1994-11-22 18:58:43 +00:00
cgd
a63beafc2b new RCS ID format. 1994-10-26 21:08:38 +00:00
glass
6b63c739f3 bsd 4.4-lite pmax port as ported to NetBSD 1994-05-27 08:57:32 +00:00
glass
377b097932 upgrade to bsd 4.4-lite code base. only mod is rcsids 1994-05-27 08:39:00 +00:00
deraadt
fe806afec2 pmax code from <ralphc@pyramid.com> & <rick@snowhite.cis.uoguelph.ca> 1993-10-12 03:22:19 +00:00