Zephyr API Documentation 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
bcm2836-l1.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2026 Jonathan Elliot Peace <jep@alphabetiq.com>
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
13
14#ifndef ZEPHYR_INCLUDE_DT_BINDINGS_INTERRUPT_CONTROLLER_BCM2836_L1_H_
15#define ZEPHYR_INCLUDE_DT_BINDINGS_INTERRUPT_CONTROLLER_BCM2836_L1_H_
16
18
19/* Per-core sources on the BCM2836 ARM-local interrupt controller. */
20#define BCM2836_LOCAL_IRQ_CNTPSIRQ 0 /* secure physical timer */
21#define BCM2836_LOCAL_IRQ_CNTPNSIRQ 1 /* non-secure physical timer */
22#define BCM2836_LOCAL_IRQ_CNTHPIRQ 2 /* hypervisor physical timer */
23#define BCM2836_LOCAL_IRQ_CNTVIRQ 3 /* virtual timer */
24#define BCM2836_LOCAL_IRQ_MAILBOX0 4
25#define BCM2836_LOCAL_IRQ_MAILBOX1 5
26#define BCM2836_LOCAL_IRQ_MAILBOX2 6
27#define BCM2836_LOCAL_IRQ_MAILBOX3 7
28#define BCM2836_LOCAL_IRQ_GPU 8 /* cascade from BCM2835 ARMC */
29#define BCM2836_LOCAL_IRQ_PMU 9
30
31/* IRQ-flag aliases mirroring arm-gic.h, so dts entries read alike. */
32#ifndef IRQ_TYPE_LEVEL
33#define IRQ_TYPE_LEVEL 2 /* BIT(1) */
34#endif
35#ifndef IRQ_TYPE_EDGE
36#define IRQ_TYPE_EDGE 4 /* BIT(2) */
37#endif
38
40
41#endif /* ZEPHYR_INCLUDE_DT_BINDINGS_INTERRUPT_CONTROLLER_BCM2836_L1_H_ */