Firmware Update from Host#

This section provides a reference to the APIs used to perform firmware updates from the host.

Functions#

sl_status_t
sl_si91x_fwup_start(uint8_t *rps_header)


Send the RPS header content of firmware file.This is a blocking API.

sl_status_t
sl_si91x_fwup_load(uint8_t *content, uint16_t length)


Send the firmware file content.This is a blocking API.

sl_status_t


This API is used to abort the firmware update process on the SiWx91x device.

sl_status_t
sl_si91x_bl_upgrade_firmware(uint8_t *firmware_image, uint32_t fw_image_size, uint8_t flags)

Flashes firmware to Wi-Fi module via bootloader.

sl_status_t


Set fast firmware upgrade.

Function Documentation#

sl_si91x_fwup_start#

sl_status_t sl_si91x_fwup_start (uint8_t * rps_header)


Send the RPS header content of firmware file.This is a blocking API.

Parameters
[in]rps_header


Pointer to the RPS header content.

Returns


Definition at line 543 of file components/device/silabs/si91x/wireless/inc/sl_si91x_driver.h

sl_si91x_fwup_load#

sl_status_t sl_si91x_fwup_load (uint8_t * content, uint16_t length)


Send the firmware file content.This is a blocking API.

Parameters
[in]content


Pointer to the firmware file content.

[in]length


Length of the content

Returns


Definition at line 555 of file components/device/silabs/si91x/wireless/inc/sl_si91x_driver.h

sl_si91x_fwup_abort#

sl_status_t sl_si91x_fwup_abort ()


This API is used to abort the firmware update process on the SiWx91x device.

This is a blocking API.

Returns

Note

  • Only after successful completion of firmware download using sl_si91x_fwup_load API, the user can call the sl_si91x_fwup_abort API.

  • Ensure to call this abort API before performing a Soft / Hard reset of the SiWx91x device. if not called before soft/hard reset firmware update process won't be aborted.


Definition at line 568 of file components/device/silabs/si91x/wireless/inc/sl_si91x_driver.h

sl_si91x_bl_upgrade_firmware#

sl_status_t sl_si91x_bl_upgrade_firmware (uint8_t * firmware_image, uint32_t fw_image_size, uint8_t flags)

Flashes firmware to Wi-Fi module via bootloader.

Parameters
[in]firmware_image

Pointer to firmware.

[in]fw_image_size

Size of firmware image..

[in]flags

Flags indicating chuck position in file 0 = Middle of file 1 = Start of file 2 = End of file

Returns


Definition at line 842 of file components/device/silabs/si91x/wireless/inc/sl_si91x_driver.h

sl_si91x_set_fast_fw_up#

sl_status_t sl_si91x_set_fast_fw_up (void )


Set fast firmware upgrade.

Parameters
[in]


Returns


Definition at line 851 of file components/device/silabs/si91x/wireless/inc/sl_si91x_driver.h