On Wed, Dec 12, 2001 at 03:02:19AM -0800, Terry Lambert wrote:
> How is setting a local register when an interrupt is triggered
> antithetical to such cards working?  I know of several network
> cards where I've personally hacked on the driver that have such
> a register.
> 
> It's not possbile to take a shared interrupt and not run the ISR,
> but it's possible for the ISR to check the register and decide on
> that basis, rather than on data availability, that it will or will
> not do work.
> 
> I think that everyone now "gets" that PCI interrupts are like
> signals, in that they are persistant conditions, so more than one
> card asserting them doesn't change the fact that "an interrupt"
> was asserted, and there's no way to tell _from the interrupt_
> which cards did or did not assert it in the first place.  But we
> are talking about an extra hardware register on the card that the
> card sets when it asserts an interrupt, so an ISR can look to ask
> the card "did you assert an interrupt?" and decide not to process
> if the answer is "no".
> 
> The Tigon II interrupt sharing in fact depends on this, or when
> you had two Tigon II cards, you migh spend the rest of eternity in
> the ISR.

I never understood why the PCI-bus is not a interupt vector design.

-- 
B.Walter              COSMO-Project         http://www.cosmo-project.de
[EMAIL PROTECTED]         Usergroup           [EMAIL PROTECTED]


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to