ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
ra8_scb.h
Go to the documentation of this file.
1
46
47#pragma once
48
49#ifdef __cplusplus
50extern "C" {
51#endif
52
53#include <stdint.h>
54
55#include "ra8_err.h"
56
86typedef struct {
87 uint32_t cfsr;
88 uint32_t hfsr;
89 uint32_t dfsr;
90 uint32_t mmfar;
91 uint32_t bfar;
92 uint32_t afsr;
93 uint32_t sfsr;
94 uint32_t sfar;
96
125
149void ra8_scb_set_vtor(uintptr_t base);
150
170[[nodiscard]] uintptr_t ra8_scb_get_vtor(void);
171
193[[nodiscard]] bool ra8_scb_trace_enabled(void);
194
213void ra8_scb_trace_enable(void);
214
215#ifdef __cplusplus
216}
217#endif
Error Code Definitions for ra8-firmware.
ra8_err_codes_t ra8_err_t
Canonical error-return type used by every ra8-firmware API.
Definition ra8_err.h:546
uintptr_t ra8_scb_get_vtor(void)
Read the current vector-table base from SCB->VTOR.
Definition ra8_scb.c:118
bool ra8_scb_trace_enabled(void)
Report whether DEMCR.TRCENA (trace subsystem enable) is set.
Definition ra8_scb.c:124
void ra8_scb_set_vtor(uintptr_t base)
Relocate the vector table by writing SCB->VTOR.
Definition ra8_scb.c:111
ra8_err_t ra8_scb_read_fault_status(ra8_scb_fault_status_t *out)
Read the Cortex-M85 SCB fault-status registers into one struct.
Definition ra8_scb.c:86
void ra8_scb_trace_enable(void)
Set DEMCR.TRCENA to power up the trace subsystem.
Definition ra8_scb.c:131
One snapshot of the Cortex-M85 SCB fault-status registers.
Definition ra8_scb.h:86
uint32_t mmfar
MemManage Fault Address Register (if CFSR.MMARVALID).
Definition ra8_scb.h:90
uint32_t dfsr
Debug Fault Status Register.
Definition ra8_scb.h:89
uint32_t hfsr
HardFault Status Register.
Definition ra8_scb.h:88
uint32_t afsr
Auxiliary Fault Status Register.
Definition ra8_scb.h:92
uint32_t cfsr
Configurable Fault Status Register (MMFSR|BFSR|UFSR).
Definition ra8_scb.h:87
uint32_t sfsr
SecureFault Status Register (Secure-banked, RAZ NS).
Definition ra8_scb.h:93
uint32_t bfar
BusFault Address Register (if CFSR.BFARVALID).
Definition ra8_scb.h:91
uint32_t sfar
SecureFault Address Register (if SFSR.SFARVALID).
Definition ra8_scb.h:94