armOS
0.1.0
Minimal ARM Operating System for the Raspberry Pi - Documentation generated for Pi 4.
irq.h
Go to the documentation of this file.
1
8
#ifndef P_IRQ_H
9
#define P_IRQ_H
10
11
#include <
peripherals/base.h
>
12
17
enum
18
{
19
25
IRQ_BASE
= (
MMIO_BASE
+ 0xB000),
26
27
/* The offsets for reach register for the IRQ */
28
#
if
defined(MODEL_0) || defined(MODEL_2) || defined(MODEL_3)
29
/* Broadcom 2835, 2836, 2837 specific IRQ registers */
30
IRQ0_PENDING_0
= (
IRQ_BASE
+ 0x200),
31
IRQ0_PENDING_1
= (
IRQ_BASE
+ 0x204),
32
IRQ0_PENDING_2
= (
IRQ_BASE
+ 0x208),
33
FIQ_CONTROL = (
IRQ_BASE
+ 0x20C),
34
IRQ0_SET_EN_1
= (
IRQ_BASE
+ 0x210),
35
IRQ0_SET_EN_2
= (
IRQ_BASE
+ 0x214),
36
IRQ0_SET_EN_0
= (
IRQ_BASE
+ 0x218),
37
IRQ0_CLR_EN_1
= (
IRQ_BASE
+ 0x21C),
38
IRQ0_CLR_EN_2
= (
IRQ_BASE
+ 0x220),
39
IRQ0_CLR_EN_0
= (
IRQ_BASE
+ 0x224),
41
#elif defined(MODEL_4)
42
/* Broadcom 2711 specific IRQ registers */
43
IRQ0_PENDING_0
= (
IRQ_BASE
+ 0x200),
44
IRQ0_PENDING_1
= (
IRQ_BASE
+ 0x204),
45
IRQ0_PENDING_2
= (
IRQ_BASE
+ 0x208),
46
IRQ0_SET_EN_0
= (
IRQ_BASE
+ 0x210),
47
IRQ0_SET_EN_1
= (
IRQ_BASE
+ 0x214),
48
IRQ0_SET_EN_2
= (
IRQ_BASE
+ 0x218),
49
IRQ0_CLR_EN_0
= (
IRQ_BASE
+ 0x220),
50
IRQ0_CLR_EN_1
= (
IRQ_BASE
+ 0x224),
51
IRQ0_CLR_EN_2
= (
IRQ_BASE
+ 0x228),
52
#endif
53
55
AUX_IRQ
= (1 << 29),
56
57
SYSTEM_TIMER_IRQ_0
= (1 << 0),
58
SYSTEM_TIMER_IRQ_1
= (1 << 1),
59
SYSTEM_TIMER_IRQ_2
= (1 << 2),
60
SYSTEM_TIMER_IRQ_3
= (1 << 3)
61
};
62
63
#endif
SYSTEM_TIMER_IRQ_0
@ SYSTEM_TIMER_IRQ_0
Definition:
irq.h:57
IRQ0_PENDING_2
@ IRQ0_PENDING_2
Definition:
irq.h:45
AUX_IRQ
@ AUX_IRQ
Definition:
irq.h:55
IRQ0_SET_EN_2
@ IRQ0_SET_EN_2
Definition:
irq.h:48
SYSTEM_TIMER_IRQ_1
@ SYSTEM_TIMER_IRQ_1
Definition:
irq.h:58
IRQ0_SET_EN_1
@ IRQ0_SET_EN_1
Definition:
irq.h:47
IRQ_BASE
@ IRQ_BASE
Definition:
irq.h:25
base.h
Definition of base MMIO registers addresses.
IRQ0_PENDING_0
@ IRQ0_PENDING_0
Definition:
irq.h:43
SYSTEM_TIMER_IRQ_3
@ SYSTEM_TIMER_IRQ_3
Definition:
irq.h:60
IRQ0_PENDING_1
@ IRQ0_PENDING_1
Definition:
irq.h:44
IRQ0_CLR_EN_0
@ IRQ0_CLR_EN_0
Definition:
irq.h:49
IRQ0_SET_EN_0
@ IRQ0_SET_EN_0
Definition:
irq.h:46
IRQ0_CLR_EN_1
@ IRQ0_CLR_EN_1
Definition:
irq.h:50
MMIO_BASE
@ MMIO_BASE
Definition:
base.h:29
IRQ0_CLR_EN_2
@ IRQ0_CLR_EN_2
Definition:
irq.h:51
SYSTEM_TIMER_IRQ_2
@ SYSTEM_TIMER_IRQ_2
Definition:
irq.h:59
include
peripherals
irq.h
Generated by
1.8.17