XCORE SDK
XCORE Software Development Kit
Classes | Typedefs
Prevent_Firmware_Rollback

APIs for preventing Rollback of unsafe firmware images. More...

Classes

struct  sl_wfx_prevent_rollback_req_body_s
 Prevent Rollback request. More...
 
struct  sl_wfx_prevent_rollback_req_s
 
struct  sl_wfx_prevent_rollback_cnf_body_s
 Confirmation of the Prevent Rollback request. More...
 
struct  sl_wfx_prevent_rollback_cnf_s
 

Typedefs

typedef struct sl_wfx_prevent_rollback_req_body_s sl_wfx_prevent_rollback_req_body_t
 Prevent Rollback request. More...
 
typedef struct sl_wfx_prevent_rollback_req_s sl_wfx_prevent_rollback_req_t
 
typedef struct sl_wfx_prevent_rollback_cnf_body_s sl_wfx_prevent_rollback_cnf_body_t
 Confirmation of the Prevent Rollback request. More...
 
typedef struct sl_wfx_prevent_rollback_cnf_s sl_wfx_prevent_rollback_cnf_t
 

Detailed Description

APIs for preventing Rollback of unsafe firmware images.

By enabling this feature Device can prevent unsafe/outdated firmware from booting.

Each firmware owns its internal rollback revision number which is compared to an equivalent revision number burned in Device OTP memory. Depending on the comparison result, two use cases can occur:

Note
The firmware rollback revision number is different that the firmware version. The former is incremented only when some important fixes (i.e., Security patches) are provided by a given version of the firmware,that MUST be applied to Device and should not be reverted. Usually, subsequent firmware versions are supposed to embed the same rollback revision number.

The rollback capability relies on the use of a dedicated API sl_wfx_prevent_rollback_req_body_t.

All Device drivers supporting Rollback Prevention should send this request just after booting a new firmware. This way, any newer rollback revision number included in a firmware will be burned in the OTP.

Typedef Documentation

◆ sl_wfx_prevent_rollback_cnf_body_t

Confirmation of the Prevent Rollback request.

The request might have failed for the following reasons:

  • Wrong magic word value

◆ sl_wfx_prevent_rollback_req_body_t

Prevent Rollback request.

Prevent Rollback asks WLAN firmware to burn a new Firmware Rollback value in a dedicated OTP section.

The new value is encoded in the firmware itself. After it is burned, this value will prevent from starting all firmwares whose internal rollback value is lower than the OTP value.

Magic Word is used to prevent mistakenly sent requests from burning the OTP.