5#ifndef OPENTITAN_SW_DEVICE_SILICON_CREATOR_LIB_DRIVERS_IBEX_H_
6#define OPENTITAN_SW_DEVICE_SILICON_CREATOR_LIB_DRIVERS_IBEX_H_
25uint32_t ibex_fpga_version(
void);
27#ifdef OT_PLATFORM_RV32
31inline void ibex_mcycle_zero(
void) {
40inline uint32_t ibex_mcycle32(
void) {
50inline uint64_t ibex_mcycle(
void) {
57 return ((uint64_t)hi << 32) | lo;
63inline uint64_t ibex_time_to_cycles(uint64_t time_us) {
67extern void ibex_mcycle_zero(
void);
68extern uint32_t ibex_mcycle32(
void);
69extern uint64_t ibex_mcycle(
void);
70extern uint64_t ibex_time_to_cycles(uint64_t time_us);
79typedef enum ibex_exception_code {
80 kIbexExceptionCodeLoadAccessFault = 5,
81 kIbexExceptionCodeMax = 31,
82} ibex_exception_code_t;
96 kAddressTranslationSecMmioConfigure = 6,
109void ibex_addr_remap_0_set(uint32_t matching_addr, uint32_t remap_addr,
122void ibex_addr_remap_1_set(uint32_t matching_addr, uint32_t remap_addr,
133uint32_t ibex_addr_remap_get(uint32_t index);
141void ibex_addr_remap_lockdown(uint32_t index);