freebsd-src/sys/dev/aic7xxx
Justin T. Gibbs 08c6fbfa40 Change the delivery mechanism for incoming target commands. We now
use a 256 entry ring buffer of descriptersfor this purpose.  This allows
the use of a simple 8bit counter in the sequencer code for tracking start
location.

Entries in the ring buffer now contain a "cmd_valid" byte at their tail.
As an entry is serviced, this byte is cleared by the kernel and set by
the sequencer during its dma of a new entry.  Since this byte is the last
portion of the command touched during a dma, the kernel can use this
byte to ensure the command it processes is completely valid.

The new command format requires a fixed sized DMA from the controller
to deliver which allowed for additional simplification of the sequencer
code.  The hack that required 1 SCB slot to be stolen for incoming
command delivery notification is also gone.
1998-11-23 01:33:47 +00:00
..
aicasm Massive overhaul of the aic7xxx driver: 1998-09-15 07:24:17 +00:00
93cx6.c Massive overhaul of the aic7xxx driver: 1998-09-15 07:24:17 +00:00
93cx6.h Massive overhaul of the aic7xxx driver: 1998-09-15 07:24:17 +00:00
ahc_eisa.c Bring back support for honoring the primary channel setting for twin channel 1998-10-15 18:21:50 +00:00
ahc_pci.c ahc_pci.c: 1998-10-07 03:40:51 +00:00
aic7xxx.c Change the delivery mechanism for incoming target commands. We now 1998-11-23 01:33:47 +00:00
aic7xxx.h Change the delivery mechanism for incoming target commands. We now 1998-11-23 01:33:47 +00:00
aic7xxx.reg Change the delivery mechanism for incoming target commands. We now 1998-11-23 01:33:47 +00:00
aic7xxx.seq Change the delivery mechanism for incoming target commands. We now 1998-11-23 01:33:47 +00:00
aic7xxx_93cx6.c Massive overhaul of the aic7xxx driver: 1998-09-15 07:24:17 +00:00
aic7xxx_93cx6.h Massive overhaul of the aic7xxx driver: 1998-09-15 07:24:17 +00:00
aicasm.c Massive overhaul of the aic7xxx driver: 1998-09-15 07:24:17 +00:00
aicasm.h Massive overhaul of the aic7xxx driver: 1998-09-15 07:24:17 +00:00
aicasm_gram.y Massive overhaul of the aic7xxx driver: 1998-09-15 07:24:17 +00:00
aicasm_scan.l Massive overhaul of the aic7xxx driver: 1998-09-15 07:24:17 +00:00
aicasm_symbol.c Massive overhaul of the aic7xxx driver: 1998-09-15 07:24:17 +00:00
aicasm_symbol.h Massive overhaul of the aic7xxx driver: 1998-09-15 07:24:17 +00:00
Makefile Add support to aicasm for "downloaded constants". These are immediate 1997-09-27 19:37:31 +00:00
sequencer.h Massive overhaul of the aic7xxx driver: 1998-09-15 07:24:17 +00:00