Re: what is IRQ sharing?



On 2007-02-22, kerneloops <rambo88@xxxxxxxxx> wrote:

what is IRQ sharing?

On the common PC (x86) processors, hardware devices can use special
signals called "interrupt requests" (aka IRQ) to tell the cpu they need
some attention. x86 type processors allow up to 16 interrupts, but
several of these are reserved for specific devices such as the system
timer, keyboard, and real-time clock. Another (IRQ2) is dedicated to
providing a cascade to a second IRQ controller -- this is a legacy of
the original 8086 processor design which only allowed for 8 interrupts.
IRQ2 cascades to a second controller which provides another 8 interrupts
for a total of 16. Even this cobble-job was only helpful for a while; as
people added more devices (sound cards, addition HD controllers, network
cards, video cards, etc) all requiring their own IRQ it quickly became a
nightmare to manage all this. When the PCI bus was designed in the mid
80s, one of the design features was to allow devices to share IRQs as a
means of working around this limitation -- the original ISA bus didn't
allow any sharing. So your PCI devices can usually -- but not always --
share an IRQ with another PCI device so you don't have to worry so much
about this issue.


--

John (john@xxxxxxxxxxx)
.



Relevant Pages

  • Re: 2.6.12 sound problem
    ... >>of obscure kernel parameters. ... Allocating PCI resources starting at 10000000 ... Using ACPI for IRQ routing ... Using CSCINT to route CSC interrupts to PCI ...
    (Linux-Kernel)
  • [PATCH 2.6.16] Shared interrupts sometimes lost
    ... wireless cards - based on the RaLink 2560 chip set. ... This is using the "legacy" rt2500 driver derived from the vendor ... But Linux is definitely implicated in the loss of interrupts. ... This is my first real introduction to the IRQ handling code in Linux, ...
    (Linux-Kernel)
  • Re: [RFC][PATCH] Cascaded interrupts: a simple solution
    ... IRQ layer and thus make the generic IRQ layer truly generic. ... information is permanently lost and we end up losing interrupts. ... clean way to handle this type of cascading via the 'return irq' method.) ... demultiplexing into the _demultiplexing handler_, ...
    (Linux-Kernel)
  • Re: [PATCH 0/7] Boot IRQ quirks and rerouting
    ... When IRQ lines on secondary or higher IO-APICs are masked (as done by ... spurious interrupts and can lead to disabled IRQ lines. ... Boot interrupts still arrive on the first IO-APIC and end ...
    (Linux-Kernel)
  • Re: pci slots
    ... Some slots will share interrupts, ... > To expand on what Walter has pointed out, modern mobos have sound cards, ... > specific PCI slots.For instance, my ECS mobo shares Slot 1 with AGP, ... And some carts like to be on some IRQ and/or I/O channel, ...
    (alt.os.linux)