Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Documentation: irq/concepts: Minor improvements

Just note in the docs:

1) A PCI device as an example for shared interrupts
2) A sparse tree can be used for interrupts too
3) i8259s which have 8 pins

[ tglx: Fix up subject prefix ]

Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lore.kernel.org/all/20250319092951.37667-55-jirislaby@kernel.org



authored by

Jiri Slaby (SUSE) and committed by
Thomas Gleixner
225942f0 2f7bd329

+7 -5
+7 -5
Documentation/core-api/irq/concepts.rst
··· 4 4 5 5 An IRQ is an interrupt request from a device. Currently, they can come 6 6 in over a pin, or over a packet. Several devices may be connected to 7 - the same pin thus sharing an IRQ. 7 + the same pin thus sharing an IRQ. Such as on legacy PCI bus: All devices 8 + typically share 4 lanes/pins. Note that each device can request an 9 + interrupt on each of the lanes. 8 10 9 11 An IRQ number is a kernel identifier used to talk about a hardware 10 12 interrupt source. Typically, this is an index into the global irq_desc 11 - array, but except for what linux/interrupt.h implements, the details 12 - are architecture specific. 13 + array or sparse_irqs tree. But except for what linux/interrupt.h 14 + implements, the details are architecture specific. 13 15 14 16 An IRQ number is an enumeration of the possible interrupt sources on a 15 17 machine. Typically, what is enumerated is the number of input pins on 16 18 all of the interrupt controllers in the system. In the case of ISA, 17 - what is enumerated are the 16 input pins on the two i8259 interrupt 18 - controllers. 19 + what is enumerated are the 8 input pins on each of the two i8259 20 + interrupt controllers. 19 21 20 22 Architectures can assign additional meaning to the IRQ numbers, and 21 23 are encouraged to in the case where there is any manual configuration