Project Home
Project Home
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - InterruptAttach question: (5 Items)
   
InterruptAttach question  
I'm trying to share an interrupt between two devices on an x86 system with a vanilla PC architecture.  There are 
political reasons that I have to either get it working or prove it won't work other than "Its a bad idea".  Each device 
has its own interrupt handler and process thread.

On initialization each thread calls InterruptAttach on the same IRQ line.  Both calls to InterruptAttach return the same
 value.  Is this normal behavior?

Also, I have been assuming that QNX configures the 8259 PIC with level-sensitive interrupts like DOS and Windows.  Is 
this a correct assumption?
RE: InterruptAttach question  
Hi Robert,

level-sensitive should be correct. Identical interrupt ids would not be expected; are you sure they aren't -1, or your 
threads terminated right after attaching their interrupt handlers ?

Perhaps you'd care to post your test-case and sample output?

Cheers,
Thomas


-----Original Message-----
From: Robert Murrell [mailto:community-noreply@qnx.com] 
Sent: Mittwoch, 25. Januar 2012 15:11
To: ostech-core_os
Subject: InterruptAttach question

I'm trying to share an interrupt between two devices on an x86 system with a vanilla PC architecture.  There are 
political reasons that I have to either get it working or prove it won't work other than "Its a bad idea".  Each device 
has its own interrupt handler and process thread.

On initialization each thread calls InterruptAttach on the same IRQ line.  Both calls to InterruptAttach return the same
 value.  Is this normal behavior?

Also, I have been assuming that QNX configures the 8259 PIC with level-sensitive interrupts like DOS and Windows.  Is 
this a correct assumption?




_______________________________________________

OSTech
http://community.qnx.com/sf/go/post91127
Re: RE: InterruptAttach question  
Well, now on testing, InterruptAttach is returning a unique ID.  So for now, I'm going to assume what I had seen 
yesterday was the result of a short between the headsets.  However, thank you for confirming that the ISA IRQs are level
-sensitive under QNX so the next guy doesn't have to guess.  I am seeing some oddities with this interrupt scheme, but I
 will make separate posts if I have more questions.
Re: InterruptAttach question  
Robert Murrell wrote:
> Well, now on testing, InterruptAttach is returning a unique ID.  So for now, I'm going to assume what I had seen 
yesterday was the result of a short between the headsets.  However, thank you for confirming that the ISA IRQs are level
-sensitive under QNX

No ... the ISA interrupt is edge sensitive and this behavior has been 
defined by ISA archttecture. Level sensitive is the PCI interrupt as 
defined by the PCI standard.

--Armin



> so the next guy doesn't have to guess.  I am seeing some oddities with this interrupt scheme, but I will make separate
 posts if I have more questions.
>
>
>
>
> _______________________________________________
>
> OSTech
> http://community.qnx.com/sf/go/post91133
>
>
Re: InterruptAttach question  
OK.  So the definitive statement is for QNX running under the ISA architecture, the PCI interrupts are level-sensitive 
and the ISA interrupts are edge-sensitive.