Page 1 of 1

irq handler

Posted: Mon Apr 01, 2002 12:00 am
by Stefan
I don't get it! What should an irq handler (routine) do?
How can I know wich device interrupts me, when the same irq is shared for more than one device?

Can anybody give me a hand with this problem?
Thanks!

RE:irq handler

Posted: Mon Apr 01, 2002 12:00 am
by The Legend
>On 2002-04-01 09:52:35, Stefan wrote:
>I don't get it! What should an irq handler (routine) do?
>How can I know wich device interrupts me, when the same irq is shared for more than one device?
>
>Can anybody give me a hand with this problem?
>Thanks!
Query the device ...
For a network check the i/o buffers, for a video
well, don't if you can test wether you are just
in a vertical retrace and similar for other devices.

The Legend

RE:irq handler

Posted: Mon Apr 01, 2002 12:00 am
by Stefan
Query the devis?
I still don't get it!

RE:irq handler

Posted: Mon Apr 01, 2002 12:00 am
by The Legend
>On 2002-04-01 11:25:08, Stefan wrote:
>Query the devis?
>I still don't get it!
Call each handler associated with an irq and each
handler will check if anything needs to be done.
That way, more than one device is possible.

The Legend

RE:irq handler

Posted: Mon Apr 01, 2002 12:00 am
by J. Weeks
>On 2002-04-01 09:52:35, Stefan wrote:
>I don't get it! What should an irq handler (routine) do?
>How can I know wich device interrupts me, when the same irq is shared for more than one device?
>
>Can anybody give me a hand with this problem?
>Thanks!

Prob'ly the easiest way to handle this is to
simply make sure each device has a different
IRQ.

If you map your "standard" (I'm at a
loss for a good name for those... all I mean
is the processor generated irq's... keyboard,
timer, co-pro, etc) interrupts to above 0x20
you'll probably save a lot of hassle.

That way, for example, if you get an irq 6 you
don't have to wonder wether it's the network card
(if it were assign to irq 6, I mean)
or and invalid opcode exception.

Hope that helps,
Jeff

RE:irq handler

Posted: Tue Apr 02, 2002 12:00 am
by K.J.
>On 2002-04-01 17:04:45, J. Weeks wrote:
>>On 2002-04-01 09:52:35, Stefan wrote:
>>I don't get it! What should an irq handler (routine) do?
>>How can I know wich device interrupts me, when the same irq is shared for more than one device?
>>
>>Can anybody give me a hand with this problem?
>>Thanks!
>
>Prob'ly the easiest way to handle this is to
>simply make sure each device has a different
>IRQ.
>
>If you map your "standard" (I'm at a
>loss for a good name for those... all I mean
>is the processor generated irq's... keyboard,
>timer, co-pro, etc) interrupts to above 0x20
>you'll probably save a lot of hassle.
>
>That way, for example, if you get an irq 6 you
>don't have to wonder wether it's the network card
>(if it were assign to irq 6, I mean)
>or and invalid opcode exception.
>
>Hope that helps,
>Jeff

Remap the IRQs starting at either 0x20 or some other number that is a multipule of 8 and like 0x40

If you remap the IRQs, you will have a much easier time making your OS.

K.J.