Subject: Re: LKM device drivers?
To: None <amiga-dev@NetBSD.ORG>
From: Michael L. Hitch <osymh@gemini.oscs.montana.edu>
List: amiga-dev
Date: 03/04/1995 12:01:02
On Mar 4, 8:03am, Rob Healey wrote:
> Also, with the new fangled interrupt system in -current how
> do you use audio since it steals the audio interrupt to
> do delayed processing of level 6 stuff?
The level 6 deferred processing will only be done if you specify
the LEV6_DEFER option. If there isn't a level 6 interrupt pending
when the level 4 interrupt occurs, it will process the level 4
interrupt normally. If there is a level 6 interrupt pending, then
the level 6 interrupt will be processed. At the end of that
processing, the AUD3 interrupt will be cleared in the INTREQ register.
I don't know enough about how the INTREQ register is implemented, or
how the audio interrupts work, so I'm not sure what would happen. If
channel 3 isn't being used, there wouldn't be any problem. The level
6 interrupt could test if AUD3 is already set and save that state.
Then AUD3 could be conditionally cleared only if it wasn't pending
at the time of the level 6 interrupt. This only leaves the case
where the AUD3 gets set between the time the level 6 interrupt handler
tests AUD3 and when the deferred handler clears AUD3. I'm not sure
what could be done for this case.
Michael
--
Michael L. Hitch INTERNET: osymh@montana.edu
Computer Consultant
Office of Systems and Computing Services
Montana State University Bozeman, MT USA