PA Power Conversions#
Modules#
sl_rail_tx_power_table_config_t
Variables#
The PA table to be used for transmission.
Functions#
Initialize PA dBm conversion for transmit.
Establish PA mode and related parameters from the PA configuration post sl_rail_init().
Get the TX PA power conversion limits for the indicated PA mode.
Convert requested power to actual power achievable for the indicated PA mode.
Returns a RAIL 2.x compatible power configuration for the default 2.4 GHz PA selection on platforms that support the 2.4 GHz band, or NULL otherise.
Returns a RAIL 2.x compatible power configuration for the default Sub-GHz PA selection on platforms that support the Sub-GHz band, or NULL otherise.
Returns a RAIL 2.x compatible power configuration for the default OFDM PA selection on platforms that support OFDM, or NULL otherise.
Initialize Transmit power tables.
Provide a channel config change callback capable of configuring the PA correctly.
Get the TX PA power setting table and related values.
Variable Documentation#
sl_rail_util_pa_tx_power_table#
const sl_rail_tx_power_table_config_t sl_rail_util_pa_tx_power_table
The PA table to be used for transmission.
Function Documentation#
sl_rail_util_pa_init#
void sl_rail_util_pa_init (void )
Initialize PA dBm conversion for transmit.
| Type | Direction | Argument Name | Description |
|---|---|---|---|
| void | N/A |
sl_rail_util_pa_post_init#
sl_rail_status_t sl_rail_util_pa_post_init (sl_rail_handle_t rail_handle, sl_rail_tx_pa_mode_t pa_mode)
Establish PA mode and related parameters from the PA configuration post sl_rail_init().
| Type | Direction | Argument Name | Description |
|---|---|---|---|
| sl_rail_handle_t | [in] | rail_handle | A real RAIL instance handle. |
| sl_rail_tx_pa_mode_t | [in] | pa_mode | The PA mode to establish. |
Returns
Status code indicating success of the function call.
This function should be called soon after sl_rail_init() when the application is not using the Callbacks Utility component.
sl_rail_util_pa_get_tx_power_limits#
sl_rail_status_t sl_rail_util_pa_get_tx_power_limits (sl_rail_handle_t rail_handle, sl_rail_tx_pa_mode_t pa_mode, sl_rail_tx_power_t * p_min_ddbm, sl_rail_tx_power_t * p_max_ddbm, sl_rail_tx_power_t * p_step_ddbm)
Get the TX PA power conversion limits for the indicated PA mode.
| Type | Direction | Argument Name | Description |
|---|---|---|---|
| sl_rail_handle_t | [in] | rail_handle | A real RAIL instance handle. |
| sl_rail_tx_pa_mode_t | [in] | pa_mode | The PA mode to use for the conversion. If this is SL_RAIL_TX_PA_MODE_INVALID then the PA mode associated with the current channel configuration is used. |
| sl_rail_tx_power_t * | [out] | p_min_ddbm | A pointer to a sl_rail_tx_power_t; may be NULL. |
| sl_rail_tx_power_t * | [out] | p_max_ddbm | A pointer to a sl_rail_tx_power_t; may be NULL. |
| sl_rail_tx_power_t * | [out] | p_step_ddbm | A pointer to a sl_rail_tx_power_t; may be NULL. |
Returns
Status code indicating success of the function call.
sl_rail_util_pa_convert_power_to_actual#
sl_rail_status_t sl_rail_util_pa_convert_power_to_actual (sl_rail_handle_t rail_handle, sl_rail_tx_pa_mode_t pa_mode, sl_rail_tx_power_t * p_ddbm)
Convert requested power to actual power achievable for the indicated PA mode.
| Type | Direction | Argument Name | Description |
|---|---|---|---|
| sl_rail_handle_t | [in] | rail_handle | A real RAIL instance handle. |
| sl_rail_tx_pa_mode_t | [in] | pa_mode | The PA mode to use for the conversion. If this is SL_RAIL_TX_PA_MODE_INVALID then the PA mode associated with the current channel configuration is used. |
| sl_rail_tx_power_t * | [inout] | p_ddbm | A non-NULL pointer to the deci-dBm value to convert, which the function updates with the resulting actual power based on the power conversion algorithm for the currently selected PA when returning success. |
Returns
Status code indicating success of the function call.
Note
This function does not take into account any channel configuration power restrictions.
sl_rail_util_pa_get_tx_power_config_2p4ghz#
RAIL_TxPowerConfig_t * sl_rail_util_pa_get_tx_power_config_2p4ghz (void )
Returns a RAIL 2.x compatible power configuration for the default 2.4 GHz PA selection on platforms that support the 2.4 GHz band, or NULL otherise.
| Type | Direction | Argument Name | Description |
|---|---|---|---|
| void | N/A |
Returns
A pointer to the TX Power Config stucture.
DeprecatedThis RAIL 2.x function should be replaced in RAIL 3 by use of sl_rail_util_pa_post_init().
sl_rail_util_pa_get_tx_power_config_subghz#
RAIL_TxPowerConfig_t * sl_rail_util_pa_get_tx_power_config_subghz (void )
Returns a RAIL 2.x compatible power configuration for the default Sub-GHz PA selection on platforms that support the Sub-GHz band, or NULL otherise.
| Type | Direction | Argument Name | Description |
|---|---|---|---|
| void | N/A |
Returns
A pointer to the TX Power Config stucture.
DeprecatedThis RAIL 2.x function should be replaced in RAIL 3 by use of sl_rail_util_pa_post_init().
sl_rail_util_pa_get_tx_power_config_ofdm#
RAIL_TxPowerConfig_t * sl_rail_util_pa_get_tx_power_config_ofdm (void )
Returns a RAIL 2.x compatible power configuration for the default OFDM PA selection on platforms that support OFDM, or NULL otherise.
| Type | Direction | Argument Name | Description |
|---|---|---|---|
| void | N/A |
Returns
A pointer to the TX Power Config stucture.
DeprecatedThis RAIL 2.x function should be replaced in RAIL 3 by use of sl_rail_util_pa_post_init().
sl_rail_util_pa_init_tx_power_table#
sl_rail_status_t sl_rail_util_pa_init_tx_power_table (sl_rail_handle_t radio_handle, const sl_rail_tx_power_table_config_t * p_tx_power_table_config)
Initialize Transmit power tables.
| Type | Direction | Argument Name | Description |
|---|---|---|---|
| sl_rail_handle_t | [in] | radio_handle | A radio-generic RAIL handle. |
| const sl_rail_tx_power_table_config_t * | [in] | p_tx_power_table_config | A pointer to the TX power table to use. |
Returns
Status code indicating success of the function call.
sl_rail_util_pa_on_channel_config_change#
void sl_rail_util_pa_on_channel_config_change (sl_rail_handle_t rail_handle, const sl_rail_channel_config_entry_t * p_entry)
Provide a channel config change callback capable of configuring the PA correctly.
| Type | Direction | Argument Name | Description |
|---|---|---|---|
| sl_rail_handle_t | [in] | rail_handle | The real RAIL handle being passed into this callback. |
| const sl_rail_channel_config_entry_t * | [in] | p_entry | A pointer to the channel config entry being switched to by hardware. |
sl_rail_util_pa_get_power_setting_table#
const sl_rail_pa_power_setting_t * sl_rail_util_pa_get_power_setting_table (sl_rail_handle_t rail_handle, sl_rail_tx_power_mode_t mode, sl_rail_tx_power_t * p_min_ddbm, sl_rail_tx_power_t * p_max_ddbm, sl_rail_tx_power_t * p_step_ddbm)
Get the TX PA power setting table and related values.
| Type | Direction | Argument Name | Description |
|---|---|---|---|
| sl_rail_handle_t | [in] | rail_handle | A real RAIL instance handle. |
| sl_rail_tx_power_mode_t | [in] | mode | PA mode for which to get the powersetting table. |
| sl_rail_tx_power_t * | [out] | p_min_ddbm | A pointer to a sl_rail_tx_power_t. |
| sl_rail_tx_power_t * | [out] | p_max_ddbm | A pointer to a sl_rail_tx_power_t. |
| sl_rail_tx_power_t * | [out] | p_step_ddbm | A pointer to a sl_rail_tx_power_t. |
Returns
Power setting table start address. When NULL is returned all out params above won't be set.
The number of entries in the table can be calculated based on output *p_min_ddbm, *p_max_ddbm, and *p_step_ddbm parameters. For example, for *p_min_ddbm = 115 (11.5 dBm), *p_max_ddbm = 300 (30 dBm), and *p_step_ddbm = 1, the number of entries in table would be 186.