108typedef enum : uint16_t {
ra8_err_codes_t
Canonical error code list for ra8-firmware.
@ k_ra8_err_rtos_mutex
Mutex API error (reserved for future use).
@ k_ra8_err_retry_limit
Retry budget exhausted – operation still failing after all attempts.
@ k_ra8_err_hw_init_failed
Hardware peripheral failed to initialise.
@ k_ra8_err_not_supported
Requested feature not compiled in, not wired, or not supported by this MCU variant.
@ k_ra8_err_crc_mismatch
CRC mismatch detected on received data.
@ k_ra8_err_no_mem
Static buffer exhausted (no dynamic memory on this project).
@ k_ra8_err_empty
Container empty – nothing to retrieve.
@ k_ra8_err_busy
Resource busy – blocking operation cannot proceed.
@ k_ra8_err_rtos_thread_create
Thread create failed (reserved for future use).
@ k_ra8_err_no_data
No application data available (e.g.
@ k_ra8_err_decomp_ratio
Compression ratio bound breached (ra8_decomp_limits_t).
@ k_ra8_err_would_block
Non-blocking operation would have blocked.
@ k_ra8_err_not_empty
Container still holds members – the operation requires it empty.
@ k_ra8_err_hw_unmapped
Peripheral register block is not mapped in this MCU variant.
@ k_ra8_err_spi_error
SPI transfer failed (bus fault, mode fault, overrun, ...).
@ k_ra8_err_checksum_mismatch
Stored / transmitted checksum does not match computed value.
@ k_ra8_fail
Generic unspecified failure.
@ k_ra8_err_out_of_range
Sensor or peripheral output out of valid range.
@ k_ra8_err_invalid_arg
Invalid function argument.
@ k_ra8_err_exists
Item already exists – cannot create again.
@ k_ra8_err_invalid_state
Module in wrong state for requested operation.
@ k_ra8_err_hw_timeout
Hardware timed out waiting for a flag or handshake.
@ k_ra8_err_validation_failed
Validation rule failed (caller-supplied invariant not satisfied).
@ k_ra8_err_decomp_output_cap
Decompression output cap breached (ra8_decomp_limits_t).
@ k_ra8_err_range_check_failed
Value outside range enforced by RA8_CHECK_RANGE / RA8_CHECK_RANGE_TAG.
@ k_ra8_err_not_initialized
Module not initialized – _init() not yet called successfully.
@ k_ra8_ok
Success – operation completed with all postconditions satisfied.
@ k_ra8_err_null_ptr
Pointer was NULL where a valid pointer was required.
@ k_ra8_err_hw_not_ready
Hardware peripheral exists but not ready yet.
@ k_ra8_err_rtos_queue
Queue / message API error (reserved for future use).
@ k_ra8_err_hw_error
Generic hardware fault detected (error flag set, fault interrupt).
@ k_ra8_err_rtos_error
Generic RTOS error (reserved for future use).
@ k_ra8_err_gpio_invalid_pin
GPIO pin index out of range within its port (valid: 0..15).
@ k_ra8_err_estop
Emergency stop active – operation forbidden until cleared.
@ k_ra8_err_access_denied
Operation refused because the target is protected against it.
@ k_ra8_err_protocol_error
Protocol-level error (e.g.
@ k_ra8_err_gpio_conflict
GPIO pin already owned by another peripheral or driver.
@ k_ra8_err_decomp_iterations
Decode-loop iteration budget exhausted (ra8_decomp_limits_t).
@ k_ra8_err_uart_error
UART / SCI error (framing, parity, overrun, break).
@ k_ra8_err_i2c_error
I2C / IIC error (arbitration lost, NACK, timeout, bus error).
@ k_ra8_err_timeout
Operation exceeded its time budget.
@ k_ra8_err_not_found
Requested item not found (lookup / search missed).
@ k_ra8_err_comm_error
Generic communication error (use a more specific code when possible).
@ k_ra8_err_rtos_timer
Timer API error (reserved for future use).
@ k_ra8_err_cancelled
Operation cancelled before completion.
@ k_ra8_err_conflict
Conflict with concurrent access detected.
@ k_ra8_err_decomp_depth
Container nesting-depth cap breached (ra8_decomp_limits_t).
@ k_ra8_err_rtos_semaphore
Semaphore API error (reserved for future use).
@ k_ra8_err_nack
Peer responded with NACK (negative acknowledgement).
@ k_ra8_err_gpio_invalid_port
GPIO port index out of range for this MCU.
@ k_ra8_err_invalid_size
Invalid size parameter (too large, too small, or misaligned).
@ k_ra8_err_decomp_entries
Archive entry-count cap breached (ra8_decomp_limits_t).
static bool ra8_err_is_error(ra8_err_t err)
Test whether a code represents failure.
ra8_err_codes_t ra8_err_t
Canonical error-return type used by every ra8-firmware API.
const char * ra8_err_to_str(ra8_err_t err)
Human-readable string for an error code.