LSI 53C810A User Manual

Page of 238
Interrupt Handling
2-17
If the LSI53C810A is sending data to the SCSI bus and a fatal SCSI
interrupt condition occurs, data could be left in the DMA FIFO. Because
of this the DMA FIFO Empty (DFE) bit in
should be
checked.
If this bit is cleared, set the CLF (Clear DMA FIFO) and CSF (Clear SCSI
FIFO) bits before continuing. The CLF bit is bit 2 in
The CSF bit is bit 1 in
DSTAT – The
register contains the DMA-type
interrupt bits. Reading this register determines which condition or
conditions caused the DMA-type interrupt, and clears that DMA interrupt
condition. The DFE bit, bit 7 in DSTAT, is purely a status bit; it will not
generate an interrupt under any circumstances and will not be cleared
when read. DMA interrupts flush neither the DMA nor SCSI FIFOs before
generating the interrupt, so the DFE bit in the
register should be checked after any DMA interrupt.
If the DFE bit is cleared, then the FIFOs must be cleared by setting the
CLF (Clear DMA FIFO) and CSF (Clear SCSI FIFO) bits, or flushed by
setting the FLF (Flush DMA FIFO) bit.
SIEN0 and SIEN1 – The
and
registers are the interrupt enable registers
for the SCSI interrupts in
and
DIEN – The
register is the interrupt enable
register for DMA interrupts in
.
DCNTL – When bit 1 in the
register is set, the
IRQ/ pin is not asserted when an interrupt condition occurs. The interrupt
is not lost or ignored, but merely masked at the pin. Clearing this bit
when an interrupt is pending immediately causes the IRQ/ pin to assert.
As with any register other than ISTAT, this register cannot be accessed
except by a SCRIPTS instruction during SCRIPTS execution.