[comp.sys.apollo] GPIO help

krowitz@WEGENER.MIT.EDU (David Krowitz) (09/22/88)

I'm trying to write a device driver for an AT bus card using
a similar multibus card's driver as an example, and I don't
quite understand the interrupt library for an AT device. With
the multibus device, I just load up the command register of
the device to initiate the DMA operation. With the AT device,
it looks like I should be calling pbu_$dma_start to set up the
CPU's DMA hardware. When I bind the interrupt library, the
binder reports that all globals are resolved, yet when I try
to aquire the device with /com/aqdev I get a message about
the library containing unresolved globals. If I remove the
call to pbu_$dma_start from the interrupt library and
rebind it I can then aquire the device (but I can use it
since there is no way to start the DMA). The call to
pbu_$dma_start is the only GPIO call in the interrupt library.
It it legal to make GPIO calls from the interrupt level?
If not, how do I initiate the DMA transfer?


 -- David Krowitz

krowitz@richter.mit.edu   (18.83.0.109)
krowitz%richter@eddie.mit.edu
krowitz%richter@athena.mit.edu
krowitz%richter.mit.edu@mitvma.bitnet
(in order of decreasing preference)