Subject: Re: IRQ and DRQ autoconfiguration
To: None <current-users@sun-lamp.cs.berkeley.edu, mycroft@duality.gnu.ai.mit.edu>
From: None <mycroft@gnu.ai.mit.edu>
List: current-users
Date: 07/30/1994 13:58:46
My question is: where does the uha code call the dma code to get
it to transfer the data, and is this code somehow turned off for
the 34f?
Most PC devices which do DMA require the channel to be configured in
`cascade mode'. Essentially, they pretend to be another 8237 DMA
controller, and drive the address and control lines on the bus
themselves, rather than letting the on-board DMA controllers do it.
If a DMA channel is configured in cascade mode but not actually used
(like with EISA BusLogic controllers on which the compatibility
`feature' has not been turned off), the channel will just sit idle.
Nothing bad will happen.
To quote from the `Microprocessor and Peripheral Handook, Volume I
Microprocessor', dated 1988:
`Cascade Mode -- This mode is used to cascade more than one 8237A
together for simple system expansion. The HRQ and HLDA signals from
the additional 8237A are connected to the DREQ and DACK signals of a
channel of the initial 8237A. This allows the DMA requests of the
additional device to propagate through the priority network circuitry
of the preceding device. The priority chain is preserved and the new
device must wait for its turn to acknowledge requests. Since the
cascade channel of the initial 8237A is used only for prioritizing the
additional device, it does not output any address or control signals
of its own. These could conflict with the output of the active
channel in the added device. The 8237A will respond to DREQ and DACK
but all other outputs expect HRQ will be disabled. The ready input is
ignored.'
------------------------------------------------------------------------------