Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 07 Dec 2005 11:07:28 -0700
From:      Scott Long <scottl@samsco.org>
To:        "M. Warner Losh" <imp@bsdimp.com>
Cc:        darren.pilgrim@bitfreak.org, current@freebsd.org
Subject:   Re: can someone explain...[ PCI interrupts]
Message-ID:  <439724E0.3020102@samsco.org>
In-Reply-To: <20051207.105722.60788677.imp@bsdimp.com>
References:  <018e01c5fafe$c9154a20$642a15ac@smiley> <20051207.105722.60788677.imp@bsdimp.com>

next in thread | previous in thread | raw e-mail | index | archive | help
M. Warner Losh wrote:

> In message: <018e01c5fafe$c9154a20$642a15ac@smiley>
>             "Darren Pilgrim" <darren.pilgrim@bitfreak.org> writes:
> : From: John Baldwin
> : > 
> : > The reason [for masking interrupts] is that PCI interrupts are level
> : > triggered, so they won't "shut up" until the ISR has run and pacified
> : > the PCI device.
> : 
> : But PCI interrupts can be programmed either level- or edge-triggered, so
> : wouldn't programming to edge-triggered interrupts solve the "they won't shut
> : up" issue?
> 
> PCI interrupts are level.  There's no way to program them otherwise.
> 
> Warner

While electrically they are level, the APIC can be programmed to pass
them on either level or edge.  Once you get into MSI, the distinction
becomes very muddy.

Scott



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?439724E0.3020102>