Home
last modified time | relevance | path

Searched refs:pmp_index (Results 1 – 2 of 2) sorted by relevance

/openbmc/qemu/target/riscv/
H A Dpmp.c46 static inline int pmp_is_locked(CPURISCVState *env, uint32_t pmp_index) in pmp_is_locked() argument
53 if (env->pmp_state.pmp[pmp_index].cfg_reg & PMP_LOCK) { in pmp_is_locked()
58 if ((pmp_index + 1u) >= MAX_RISCV_PMPS) { in pmp_is_locked()
76 static inline uint8_t pmp_read_cfg(CPURISCVState *env, uint32_t pmp_index) in pmp_read_cfg() argument
78 if (pmp_index < MAX_RISCV_PMPS) { in pmp_read_cfg()
79 return env->pmp_state.pmp[pmp_index].cfg_reg; in pmp_read_cfg()
90 static bool pmp_write_cfg(CPURISCVState *env, uint32_t pmp_index, uint8_t val) in pmp_write_cfg() argument
92 if (pmp_index < MAX_RISCV_PMPS) { in pmp_write_cfg()
102 if (!MSECCFG_MML_ISSET(env) && !pmp_is_locked(env, pmp_index)) { in pmp_write_cfg()
119 if (!pmp_is_locked(env, pmp_index)) { in pmp_write_cfg()
[all …]
H A Dpmp.h82 void pmp_update_rule_addr(CPURISCVState *env, uint32_t pmp_index);