|author||Eric W. Biederman <email@example.com>||2006-06-29 02:25:02 -0700|
|committer||Linus Torvalds <firstname.lastname@example.org>||2006-06-29 10:26:25 -0700|
[PATCH] genirq: irq: document what an IRQ is
Signed-off-by: Eric W. Biederman <email@example.com> Cc: Ingo Molnar <firstname.lastname@example.org> Cc: Thomas Gleixner <email@example.com> Cc: Benjamin Herrenschmidt <firstname.lastname@example.org> Cc: Rajesh Shah <email@example.com> Cc: Andi Kleen <firstname.lastname@example.org> Cc: "Protasevich, Natalie" <Natalie.Protasevich@UNISYS.com> Cc: "Luck, Tony" <email@example.com> Signed-off-by: Andrew Morton <firstname.lastname@example.org> Signed-off-by: Linus Torvalds <email@example.com>
Diffstat (limited to 'Documentation/IRQ.txt')
1 files changed, 22 insertions, 0 deletions
diff --git a/Documentation/IRQ.txt b/Documentation/IRQ.txt
new file mode 100644
@@ -0,0 +1,22 @@
+What is an IRQ?
+An IRQ is an interrupt request from a device.
+Currently they can come in over a pin, or over a packet.
+Several devices may be connected to the same pin thus
+sharing an IRQ.
+An IRQ number is a kernel identifier used to talk about a hardware
+interrupt source. Typically this is an index into the global irq_desc
+array, but except for what linux/interrupt.h implements the details
+are architecture specific.
+An IRQ number is an enumeration of the possible interrupt sources on a
+machine. Typically what is enumerated is the number of input pins on
+all of the interrupt controller in the system. In the case of ISA
+what is enumerated are the 16 input pins on the two i8259 interrupt
+Architectures can assign additional meaning to the IRQ numbers, and
+are encouraged to in the case where there is any manual configuration
+of the hardware involved. The ISA IRQs are a classic example of
+assigning this kind of additional meaning.