ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
fw_fs_transaction_iface Struct Reference

Staged-publication backend operations over caller-supplied state. More...

#include <fw_if_fs_backend.h>

Data Fields

ra8_err_t(* begin )(void *ctx, void *transaction_state, uint32_t state_bytes, const char *destination, fw_fs_transaction_policy_t policy)
 Create a private stage for the requested destination policy.
ra8_err_t(* write )(void *ctx, void *transaction_state, const uint8_t *src, uint32_t len, uint32_t *out_written)
 Append or overwrite bytes in the private stage.
ra8_err_t(* seek )(void *ctx, void *transaction_state, uint64_t absolute_offset)
 Set the absolute position within the staged stream.
ra8_err_t(* validate )(void *ctx, void *transaction_state, fw_fs_validate_fn_t validator, void *validator_ctx)
 Run a caller validator against the staged stream.
ra8_err_t(* commit )(void *ctx, void *transaction_state, bool *out_published)
 Publish the validated stage under the destination path.
ra8_err_t(* abort )(void *ctx, void *transaction_state)
 Close and remove an unpublished private stage.

Detailed Description

Staged-publication backend operations over caller-supplied state.

The entire interface may be NULL when k_fw_fs_cap_transactions is absent. A successful commit must set out_published true; an error may still set it true when publication happened before a later durability operation failed.

Definition at line 103 of file fw_if_fs_backend.h.

Field Documentation

◆ abort

ra8_err_t(* fw_fs_transaction_iface::abort) (void *ctx, void *transaction_state)

Close and remove an unpublished private stage.

Definition at line 126 of file fw_if_fs_backend.h.

Referenced by fw_fs_transaction_abort(), and internal_interfaces().

◆ begin

ra8_err_t(* fw_fs_transaction_iface::begin) (void *ctx, void *transaction_state, uint32_t state_bytes, const char *destination, fw_fs_transaction_policy_t policy)

Create a private stage for the requested destination policy.

Definition at line 105 of file fw_if_fs_backend.h.

Referenced by fw_fs_transaction_begin(), and internal_interfaces().

◆ commit

ra8_err_t(* fw_fs_transaction_iface::commit) (void *ctx, void *transaction_state, bool *out_published)

Publish the validated stage under the destination path.

Definition at line 124 of file fw_if_fs_backend.h.

Referenced by fw_fs_transaction_commit(), and internal_interfaces().

◆ seek

ra8_err_t(* fw_fs_transaction_iface::seek) (void *ctx, void *transaction_state, uint64_t absolute_offset)

Set the absolute position within the staged stream.

Definition at line 117 of file fw_if_fs_backend.h.

Referenced by fw_fs_transaction_seek(), and internal_interfaces().

◆ validate

ra8_err_t(* fw_fs_transaction_iface::validate) (void *ctx, void *transaction_state, fw_fs_validate_fn_t validator, void *validator_ctx)

Run a caller validator against the staged stream.

Definition at line 119 of file fw_if_fs_backend.h.

Referenced by fw_fs_transaction_validate(), and internal_interfaces().

◆ write

ra8_err_t(* fw_fs_transaction_iface::write) (void *ctx, void *transaction_state, const uint8_t *src, uint32_t len, uint32_t *out_written)

Append or overwrite bytes in the private stage.

Definition at line 111 of file fw_if_fs_backend.h.

Referenced by fw_fs_transaction_write(), and internal_interfaces().


The documentation for this struct was generated from the following file: