> From: Finn Thain <fthain@tele...>
> Date: Fri, 4 Jan 2008 22:05:20 +1100 (EST)
> > I have a partially written replacement for mac_esp. Unlike the other
> > NCR53C9x drivers it needs PIO or pseudo DMA depending on the machine -- so
> > it is not as straight-forward as jazz_esp. The new esp_scsi core assumes
> > DMA and doesn't support asynch transfers. But I'll try to get it finished
> > before 2.6.25 is released.
> It does actually support such things.
Does it? When I looked at this around 2.6.22, I found that esp_scsi would
always negotiate sync transfers if the target supported that. PIO cannot
do sync transfers, so I had to modify esp_scsi in order that the chip's
Synchronous Offset register was set to zero (asynch).
> You can hide it completely your ->irq_pending() handler. Process any
> pending pseudo DMA and return 0 until there is a pseudo DMA error or the
> pseudo DMA is complete and the ESP is signalling an IRQ.
I didn't attempt any processing in irq_pending. I'll look into it.