Interrupt handling.
[cascardo/kernel/slides/.git] / 10interrupts / interrupts
1 %Interrupts
2 %Thadeu Cascardo
3
4 # Hardware interrupts
5
6 * Way to notify the processor an external event has happened
7 * Signal
8 * Concurrency
9
10 # Enable and disable
11
12 * local\\_irq\\_disable
13 * local\\_irq\\_enable
14 * local\\_irq\\_save
15 * local\\_irq\\_restore
16 * disable\\_irq(irq)
17 * enable\\_irq(irq)
18
19 # Request and Release
20
21 * request\\_irq(irq, handler, flags, name, dev)
22 * IRQF\\_SHARED
23 * IRQF\\_SAMPLE\\_RANDOM
24 * free\\_irq(irq, dev)
25
26 # Writing Handlers
27
28 * irqreturn\\_t handler(irq, dev)
29 * IRQ\\_NONE
30 * IRQ\\_HANDLE