Home | History | Annotate | Download | only in ic
History log of /src/sys/dev/ic/bhareg.h
RevisionDateAuthorComments
 1.21  26-Feb-2017  jdolecek got 'bad mbi comp_stat 5' during DIOCGCACHE under Parallels, according
to linux driver it's possible status when controller thinks the CCB is invalid;
handle same as BHA_MBI_ABORT/BHA_MBI_UNKNOWN i.e. just clear the CCB anyway
 1.20  28-Apr-2008  martin branches: 1.20.44; 1.20.64; 1.20.68; 1.20.72;
Remove clause 3 and 4 from TNF licenses
 1.19  11-Dec-2005  christos branches: 1.19.70; 1.19.72; 1.19.74;
merge ktrace-lwp.
 1.18  21-Feb-2005  thorpej Part 1 of a cleanup pass over the SCSI subsystem. The aim is to name
everything "scsi_*", since we really are talking about the SCSI command
set, ATAPI transport not withstanding. Improve the names of many structures,
and prepend "SCSI_" onto all SCSI command opcodes. Place items described
by the SCSI Primary Commands document into scsi_spc.h.
 1.17  02-Nov-2003  wiz branches: 1.17.8; 1.17.10;
Fix some typos. From Tom Cosgrove via jmc@openbsd.
 1.16  25-Apr-2001  bouyer branches: 1.16.22;
Pull up the thorpej_scsipi branch to main branch.
This is a completely rewritten scsipi_xfer execution engine, and the
associated changes to HBA drivers. Overview of changes & features:
- All xfers are queued in the mid-layer, rather than doing so in an
ad-hoc fashion in individual adapter drivers.
- Adapter/channel resource management in the mid-layer, avoids even trying
to start running an xfer if the adapter/channel doesn't have the resources.
- Better communication between the mid-layer and the adapters.
- Asynchronous event notification mechanism from adapter to mid-layer and
peripherals.
- Better peripheral queue management: freeze/thaw, sorted requeueing during
recovery, etc.
- Clean separation of peripherals, adapters, and adapter channels (no more
scsipi_link).
- Kernel thread for each scsipi_channel makes error recovery much easier
(no more dealing with interrupt context when recovering from an error).
- Mid-layer support for tagged queueing: commands can have the tag type
set explicitly, tag IDs are allocated in the mid-layer (thus eliminating
the need to use buggy tag ID allocation schemes in many adapter drivers).
- support for QUEUE FULL and CHECK CONDITION status in mid-layer; the command
will be requeued, or a REQUEST SENSE will be sent as appropriate.

Just before the merge syssrc has been tagged with thorpej_scsipi_beforemerge
 1.15  03-Oct-2000  simonb branches: 1.15.2;
Revert rev 1.31 of bha.c (and associtated changes in the headers and
config glue files).

Fixes PR kern/9841. Tested by Tracy J. Di Marco White with a bt948
and 6 disks.
 1.14  23-Dec-1999  wrstuden branches: 1.14.4;
Make the bitfields in here work on big-endian machines. How this ever
worked is unclear.

Patch from thorpej, tested by me.
 1.13  30-Sep-1999  thorpej branches: 1.13.2;
Rework the Buslogic SCSI driver in preparation for some pending improvements
to the SCSIPI subsystem.
- Determine more characteristics about the board, including the number
of concurrent commands that the processor can execute at a time.
- Rework memory allocation strategy so that we can do dynamic pre-allocation
of resources according to workload.

Thanks to the Linux Buslogic driver for having some useful comments.
 1.12  17-Aug-1998  mycroft Assign my copyrights to TNF.
 1.11  06-Feb-1998  thorpej - Perform all necessary bus_dmamap_sync() operations.
- Greatly simplify allocation and DMA mapping of the mailbox and ccbs.
- Be more robust against resource shortage errors, and report errors better.
 1.10  28-Oct-1997  thorpej Reply from an INQUIRE DEVICES is a lun map.
 1.9  09-Sep-1997  mycroft branches: 1.9.2;
Make `hashkey' unsigned.
 1.8  27-Aug-1997  bouyer 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.
 1.7  06-Jun-1997  thorpej branches: 1.7.2; 1.7.4;
Pull thorpej-bus-dma branch into mainline.
 1.6  04-Jan-1997  jonathan branches: 1.6.8;
typo in definition of extended-geometry register.
 1.5  20-Dec-1996  thorpej Deal with targets > 7 on wide Buslogic controllers. Remember the "wide"
bit from the extended setup inquiry and key off it to:
- Force synchronous negotiation on targs > 7.
- Read additional information returned by wide cards on inquire setup.
- Read sync period on targs > 7.
- Display sync period/offset on targs > 7.
- Set scsi_link.max_target to 15.
cvs: ----------------------------------------------------------------------
 1.4  20-Dec-1996  jonathan Add missing fields to the extended_inquire reply struct.
Fixes probing of aha154x's, and provides wide/ultra bits for the MI scsi code.
 1.3  05-Nov-1996  jonathan * Add command struct and modifier definitions for controlling the
ISA-compatible port space of PCI buslogic cards.

* Add call to bha_pci.c to disable the ISA-compatible ports of a PCI
device. The ISA-compatible ports are enabled by default, which
causes the card to be autoconfigured a second time as an ISA device,
which appears to deadlock the card.

* Change bha_cmd() to return the number of bytes it actually received
in response to a command, or -1 on error.

* Use heuristics (checking for bha-only registers, and checking the size
of the response to BHA_INQURE_EXTENDED) to bha_find, to make sure the
bha driver never matches an aha (Adaptec 1542 or compatible) device.

A single kernel should now boot on either Adaptec or BusLogic controllers,
provided we always probe for BusLogic devices before Adaptec devices,
but this has not yet been verified.
 1.2  01-Sep-1996  mycroft Minor changes.
 1.1  31-Aug-1996  mycroft Split the BusLogic driver apart, and rename it to `bha (like BSDi).
 1.6.8.1  13-May-1997  thorpej Convert to use bus dma.
 1.7.4.2  16-Sep-1997  thorpej Update marc-pcmcia branch from trunk.
 1.7.4.1  27-Aug-1997  thorpej Update marc-pcmcia branch from trunk.
 1.7.2.1  01-Jul-1997  bouyer Updates for new scsipi subsystem. Actally known to work on i386 and sparc.
 1.9.2.1  29-Oct-1997  thorpej Pull up from trunk: reply from INQUIRE DEVICES is a lun map.
 1.13.2.3  27-Mar-2001  bouyer Convert these drivers to thorpej_scsipi (untested).
 1.13.2.2  20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.13.2.1  19-Oct-1999  thorpej Adapt to scsipi API changes, and add Tagged Queueing support.
 1.14.4.1  04-Oct-2000  simonb Pull up rev 1.15 (approved by thorpej):
Revert rev 1.31 of bha.c (and associtated changes in the headers and
config glue files).

Fixes PR kern/9841. Tested by Tracy J. Di Marco White with a bt948
and 6 disks.
 1.15.2.1  21-Jun-2001  nathanw Catch up to -current.
 1.16.22.4  04-Mar-2005  skrll Sync with HEAD.

Hi Perry!
 1.16.22.3  21-Sep-2004  skrll Fix the sync with head I botched.
 1.16.22.2  18-Sep-2004  skrll Sync with HEAD.
 1.16.22.1  03-Aug-2004  skrll Sync with HEAD
 1.17.10.1  19-Mar-2005  yamt sync with head. xen and whitespace. xen part is not finished.
 1.17.8.1  29-Apr-2005  kent sync with -current
 1.19.74.1  16-May-2008  yamt sync with head.
 1.19.72.1  18-May-2008  yamt sync with head.
 1.19.70.1  02-Jun-2008  mjf Sync with HEAD.
 1.20.72.1  21-Apr-2017  bouyer Sync with HEAD
 1.20.68.1  20-Mar-2017  pgoyette Sync with HEAD
 1.20.64.1  28-Aug-2017  skrll Sync with HEAD
 1.20.44.1  03-Dec-2017  jdolecek update from HEAD

RSS XML Feed