Software APIs
owner_rescue_config Struct Reference

The owner rescue configuration describes how the rescue protocol should behave when invoked in the ROM_EXT. More...

#include <sw/device/silicon_creator/lib/ownership/datatypes.h>

Data Fields

tlv_header_t header
 Header identifiying this struct.
 
uint8_t protocol
 The rescue protocol:
 
uint8_t gpio
 The gpio configuration (if relevant, depending on detect).
 
uint8_t timeout
 The timeout configuration (not implemented yet).
 
uint8_t detect
 Trigger detection configuration.
 
uint16_t start
 The start offset of the rescue region in flash (in pages).
 
uint16_t size
 The size of the rescue region in flash (in pages).
 
uint32_t command_allow []
 An allowlist of rescue and boot_svc commands that may be invoked by the rescue protocol.
 

Detailed Description

The owner rescue configuration describes how the rescue protocol should behave when invoked in the ROM_EXT.

Definition at line 377 of file datatypes.h.

Field Documentation

◆ command_allow

uint32_t owner_rescue_config::command_allow[]

An allowlist of rescue and boot_svc commands that may be invoked by the rescue protocol.

The commands are identified by their 4-byte tags (tag identifiers between rescue commands and boot_svc commands are unique).

Definition at line 432 of file datatypes.h.

◆ detect

uint8_t owner_rescue_config::detect

Trigger detection configuration.

7 6 5 0 +-----—+--------------------—+ | Detect | Index | +-----—+--------------------—+

Detect: 0 - None; index is meaningless. 1 - UART Break; index is meaningless. 2 - Strapping pins; index is the strapping value. 3 - GPIO; index is the pin to sample.

Definition at line 423 of file datatypes.h.

◆ gpio

uint8_t owner_rescue_config::gpio

The gpio configuration (if relevant, depending on detect).

7 2 1 0 +------------—+-----—+----—+ | Reserved | PullEn | Value | +------------—+-----—+----—+

Definition at line 399 of file datatypes.h.

◆ header

tlv_header_t owner_rescue_config::header

Header identifiying this struct.

tag: RESQ. length: 16 + sizeof(command_allow).

Definition at line 383 of file datatypes.h.

◆ protocol

uint8_t owner_rescue_config::protocol

The rescue protocol:

  • 'X'modem.
  • 'U'SB-DFU.
  • 'S'PI-DFU.

Definition at line 390 of file datatypes.h.

◆ size

uint16_t owner_rescue_config::size

The size of the rescue region in flash (in pages).

Definition at line 427 of file datatypes.h.

◆ start

uint16_t owner_rescue_config::start

The start offset of the rescue region in flash (in pages).

Definition at line 425 of file datatypes.h.

◆ timeout

uint8_t owner_rescue_config::timeout

The timeout configuration (not implemented yet).

7        6  5               0

+--—+-----—+--------------—+ | EoF | Enable | Timeout | +--—+-----—+--------------—+

Definition at line 408 of file datatypes.h.