66 if (cheriot_mem_sys == NULL) {
73 alert_idx = CHERIOT_MEM_SYS_ALERT_TEST_FATAL_FAULT_BIT;
79 uint32_t alert_test_reg = bitfield_bit32_write(0, alert_idx,
true);
81 alert_test_reg = bitfield_bit32_write(
82 alert_test_reg, CHERIOT_MEM_SYS_ALERT_TEST_REGWEN_BIT,
true);
85 (ptrdiff_t)CHERIOT_MEM_SYS_ALERT_TEST_REG_OFFSET,
171 dif_cheriot_mem_sys_irq_t irq,
174 if (cheriot_mem_sys == NULL || is_pending == NULL) {
179 if (!cheriot_mem_sys_get_irq_bit_index(irq, &index)) {
183 uint32_t intr_state_reg = mmio_region_read32(
185 (ptrdiff_t)CHERIOT_MEM_SYS_INTR_STATE_REG_OFFSET);
188 *is_pending = bitfield_bit32_read(intr_state_reg, index);
215 dif_cheriot_mem_sys_irq_t irq) {
217 if (cheriot_mem_sys == NULL) {
222 if (!cheriot_mem_sys_get_irq_bit_index(irq, &index)) {
227 uint32_t intr_state_reg = bitfield_bit32_write(0, index,
true);
230 (ptrdiff_t)CHERIOT_MEM_SYS_INTR_STATE_REG_OFFSET,
240 dif_cheriot_mem_sys_irq_t irq,
243 if (cheriot_mem_sys == NULL) {
248 if (!cheriot_mem_sys_get_irq_bit_index(irq, &index)) {
252 uint32_t intr_test_reg = bitfield_bit32_write(0, index, val);
255 (ptrdiff_t)CHERIOT_MEM_SYS_INTR_TEST_REG_OFFSET,
265 dif_cheriot_mem_sys_irq_t irq,
268 if (cheriot_mem_sys == NULL || state == NULL) {
273 if (!cheriot_mem_sys_get_irq_bit_index(irq, &index)) {
277 uint32_t intr_enable_reg = mmio_region_read32(
279 (ptrdiff_t)CHERIOT_MEM_SYS_INTR_ENABLE_REG_OFFSET);
282 bool is_enabled = bitfield_bit32_read(intr_enable_reg, index);
283 *state = is_enabled ?
292 dif_cheriot_mem_sys_irq_t irq,
295 if (cheriot_mem_sys == NULL) {
300 if (!cheriot_mem_sys_get_irq_bit_index(irq, &index)) {
304 uint32_t intr_enable_reg = mmio_region_read32(
306 (ptrdiff_t)CHERIOT_MEM_SYS_INTR_ENABLE_REG_OFFSET);
310 intr_enable_reg = bitfield_bit32_write(intr_enable_reg, index, enable_bit);
313 (ptrdiff_t)CHERIOT_MEM_SYS_INTR_ENABLE_REG_OFFSET,