Line data Source code
1 0 : /* 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_ */