diff options
author | gibbs <gibbs@FreeBSD.org> | 1998-11-23 01:33:47 +0000 |
---|---|---|
committer | gibbs <gibbs@FreeBSD.org> | 1998-11-23 01:33:47 +0000 |
commit | ad7080d581f4d14be46b9ce97e1d89ab54565fd9 (patch) | |
tree | 7bab1dcb022f080626a0b5a06296e839a6d4c72a /sbin/mount_umap | |
parent | 0b3bd2def8c0b1aad4cf5df500e9eb3c3947b7c8 (diff) | |
download | FreeBSD-src-ad7080d581f4d14be46b9ce97e1d89ab54565fd9.zip FreeBSD-src-ad7080d581f4d14be46b9ce97e1d89ab54565fd9.tar.gz |
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.
Diffstat (limited to 'sbin/mount_umap')
0 files changed, 0 insertions, 0 deletions