Subject: Sun 3 SCSI controller REAL docs wanted
To: None <port-sparc@NetBSD.ORG, port-sun3@NetBSD.ORG>
From: David Jones <dej@achilles.net>
List: port-sparc
Date: 10/14/1995 11:19:59
I have now solved all problems related to the "si" driver except one:

The board will not generate an interrupt for DMA writes.

Reads work fine.  I was provided boot loader source code.  This is
not useful, as boot code need never do DMA writes.

I'm pretty sure that the si board is suppressing the interrupt signal.
The board indicates that the 5380 is generating an interrupt, but no
interrupts actually occur.  Remember, reads work fine, so the process
of taking an interrupt has been proven.

This may have something to do with the stupid 8K fifo on the board.
During a DMA write, the FIFO will slurp up all of the data in one go.
I find that I get an interrupt indication when the DMA is complete,
yet there are bytes in the fifo that have not been sent to the SCSI
bus.  For this reason, I can't poll for writes either - there is no
way to ensure that the FIFO is empty.  The "fifo empty" bit doesn't
seem to work as expected - it flops between 1 and 0, defeating
simple polling algorithms.

I am pretty sure that someone has either the original Sun-3 SCSI manual,
or a schematic of the VME si board.  A schematic will help - if I can
figure out which signals are involved in blocking the interrupt.
At this point I have run out of things to try.  Given other projects
(some with money involved), I cannot afford more time chasing dead ends.