Core#

Functions#

sl_status_t

Get the saved thread specific firmware status value.

sl_status_t
sl_si91x_m4_ta_secure_handshake(uint8_t sub_cmd_type, uint8_t input_len, uint8_t *input_data, uint8_t output_len, uint8_t *output_data)

Secure handshake.

sl_status_t
sl_si91x_set_join_configuration(sl_wifi_interface_t interface, uint8_t join_feature_bitmap)

Si91X specific set join feature bitmap configuration.

sl_status_t
sl_si91x_get_join_configuration(sl_wifi_interface_t interface, uint8_t *join_feature_bitmap)

Si91X specific get join feature bitmap configuration.

sl_status_t
sl_si91x_configure_timeout(sl_si91x_timeout_type_t timeout_type, uint16_t timeout_value)

This API is used to set different module timeouts.

void
sl_si91x_set_timeout(sl_si91x_timeout_t *timeout_config)

Si91x specific set timeout.

sl_status_t
sl_si91x_command_to_write_common_flash(uint32_t write_address, uint8_t *write_data, uint16_t write_data_length, uint8_t flash_sector_erase_enable)

This function allows the Network Processor (NWP) to write content to the common flash from M4.

sl_status_t
sl_si91x_command_to_read_common_flash(uint32_t read_address, size_t length, uint8_t *output_buffer)

Sends a command to read data from the NWP flash memory of the SI91x wireless device.

sl_status_t

Signals the occurrence of an assertion in the firmware.

sl_status_t
sl_si91x_get_ram_log(uint32_t address, uint32_t length)

Retrieves TA RAM log/dump via Si91x UART/UART2.

Function Documentation#

sl_si91x_get_saved_firmware_status#

static sl_status_t sl_si91x_get_saved_firmware_status (void)

Get the saved thread specific firmware status value.

Parameters
N/A

Returns


Definition at line 85 of file components/device/silabs/si91x/wireless/inc/sl_si91x_core_utilities.h

sl_si91x_m4_ta_secure_handshake#

sl_status_t sl_si91x_m4_ta_secure_handshake (uint8_t sub_cmd_type, uint8_t input_len, uint8_t *input_data, uint8_t output_len, uint8_t *output_data)

Secure handshake.

Parameters
[in]sub_cmd_type

Specifies the Sub command type for the secure handshake.

[in]input_len

Input data is a pointer that contains the information used during a secure handshake.

[in]input_data

Specifies the length of input data.

[in]output_len

Specifies the length of output data.

[in]output_data

Pointer to store the response data after the secure handshake process.

This is a blocking API.

Returns


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

sl_si91x_set_join_configuration#

sl_status_t sl_si91x_set_join_configuration (sl_wifi_interface_t interface, uint8_t join_feature_bitmap)

Si91X specific set join feature bitmap configuration.

Parameters
[in]interface

sl_wifi_interface_t Selected interface.

[in]join_feature_bitmap

Join feature bitmap configuration. One of values from Join Feature Bitmap

Returns

Note


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

sl_si91x_get_join_configuration#

sl_status_t sl_si91x_get_join_configuration (sl_wifi_interface_t interface, uint8_t *join_feature_bitmap)

Si91X specific get join feature bitmap configuration.

Parameters
[in]interface

sl_wifi_interface_t Selected interface.

[out]join_feature_bitmap

join feature bitmap configuration. One of values from Join Feature Bitmap

Returns

Note

  • By default SL_SI91X_JOIN_FEAT_LISTEN_INTERVAL_VALID bitmap is enabled.


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

sl_si91x_configure_timeout#

sl_status_t sl_si91x_configure_timeout (sl_si91x_timeout_type_t timeout_type, uint16_t timeout_value)

This API is used to set different module timeouts.

Parameters
[in]timeout_type

It is used to identify which timeout type to be set. The possible values can be sl_si91x_timeout_type_t

[in]timeout_value

timeout value to be set. The time resolution depends on timeout_type.

Note

  • After a successful IP configuration, Gratuitous ARP is used as the periodic WLAN Keep-Alive packet with the configured keep_alive_timeout interval.

    • If there is no IP configuration, the NULL Data Packets is used as the WLAN Keep-Alive packet.

Returns


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

sl_si91x_set_timeout#

void sl_si91x_set_timeout (sl_si91x_timeout_t *timeout_config)

Si91x specific set timeout.

Parameters
[in]timeout_config

Timeout configuration of type sl_si91x_timeout_t.

This function is used to set active channel scan timeout, authentication association timeout and keep alive timeout of module. Returns

  • None

Note

  • This API should ONLY be called before sl_wifi_init and repeated call to this API will overwrite timeout values stored in SDK, will be applied on next call to sl_wifi_init.


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

sl_si91x_command_to_write_common_flash#

sl_status_t sl_si91x_command_to_write_common_flash (uint32_t write_address, uint8_t *write_data, uint16_t write_data_length, uint8_t flash_sector_erase_enable)

This function allows the Network Processor (NWP) to write content to the common flash from M4.

Parameters
[in]write_address

The address in the common flash memory where the write operation should begin. For the M4 region, the write address should start from 0x8000000. Possible values range from the M4 image end address to the M4 region end address. For the NWP region, the write address should range from 0 to (20K-1).

[in]write_data

The data to be written. For sector erase it should be multiples of 4K.

[in]write_data_length

The total length of the data, which should be multiples of 4K for sector erase.

[in]flash_sector_erase_enable

Enable or disable sector erase. 1 - Erases multiples of 4 KB of data. 0 - Disable, allows to write data onto flash.

It's a blocking API. Returns


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

sl_si91x_command_to_read_common_flash#

sl_status_t sl_si91x_command_to_read_common_flash (uint32_t read_address, size_t length, uint8_t *output_buffer)

Sends a command to read data from the NWP flash memory of the SI91x wireless device.

Parameters
[in]read_address

The address in the NWP flash memory to read from. The address should range from 0 to (20K-1).

[in]length

The number of bytes to read from the NWP flash memory.

[out]output_buffer

Pointer to the buffer where the data will be.

This is a blocking API. This function is a command to the SI91x wireless device to read data from the NWP flash memory at the specified address. The read data is stored in the provider's output_data buffer. Returns


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

sl_si91x_assert#

sl_status_t sl_si91x_assert (void)

Signals the occurrence of an assertion in the firmware.

Parameters
N/A

Returns


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

sl_si91x_get_ram_log#

sl_status_t sl_si91x_get_ram_log (uint32_t address, uint32_t length)

Retrieves TA RAM log/dump via Si91x UART/UART2.

Parameters
[in]address

Address in Si91x module.

[in]length

Chunk length to read from Si91x module.

Returns


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