Zephyr Project API 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
structs.h
Go to the documentation of this file.
1/*
2 * Copyright (c) Intel Corporation
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
7#ifndef ZEPHYR_INCLUDE_ARCH_XTENSA_STRUCTS_H_
8#define ZEPHYR_INCLUDE_ARCH_XTENSA_STRUCTS_H_
9
10/* Per CPU architecture specifics */
11struct _cpu_arch {
12#if defined(CONFIG_XTENSA_LAZY_HIFI_SHARING)
13 atomic_ptr_val_t hifi_owner; /* Owner of HiFi */
14#if CONFIG_MP_MAX_NUM_CPUS > 1
15 atomic_ptr_val_t save_hifi; /* Save HiFi on IPI if match hifi_owner */
16#endif
17#elif defined(__cplusplus)
18 /* An empty struct is not valid C, and compilers that accept it give
19 * it size 0 while C++ gives 1. Keep a byte so both languages agree.
20 */
21 uint8_t dummy;
22#endif
23};
24
25#endif /* ZEPHYR_INCLUDE_ARCH_XTENSA_STRUCTS_H_ */
atomic_ptr_t atomic_ptr_val_t
Value type for atomic pointer variables.
Definition atomic_types.h:53
__UINT8_TYPE__ uint8_t
Definition stdint.h:88