61typedef enum : uint32_t {
159 __asm
volatile(
"nop");
185 __asm
volatile(
"wfi");
206 ra8_log_info(
"M85",
"==== RA8D2 dual-core blink template ====");
212 ra8_log_info(
"M85",
"VCOM console init failed -- HIL banner unavailable");
215 ra8_log_info(
"M85",
"releasing Cortex-M33 secondary core ...");
224 ra8_log_info(
"M85",
"M33 released -- it now blinks LED1 (BLUE, P600)");
228 ra8_log_info(
"M85",
"M85 entering WFI idle -- low-power co-processor model");
void main(void)
Secure fallback main entry point.
uint32_t g_ra8_ls_cpu1_mram_start
static void internal_emit_pass(void)
Emit the deterministic HIL success banner over the VCOM console.
static const uint8_t s_blink_m33_pass_banner[]
Deterministic HIL banner: the M33 secondary core was released (uart_scrape).
static bool internal_console_init(void)
Bring up the SCI8 / J-Link OB VCOM console for the HIL success banner.
static void internal_idle_forever(void)
Idle the M85 forever once the M33 owns the work (low-power posture).
blink_m33_hil_t
VCOM-console line rate for the deterministic HIL success banner.
@ k_blink_m33_hil_baud
VCOM console line rate (8N1).
static void internal_park_forever(void)
Park the M85 forever after an unrecoverable startup failure.
uint32_t g_ra8_ls_cpu1_stack_top
Annotation-attribute framework macros for ra8-firmware.
#define RA8_INTERNAL
Marker that a function is intended to be static (file-local).
I/O-expander, USB, camera, external-memory, MIPI-DSI, UART console, and Ethernet portion of the EK-RA...
ra8_err_t ra8_board_uart_console_write(const uint8_t *data, size_t len)
Polled blocking write to the J-Link OB VCOM console.
ra8_err_t ra8_board_uart_console_init(uint32_t baud)
Configure SCI8 + PD02/PD03 as the debug-console UART.
ra8_err_t ra8_board_uart_console_flush(void)
Block until every byte queued on the J-Link OB VCOM console has finished clocking out on the wire.
Boot entry points shared between a vector table and its startup code.
High-level Clock Generation Circuit driver.
ra8_err_t ra8_cgc_init(void)
Configure the clock tree to a safe default.
Dual-core (CPU0 / CPU1) lifecycle helper – public API.
ra8_err_t ra8_cpu1_release(void *entry, void *sp)
Release CPU1 (Cortex-M33) from reset and start it executing.
Error Code Definitions for ra8-firmware.
@ k_ra8_ok
Success – operation completed with all postconditions satisfied.
ra8_err_codes_t ra8_err_t
Canonical error-return type used by every ra8-firmware API.
Lightweight Logging Interface for ra8-firmware.
void ra8_log_init(void)
Initialise the logging backend.
#define ra8_log_info_val(tag, message, value)
RA8 log info val.
#define ra8_log_info(tag, message)
RA8 log info.