1 /*
2  * Copyright (c) BayLibre SAS
3  *
4  * SPDX-License-Identifier: Apache-2.0
5  */
6 
7 #ifndef ZEPHYR_INCLUDE_RISCV_STRUCTS_H_
8 #define ZEPHYR_INCLUDE_RISCV_STRUCTS_H_
9 
10 /* Per CPU architecture specifics */
11 struct _cpu_arch {
12 #ifdef CONFIG_USERSPACE
13 	unsigned long user_exc_sp;
14 	unsigned long user_exc_tmp0;
15 	unsigned long user_exc_tmp1;
16 #endif
17 #if defined(CONFIG_SMP) || (CONFIG_MP_MAX_NUM_CPUS > 1)
18 	unsigned long hartid;
19 	bool online;
20 #endif
21 #ifdef CONFIG_FPU_SHARING
22 	atomic_ptr_val_t fpu_owner;
23 	uint32_t fpu_state;
24 #endif
25 };
26 
27 #endif /* ZEPHYR_INCLUDE_RISCV_STRUCTS_H_ */
28