Zephyr Project API 3.7.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
structs.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2023 Arm Limited (or its affiliates). All rights reserved.
3 * SPDX-License-Identifier: Apache-2.0
4 */
5
6#ifndef ZEPHYR_INCLUDE_ARM_STRUCTS_H_
7#define ZEPHYR_INCLUDE_ARM_STRUCTS_H_
8
9#include <zephyr/types.h>
10
11#if defined(CONFIG_CPU_AARCH32_CORTEX_A) || defined(CONFIG_CPU_AARCH32_CORTEX_R)
12/* Per CPU architecture specifics */
13struct _cpu_arch {
14 int8_t exc_depth;
15};
16
17#else
18
19/* Default definitions when no architecture specific definitions exist. */
20
21/* Per CPU architecture specifics (empty) */
22struct _cpu_arch {
23#ifdef __cplusplus
24 /* This struct will have a size 0 in C which is not allowed in C++ (it'll have a size 1). To
25 * prevent this, we add a 1 byte dummy variable.
26 */
27 uint8_t dummy;
28#endif
29};
30
31#endif
32
33#endif /* ZEPHYR_INCLUDE_ARM_STRUCTS_H_ */
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
__INT8_TYPE__ int8_t
Definition stdint.h:72