Zephyr API Documentation
4.3.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
arm_arch_timer.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2019 Carlo Caione <ccaione@baylibre.com>
3
*
4
* SPDX-License-Identifier: Apache-2.0
5
*/
6
7
8
#ifndef ZEPHYR_INCLUDE_DRIVERS_TIMER_ARM_ARCH_TIMER_H_
9
#define ZEPHYR_INCLUDE_DRIVERS_TIMER_ARM_ARCH_TIMER_H_
10
11
#include <
zephyr/dt-bindings/interrupt-controller/arm-gic.h
>
12
#include <
zephyr/types.h
>
13
#include <
zephyr/devicetree.h
>
14
15
#if DT_HAS_COMPAT_STATUS_OKAY(arm_armv8_timer)
16
#define ARM_TIMER_NODE DT_INST(0, arm_armv8_timer)
17
#elif DT_HAS_COMPAT_STATUS_OKAY(arm_armv7_timer)
18
#define ARM_TIMER_NODE DT_INST(0, arm_armv7_timer)
19
#endif
20
21
#define ARM_TIMER_SECURE_IRQ DT_IRQ_BY_IDX(ARM_TIMER_NODE, 0, irq)
22
#define ARM_TIMER_NON_SECURE_IRQ DT_IRQ_BY_IDX(ARM_TIMER_NODE, 1, irq)
23
#define ARM_TIMER_VIRTUAL_IRQ DT_IRQ_BY_IDX(ARM_TIMER_NODE, 2, irq)
24
#define ARM_TIMER_HYP_IRQ DT_IRQ_BY_IDX(ARM_TIMER_NODE, 3, irq)
25
26
#define ARM_TIMER_SECURE_PRIO DT_IRQ_BY_IDX(ARM_TIMER_NODE, 0,\
27
priority)
28
#define ARM_TIMER_NON_SECURE_PRIO DT_IRQ_BY_IDX(ARM_TIMER_NODE, 1,\
29
priority)
30
#define ARM_TIMER_VIRTUAL_PRIO DT_IRQ_BY_IDX(ARM_TIMER_NODE, 2,\
31
priority)
32
#define ARM_TIMER_HYP_PRIO DT_IRQ_BY_IDX(ARM_TIMER_NODE, 3,\
33
priority)
34
35
#define ARM_TIMER_SECURE_FLAGS DT_IRQ_BY_IDX(ARM_TIMER_NODE, 0, flags)
36
#define ARM_TIMER_NON_SECURE_FLAGS DT_IRQ_BY_IDX(ARM_TIMER_NODE, 1, flags)
37
#define ARM_TIMER_VIRTUAL_FLAGS DT_IRQ_BY_IDX(ARM_TIMER_NODE, 2, flags)
38
#define ARM_TIMER_HYP_FLAGS DT_IRQ_BY_IDX(ARM_TIMER_NODE, 3, flags)
39
40
#endif
/* ZEPHYR_INCLUDE_DRIVERS_TIMER_ARM_ARCH_TIMER_H_ */
arm-gic.h
devicetree.h
Devicetree main header.
types.h
zephyr
drivers
timer
arm_arch_timer.h
Generated on
for Zephyr API Documentation by
1.15.0