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.
(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.
Some of the stuff (e.g., rarpd, bootpd, dhcpd etc., libsa) still will
only support Ethernet. Tcpdump itself should be ok, but libpcap needs
lot of work.
For the detailed change history, look at the commit log entries for
the is-newarp branch.
multi-channel driver), or to SCSI_CHANNEL_ONLY_ONE if a
single-channel driver.
(2) use scsiprint() rather than a locally-defined autoconfig print
function, and kill any locally-defined print function.
a char *, because that's what was really intended, and because
if the print function modifies the string, various things could become
unhappy (so the string should _not_ be modified).
naming conflicts between bus attachments on ports that can have
multiple instances of the LANCE.
Changed struct ifnet to have a pointer to the softc of the underlying
device and a printable "external name" (name + unit number), thus eliminating
if_name and if_unit. Updated interface to (*if_watchdog)() and (*if_start)()
to take a struct ifnet *, rather than a unit number.
fixes the following problems:
- Timeout on START/STOP unit command (ie. when spinning up the drive)
Side effect of this fix is to reduce the busy-wait time in CMD phase.
- Occasionally, the driver would lose an SBIC interrupt, especially when
a tape drive was re-selecting on a busy SCSI bus.
contributed by: Steve Woodford <steve@mctavish.demon.co.uk>
this driver is based on the amiga sbic/33C93 driver. Steve has
cleaned it up and fixed lots of bugs. Note that the original driver
used features which require at least a WD33C93A (the vme147 has the
original WD33C93 chip <no 'A' suffix>). Steve has also written
the DMA routines for the 147 to get things really going. Hardware
scatter-gather DMA and sync. SCSI are not supported (yet). tested
on several disk drives and a tape drive. CD-ROM untested, but
should work.
remove their 'integrate' (usually defined to be 'static') keywords.
when lance drivers are split up by attachment, more than one file will
reference the copy/zero functions (i.e. not just the file that pulls in
am7990.c... and eventually inclusion of am7990.c should go away entirely).
- 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.