第10章 割り込み(IRQ)について

表10.1 割り込み(IRQ)一覧表

LinuxでのIRQ番号名称インタラプトソース説明
2IRQ_COMMRXVIC #2COMMRX
3IRQ_COMMTXVIC #3COMMTX
4IRQ_TIMER1VIC #4TIMER1
5IRQ_TIMER2VIC #5TIMER2
6IRQ_AACVIC #6AAC
7IRQ_DMAM2P0VIC #7DMAM2P0
8IRQ_DMAM2P1VIC #8DMAM2P1
9IRQ_DMAM2P2VIC #9DMAM2P2
10IRQ_DMAM2P3VIC #10DMAM2P3
11IRQ_DMAM2P4VIC #11DMAM2P4
12IRQ_DMAM2P5VIC #12DMAM2P5
13IRQ_DMAM2P6VIC #13DMAM2P6
14IRQ_DMAM2P7VIC #14DMAM2P7
15IRQ_DMAM2P8VIC #15DMAM2P8
16IRQ_DMAM2P9VIC #16DMAM2P9
17IRQ_DMAM2M0VIC #17DMAM2M0
18IRQ_DMAM2M1VIC #18DMAM2M1
19IRQ_GPIO0VIC #19GPIO0
20IRQ_GPIO1VIC #20GPIO1
21IRQ_GPIO2VIC #21GPIO2
22IRQ_GPIO3VIC #22GPIO3
23IRQ_UARTRX1VIC #23UARROWX1
24IRQ_UARTTX1VIC #24UARTTX1
25IRQ_UARTRX2VIC #25UARROWX2
26IRQ_UARTTX2VIC #26UARTTX2
27IRQ_UARTRX3VIC #27UARROWX3
28IRQ_UARTTX3VIC #28UARTTX3
29IRQ_KEYVIC #29KEY
30IRQ_TOUCHVIC #30TOUCH
32IRQ_EXT0VIC #32EXT0
33IRQ_EXT1VIC #33EXT1
34IRQ_EXT2VIC #34EXT2
35IRQ_64HZVIC #3564HZ
36IRQ_WEINVIC #36WEIN
37IRQ_RTCVIC #37RTC
38IRQ_IRDAVIC #38IRDA
39IRQ_MACVIC #39MAC
40IRQ_EXT3 (IRQ_EIDE)VIC #40EXT3 (EIDE)
41IRQ_PROGVIC #41PROG
42IRQ_1HZVIC #421HZ
43IRQ_VSYNCVIC #43VSYNC
44IRQ_VIDEOFIFOVIC #44VIDEOFIFO
45IRQ_SSPRXVIC #45SSPRX
46IRQ_SSPTXVIC #46SSPTX
47IRQ_GPIO4VIC #47GPIO4
48IRQ_GPIO5VIC #48GPIO5
49IRQ_GPIO6VIC #49GPIO6
50IRQ_GPIO7VIC #50GPIO7
51IRQ_TIMERVIC #51TIMER3
52IRQ_UART1VIC #52UART1
53IRQ_SSPVIC #53SSP
54IRQ_UART2VIC #54UART2
55IRQ_UART3VIC #55UART3
56IRQ_USHVIC #56USH
57IRQ_PMEVIC #57PME
58IRQ_DSPVIC #58DSP
59IRQ_GPIOVIC #59GPIO
60IRQ_SAIVIC #60SAI
64IRQ_ISA3PC/104 #3
65IRQ_ISA4PC/104 #4
66IRQ_ISA5PC/104 #5
67IRQ_ISA6PC/104 #6
68IRQ_ISA7PC/104 #7
69IRQ_ISA9PC/104 #9
70IRQ_ISA10PC/104 #10
71IRQ_ISA11PC/104 #11
72IRQ_ISA12PC/104 #12
73IRQ_ISA14PC/104 #14
74IRQ_ISA15PC/104 #15

表10.2 PC/104 IRQサポート関数[8]

用途LinuxのIRQ番号からPC/104のIRQ番号へ変換
関数定義static __inline__ unsigned int convirq_to_isa (unsigned int irq);
使用例
  • LinuxのIRQ番号IRQ_ISA3をPC/104のIRQ番号に変換

    const unsigned linux_irq = IRQ_ISA3;

    unsigned int isa_irq;

    isa_irq = convirq_to_isa(linux_irq);

用途PC/104のIRQ番号からLinuxのIRQ番号へ変換
関数定義static __inline__ unsigned int convirq_from_isa (unsigned int irq);
使用例
  • PC/104のIRQ番号3をLinuxのIRQ番号に変換

    const unsigned int isa_irq = 3;

    unsigned linux_irq;

    linux_irq = convirq_from_isa(isa_irq);

[8] (カーネルソース)/include/asm-arm/arch-ep93xx/irqs.h内で定義