Path: utzoo!utgpu!water!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!cwjcc!gatech!rutgers!mailrus!uwmcsd1!ig!agate!ucbvax!WEGENER.MIT.EDU!krowitz
From: krowitz@WEGENER.MIT.EDU (David Krowitz)
Newsgroups: comp.sys.apollo
Subject: GPIO help
Message-ID: <8809212330.AA16999@wegener.mit.edu>
Date: 21 Sep 88 23:30:51 GMT
Sender: daemon@ucbvax.BERKELEY.EDU
Organization: The Internet
Lines: 25

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)