|
ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
|
32-byte application-image header at the base of each slot. More...
#include <ra8_dfu.h>
Data Fields | |
| uint32_t | magic |
| Must equal k_ra8_dfu_hdr_magic. | |
| uint32_t | seq |
| Monotonic sequence; higher valid slot wins. | |
| uint32_t | img_len |
| Image body length in bytes (32-byte multiple). | |
| uint32_t | img_crc32 |
| CRC32 (IEEE) over the image body. | |
| uint32_t | entry |
| SRAM run base (== k_ra8_dfu_run_base). | |
| uint32_t | rsv0 |
| Reserved; programmed 0. | |
| uint32_t | rsv1 |
| Reserved; programmed 0. | |
| uint32_t | rsv2 |
| Reserved; programmed 0. | |
32-byte application-image header at the base of each slot.
Stored in the slot's LAST 32-byte page (slot_base + k_ra8_dfu_hdr_offset) and programmed last (after the image body) so a torn write leaves an invalid (CRC-mismatching) slot rather than a half-valid one. The image body starts at slot_base; img_crc32 covers exactly [slot_base, slot_base + img_len).
| uint32_t ra8_dfu_img_hdr_t::entry |
SRAM run base (== k_ra8_dfu_run_base).
Definition at line 179 of file ra8_dfu.h.
Referenced by blc_boot_slot(), and ra8_dfu_program_commit().
| uint32_t ra8_dfu_img_hdr_t::img_crc32 |
CRC32 (IEEE) over the image body.
Definition at line 178 of file ra8_dfu.h.
Referenced by ra8_dfu_hdr_valid(), and ra8_dfu_program_commit().
| uint32_t ra8_dfu_img_hdr_t::img_len |
Image body length in bytes (32-byte multiple).
Definition at line 177 of file ra8_dfu.h.
Referenced by blc_boot_slot(), ra8_dfu_hdr_valid(), ra8_dfu_program_commit(), and ra8_dfu_slot_valid().
| uint32_t ra8_dfu_img_hdr_t::magic |
Must equal k_ra8_dfu_hdr_magic.
Definition at line 175 of file ra8_dfu.h.
Referenced by ra8_dfu_hdr_valid(), ra8_dfu_program_commit(), and ra8_dfu_slot_seq().
| uint32_t ra8_dfu_img_hdr_t::seq |
Monotonic sequence; higher valid slot wins.
Definition at line 176 of file ra8_dfu.h.
Referenced by ra8_dfu_program_commit(), and ra8_dfu_slot_seq().