diff options
Diffstat (limited to 'bsps/riscv/riscv/include/bsp/riscv.h')
-rw-r--r-- | bsps/riscv/riscv/include/bsp/riscv.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/bsps/riscv/riscv/include/bsp/riscv.h b/bsps/riscv/riscv/include/bsp/riscv.h index a469155865..2ef2f8d83d 100644 --- a/bsps/riscv/riscv/include/bsp/riscv.h +++ b/bsps/riscv/riscv/include/bsp/riscv.h @@ -34,17 +34,31 @@ extern "C" { #endif +static inline uint32_t _RISCV_Map_hardid_to_cpu_index(uint32_t hardid) +{ + return (hardid - RISCV_BOOT_HARTID); +} + +static inline uint32_t _RISCV_Map_cpu_index_to_hardid(uint32_t cpu_index) +{ + return (cpu_index + RISCV_BOOT_HARTID); +} + extern volatile RISCV_CLINT_regs *riscv_clint; void *riscv_fdt_get_address(const void *fdt, int node); uint32_t riscv_get_core_frequency(void); +#if RISCV_ENABLE_MPFS_SUPPORT != 0 +extern uint32_t riscv_hart_count; +#else #ifdef RTEMS_SMP extern uint32_t riscv_hart_count; #else #define riscv_hart_count 1 #endif +#endif uint32_t riscv_get_hart_index_by_phandle(uint32_t phandle); |