Commit Graph

34 Commits

Author SHA1 Message Date
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