RTEMS 6.1-rc7
Loading...
Searching...
No Matches
irq.h
Go to the documentation of this file.
1
21#ifndef LIBBSP_ARM_RASPBERRYPI_IRQ_H
22#define LIBBSP_ARM_RASPBERRYPI_IRQ_H
23
24#ifndef ASM
25
26#include <rtems.h>
27#include <dev/irq/arm-gic-irq.h>
28
37#define BCM2835_INTC_TOTAL_IRQ 216
38
39#define BCM2835_IRQ_SET1_MIN 0
40#define BCM2835_IRQ_SET2_MIN 32
41
42#define BCM2711_IRQ_VC_PERIPHERAL_BASE 96
43
44/* Interrupt Vectors: System Timer */
45#define BCM2835_IRQ_ID_GPU_TIMER_M0 (BCM2711_IRQ_VC_PERIPHERAL_BASE + 0)
46#define BCM2835_IRQ_ID_GPU_TIMER_M1 (BCM2711_IRQ_VC_PERIPHERAL_BASE + 1)
47#define BCM2835_IRQ_ID_GPU_TIMER_M2 (BCM2711_IRQ_VC_PERIPHERAL_BASE + 2)
48#define BCM2835_IRQ_ID_GPU_TIMER_M3 (BCM2711_IRQ_VC_PERIPHERAL_BASE + 3)
49
50/* Interrupt Vectors: SPI */
51#define BCM2711_IRQ_SPI (BCM2711_IRQ_VC_PERIPHERAL_BASE + 54)
52
53/* Interrupt Vectors: Videocore */
54#define BCM2711_IRQ_VC_PERIPHERAL_BASE 96
55#define BCM2711_IRQ_AUX (BCM2711_IRQ_VC_PERIPHERAL_BASE + 29)
56#define BCM2711_IRQ_PL011_UART (BCM2711_IRQ_VC_PERIPHERAL_BASE + 57)
57
58#define BCM2835_IRQ_ID_USB 9
59#define BCM2835_IRQ_ID_AUX 29
60#define BCM2835_IRQ_ID_SPI_SLAVE 43
61#define BCM2835_IRQ_ID_PWA0 45
62#define BCM2835_IRQ_ID_PWA1 46
63#define BCM2835_IRQ_ID_SMI 48
64#define BCM2835_IRQ_ID_GPIO_0 49
65#define BCM2835_IRQ_ID_GPIO_1 50
66#define BCM2835_IRQ_ID_GPIO_2 51
67#define BCM2835_IRQ_ID_GPIO_3 52
68#define BCM2835_IRQ_ID_I2C 53
69#define BCM2835_IRQ_ID_SPI 54
70#define BCM2835_IRQ_ID_PCM 55
71#define BCM2835_IRQ_ID_UART 57
72#define BCM2835_IRQ_ID_SD 62
73
74#define BCM2835_IRQ_ID_BASIC_BASE_ID 64
75#define BCM2835_IRQ_ID_TIMER_0 64
76#define BCM2835_IRQ_ID_MAILBOX_0 65
77#define BCM2835_IRQ_ID_DOORBELL_0 66
78#define BCM2835_IRQ_ID_DOORBELL_1 67
79#define BCM2835_IRQ_ID_GPU0_HALTED 68
80#define BCM2835_IRQ_ID_GPU1_HALTED 69
81#define BCM2835_IRQ_ID_ILL_ACCESS_1 70
82#define BCM2835_IRQ_ID_ILL_ACCESS_0 71
83#define BSP_TIMER_VIRT_PPI 27
84#define BSP_TIMER_PHYS_NS_PPI 30
85#define BSP_VPL011_SPI 32
86
87#define BSP_INTERRUPT_VECTOR_COUNT BCM2835_INTC_TOTAL_IRQ
88#define BSP_INTERRUPT_VECTOR_INVALID (UINT32_MAX)
89
90#define BSP_IRQ_COUNT (BCM2835_INTC_TOTAL_IRQ)
91
92#endif /* ASM */
93#endif /* LIBBSP_ARM_RASPBERRYPI_IRQ_H */
This header file provides interfaces of the ARM Generic Interrupt Controller (GIC) support.
This header file defines the RTEMS Classic API.