mirror of
https://github.com/espressif/esp-idf.git
synced 2026-10-02 03:00:34 +03:00
Merge branch 'bugfix/fix_iso_tx_power_update_fail_v6.1' into 'release/v6.1'
feat(iso): Support set ble iso tx power (6.1) See merge request espressif/esp-idf!52620
This commit is contained in:
@@ -8,6 +8,7 @@
|
||||
|
||||
#include <stdint.h>
|
||||
#include <stdbool.h>
|
||||
#include <string.h>
|
||||
#include "btdm_user_cfg.h"
|
||||
#if UC_BT_CTRL_BLE_IS_ENABLE
|
||||
#include "ble_user_cfg.h"
|
||||
@@ -103,6 +104,7 @@ extern int brk_sym_pawrBcast_02YCihGkfXcpLt0zh1uM(void *param);
|
||||
extern int brk_sym_pawrBcast_0PNup0d8oI1288mfULNW(void *param);
|
||||
extern int brk_sym_pawrBcast_0Wq1DOQE0eOWEGV2grxM(void *param);
|
||||
extern int brk_sym_pawrBcast_1y9l4P0a3qWUSydU3cDY(void *param);
|
||||
extern int brk_sym_pawrBcast_3Fe1AkLrn3EG25GkGfL4(void *param);
|
||||
extern int brk_sym_pawrBcast_7jK56jlcfafMtoQgLg6t(void *param);
|
||||
extern int brk_sym_pawrBcast_7qGF1F9weQ363Ml7Gj0n(void *param);
|
||||
extern int brk_sym_pawrBcast_JHmbFJCpV155hIYyDVQ8(void *param);
|
||||
@@ -114,6 +116,7 @@ extern int brk_sym_pawrBcast_SB1LBCzybPoDd0XYyLM8(void *param);
|
||||
extern int brk_sym_pawrBcast_WNd7Y6n56cZrTlhBjFRU(void *param);
|
||||
extern int brk_sym_pawrBcast_eBH7HrPT8y2Fj9382el3(void *param);
|
||||
extern int brk_sym_pawrBcast_g6t1IjxRbcv5GUq1uXIA(void *param);
|
||||
extern int brk_sym_pawrBcast_ivWxQ61JhFEBhkuxoZhM(void *param);
|
||||
extern int brk_sym_pawrBcast_lk2Wpy4u04ukjtC7Ijcb(void *param);
|
||||
extern int brk_sym_pawrBcast_on08yxBjym4I0iV3tlPo(void *param);
|
||||
extern int brk_sym_pawrBcast_sSbQFGKMJszbA895ddLO(void *param);
|
||||
@@ -270,6 +273,12 @@ const void * const _adv_linear_broker_flash[] = BTDM_BROKER_NODE_DEF_FLASH(
|
||||
[13] = BTDM_BROKER_ENTRY_DEF_FLASH(
|
||||
brk_sym_pawrBcast_WNd7Y6n56cZrTlhBjFRU,
|
||||
),
|
||||
[14] = BTDM_BROKER_ENTRY_DEF_FLASH(
|
||||
brk_sym_pawrBcast_3Fe1AkLrn3EG25GkGfL4,
|
||||
),
|
||||
[15] = BTDM_BROKER_ENTRY_DEF_FLASH(
|
||||
brk_sym_pawrBcast_ivWxQ61JhFEBhkuxoZhM,
|
||||
),
|
||||
#endif /* UC_BLE_CTRL_PAWR_BCAST_SUPPORTED */
|
||||
);
|
||||
#endif /* UC_BT_CTRL_BLE_IS_ENABLE */
|
||||
@@ -735,65 +744,72 @@ int
|
||||
btdm_broker_init(void)
|
||||
{
|
||||
#if UC_BT_CTRL_BLE_IS_ENABLE
|
||||
if (r_btdm_broker_linear_selfcheck(_adv_linear_broker_flash, false)) {
|
||||
extern const char *ble_controller_get_compile_version(void);
|
||||
if (memcmp(ble_controller_get_compile_version(), "4c3f1e9", 7) != 0) {
|
||||
return -1;
|
||||
}
|
||||
#endif /* UC_BT_CTRL_BLE_IS_ENABLE */
|
||||
|
||||
#if UC_BT_CTRL_BLE_IS_ENABLE
|
||||
if (r_btdm_broker_linear_selfcheck(_base_linear_broker_flash, false)) {
|
||||
if (r_btdm_broker_linear_selfcheck(_adv_linear_broker_flash, false)) {
|
||||
return -2;
|
||||
}
|
||||
#endif /* UC_BT_CTRL_BLE_IS_ENABLE */
|
||||
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_hal_linear_broker_ram, true)) {
|
||||
#if UC_BT_CTRL_BLE_IS_ENABLE
|
||||
if (r_btdm_broker_linear_selfcheck(_base_linear_broker_flash, false)) {
|
||||
return -3;
|
||||
}
|
||||
#endif /* UC_BT_CTRL_BLE_IS_ENABLE */
|
||||
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_hci_linear_broker_flash, false)) {
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_hal_linear_broker_ram, true)) {
|
||||
return -4;
|
||||
}
|
||||
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_sched_linear_broker_flash, false)) {
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_hci_linear_broker_flash, false)) {
|
||||
return -5;
|
||||
}
|
||||
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_sched_linear_broker_ram, true)) {
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_sched_linear_broker_flash, false)) {
|
||||
return -6;
|
||||
}
|
||||
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_sleep_linear_broker_flash, false)) {
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_sched_linear_broker_ram, true)) {
|
||||
return -7;
|
||||
}
|
||||
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_task_linear_broker_flash, false)) {
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_sleep_linear_broker_flash, false)) {
|
||||
return -8;
|
||||
}
|
||||
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_task_linear_broker_flash, false)) {
|
||||
return -9;
|
||||
}
|
||||
|
||||
#if UC_BT_CTRL_BLE_IS_ENABLE && UC_BLE_CTRL_CONN_ENABLED
|
||||
if (r_btdm_broker_linear_selfcheck(_conn_linear_broker_flash, false)) {
|
||||
return -9;
|
||||
return -10;
|
||||
}
|
||||
#endif /* UC_BT_CTRL_BLE_IS_ENABLE && UC_BLE_CTRL_CONN_ENABLED */
|
||||
|
||||
#if UC_BT_CTRL_BLE_IS_ENABLE
|
||||
if (r_btdm_broker_linear_selfcheck(_nrtIsr_linear_broker_flash, false)) {
|
||||
return -10;
|
||||
}
|
||||
#endif /* UC_BT_CTRL_BLE_IS_ENABLE */
|
||||
|
||||
#if UC_BT_CTRL_BLE_IS_ENABLE
|
||||
if (r_btdm_broker_linear_selfcheck(_perAdv_linear_broker_flash, false)) {
|
||||
return -11;
|
||||
}
|
||||
#endif /* UC_BT_CTRL_BLE_IS_ENABLE */
|
||||
|
||||
#if UC_BT_CTRL_BLE_IS_ENABLE
|
||||
if (r_btdm_broker_linear_selfcheck(_sync_linear_broker_flash, false)) {
|
||||
if (r_btdm_broker_linear_selfcheck(_perAdv_linear_broker_flash, false)) {
|
||||
return -12;
|
||||
}
|
||||
#endif /* UC_BT_CTRL_BLE_IS_ENABLE */
|
||||
|
||||
#if UC_BT_CTRL_BLE_IS_ENABLE
|
||||
if (r_btdm_broker_linear_selfcheck(_sync_linear_broker_flash, false)) {
|
||||
return -13;
|
||||
}
|
||||
#endif /* UC_BT_CTRL_BLE_IS_ENABLE */
|
||||
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
|
||||
#include <stdint.h>
|
||||
#include <stdbool.h>
|
||||
#include <string.h>
|
||||
#include "btdm_user_cfg.h"
|
||||
#if UC_BT_CTRL_BLE_IS_ENABLE
|
||||
#include "ble_user_cfg.h"
|
||||
@@ -111,6 +112,7 @@ extern int brk_sym_pawrBcast_02YCihGkfXcpLt0zh1uM(void *param);
|
||||
extern int brk_sym_pawrBcast_0PNup0d8oI1288mfULNW(void *param);
|
||||
extern int brk_sym_pawrBcast_0Wq1DOQE0eOWEGV2grxM(void *param);
|
||||
extern int brk_sym_pawrBcast_1y9l4P0a3qWUSydU3cDY(void *param);
|
||||
extern int brk_sym_pawrBcast_3Fe1AkLrn3EG25GkGfL4(void *param);
|
||||
extern int brk_sym_pawrBcast_7jK56jlcfafMtoQgLg6t(void *param);
|
||||
extern int brk_sym_pawrBcast_7qGF1F9weQ363Ml7Gj0n(void *param);
|
||||
extern int brk_sym_pawrBcast_JHmbFJCpV155hIYyDVQ8(void *param);
|
||||
@@ -122,6 +124,7 @@ extern int brk_sym_pawrBcast_SB1LBCzybPoDd0XYyLM8(void *param);
|
||||
extern int brk_sym_pawrBcast_WNd7Y6n56cZrTlhBjFRU(void *param);
|
||||
extern int brk_sym_pawrBcast_eBH7HrPT8y2Fj9382el3(void *param);
|
||||
extern int brk_sym_pawrBcast_g6t1IjxRbcv5GUq1uXIA(void *param);
|
||||
extern int brk_sym_pawrBcast_ivWxQ61JhFEBhkuxoZhM(void *param);
|
||||
extern int brk_sym_pawrBcast_lk2Wpy4u04ukjtC7Ijcb(void *param);
|
||||
extern int brk_sym_pawrBcast_on08yxBjym4I0iV3tlPo(void *param);
|
||||
extern int brk_sym_pawrBcast_sSbQFGKMJszbA895ddLO(void *param);
|
||||
@@ -291,6 +294,12 @@ const void * const _adv_linear_broker_flash[] = BTDM_BROKER_NODE_DEF_FLASH(
|
||||
[13] = BTDM_BROKER_ENTRY_DEF_FLASH(
|
||||
brk_sym_pawrBcast_WNd7Y6n56cZrTlhBjFRU,
|
||||
),
|
||||
[14] = BTDM_BROKER_ENTRY_DEF_FLASH(
|
||||
brk_sym_pawrBcast_3Fe1AkLrn3EG25GkGfL4,
|
||||
),
|
||||
[15] = BTDM_BROKER_ENTRY_DEF_FLASH(
|
||||
brk_sym_pawrBcast_ivWxQ61JhFEBhkuxoZhM,
|
||||
),
|
||||
#endif /* UC_BLE_CTRL_PAWR_BCAST_SUPPORTED */
|
||||
);
|
||||
#endif /* UC_BT_CTRL_BLE_IS_ENABLE */
|
||||
@@ -837,73 +846,80 @@ int
|
||||
btdm_broker_init(void)
|
||||
{
|
||||
#if UC_BT_CTRL_BLE_IS_ENABLE
|
||||
if (r_btdm_broker_linear_selfcheck(_adv_linear_broker_flash, false)) {
|
||||
extern const char *ble_controller_get_compile_version(void);
|
||||
if (memcmp(ble_controller_get_compile_version(), "4c3f1e9", 7) != 0) {
|
||||
return -1;
|
||||
}
|
||||
#endif /* UC_BT_CTRL_BLE_IS_ENABLE */
|
||||
|
||||
#if UC_BT_CTRL_BLE_IS_ENABLE
|
||||
if (r_btdm_broker_linear_selfcheck(_base_linear_broker_flash, false)) {
|
||||
if (r_btdm_broker_linear_selfcheck(_adv_linear_broker_flash, false)) {
|
||||
return -2;
|
||||
}
|
||||
#endif /* UC_BT_CTRL_BLE_IS_ENABLE */
|
||||
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_coex_linear_broker_flash, false)) {
|
||||
#if UC_BT_CTRL_BLE_IS_ENABLE
|
||||
if (r_btdm_broker_linear_selfcheck(_base_linear_broker_flash, false)) {
|
||||
return -3;
|
||||
}
|
||||
#endif /* UC_BT_CTRL_BLE_IS_ENABLE */
|
||||
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_hal_linear_broker_ram, true)) {
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_coex_linear_broker_flash, false)) {
|
||||
return -4;
|
||||
}
|
||||
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_hci_linear_broker_flash, false)) {
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_hal_linear_broker_ram, true)) {
|
||||
return -5;
|
||||
}
|
||||
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_sched_linear_broker_flash, false)) {
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_hci_linear_broker_flash, false)) {
|
||||
return -6;
|
||||
}
|
||||
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_sched_linear_broker_ram, true)) {
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_sched_linear_broker_flash, false)) {
|
||||
return -7;
|
||||
}
|
||||
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_sleep_linear_broker_flash, false)) {
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_sched_linear_broker_ram, true)) {
|
||||
return -8;
|
||||
}
|
||||
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_sleep_linear_broker_ram, true)) {
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_sleep_linear_broker_flash, false)) {
|
||||
return -9;
|
||||
}
|
||||
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_task_linear_broker_flash, false)) {
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_sleep_linear_broker_ram, true)) {
|
||||
return -10;
|
||||
}
|
||||
|
||||
if (r_btdm_broker_linear_selfcheck(_btdm_task_linear_broker_flash, false)) {
|
||||
return -11;
|
||||
}
|
||||
|
||||
#if UC_BT_CTRL_BLE_IS_ENABLE && UC_BLE_CTRL_CONN_ENABLED
|
||||
if (r_btdm_broker_linear_selfcheck(_conn_linear_broker_flash, false)) {
|
||||
return -11;
|
||||
return -12;
|
||||
}
|
||||
#endif /* UC_BT_CTRL_BLE_IS_ENABLE && UC_BLE_CTRL_CONN_ENABLED */
|
||||
|
||||
#if UC_BT_CTRL_BLE_IS_ENABLE
|
||||
if (r_btdm_broker_linear_selfcheck(_nrtIsr_linear_broker_flash, false)) {
|
||||
return -12;
|
||||
}
|
||||
#endif /* UC_BT_CTRL_BLE_IS_ENABLE */
|
||||
|
||||
#if UC_BT_CTRL_BLE_IS_ENABLE
|
||||
if (r_btdm_broker_linear_selfcheck(_perAdv_linear_broker_flash, false)) {
|
||||
return -13;
|
||||
}
|
||||
#endif /* UC_BT_CTRL_BLE_IS_ENABLE */
|
||||
|
||||
#if UC_BT_CTRL_BLE_IS_ENABLE
|
||||
if (r_btdm_broker_linear_selfcheck(_sync_linear_broker_flash, false)) {
|
||||
if (r_btdm_broker_linear_selfcheck(_perAdv_linear_broker_flash, false)) {
|
||||
return -14;
|
||||
}
|
||||
#endif /* UC_BT_CTRL_BLE_IS_ENABLE */
|
||||
|
||||
#if UC_BT_CTRL_BLE_IS_ENABLE
|
||||
if (r_btdm_broker_linear_selfcheck(_sync_linear_broker_flash, false)) {
|
||||
return -15;
|
||||
}
|
||||
#endif /* UC_BT_CTRL_BLE_IS_ENABLE */
|
||||
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
Submodule components/bt/controller/lib_esp32h4/esp32h4-bt-lib updated: 104362b2a7...00b5a98c1b
Submodule components/bt/controller/lib_esp32s31/esp32s31-bt-lib updated: fadd016c07...20e84f6ebe
@@ -164,15 +164,36 @@ typedef enum esp_power_level esp_power_level_t;
|
||||
typedef enum esp_ble_power_type esp_ble_power_type_t;
|
||||
|
||||
/**
|
||||
* @brief The enhanced type of which tx power, could set Advertising/Connection/Default and etc.
|
||||
* @brief The enhanced type of which TX power, could set Advertising/Connection/Default and etc.
|
||||
*
|
||||
* This TX power type is used for the API `esp_ble_tx_power_set_enhanced()` and
|
||||
* `esp_ble_tx_power_get_enhanced()`.
|
||||
*
|
||||
* @note
|
||||
* 1. The connection / ISO TX power can only be set after the corresponding
|
||||
* link (ACL / BIS / CIS) is established. After disconnecting or
|
||||
* terminating the ISO stream, the corresponding TX power will not be affected.
|
||||
* 2. `ESP_BLE_ENHANCED_PWR_TYPE_DEFAULT` can be used to set the TX power for
|
||||
* power types that have not been set before, including Advertising, Scan,
|
||||
* Init, Connection and ISO types (BIG control / BIS / CIS).
|
||||
* It will not affect the TX power values which have already been set for
|
||||
* those power types.
|
||||
* 3. If none of power type is set, the system will use the menuconfig default
|
||||
* TX power for all power types.
|
||||
*/
|
||||
typedef enum {
|
||||
ESP_BLE_ENHANCED_PWR_TYPE_DEFAULT = 0,
|
||||
ESP_BLE_ENHANCED_PWR_TYPE_ADV,
|
||||
ESP_BLE_ENHANCED_PWR_TYPE_SCAN,
|
||||
ESP_BLE_ENHANCED_PWR_TYPE_INIT,
|
||||
ESP_BLE_ENHANCED_PWR_TYPE_CONN,
|
||||
ESP_BLE_ENHANCED_PWR_TYPE_MAX,
|
||||
ESP_BLE_ENHANCED_PWR_TYPE_DEFAULT = 0, /*!< TX power for states that have not been set before
|
||||
(including unset ISO types) */
|
||||
ESP_BLE_ENHANCED_PWR_TYPE_ADV, /*!< TX power for Advertising state */
|
||||
ESP_BLE_ENHANCED_PWR_TYPE_SCAN, /*!< TX power for Scanning state */
|
||||
ESP_BLE_ENHANCED_PWR_TYPE_INIT, /*!< TX power for Initiating state */
|
||||
ESP_BLE_ENHANCED_PWR_TYPE_CONN, /*!< TX power for Connection state */
|
||||
#if SOC_BLE_ISO_SUPPORTED
|
||||
ESP_BLE_ENHANCED_PWR_TYPE_BIG_CTRL, /*!< TX power for BIG control subevents */
|
||||
ESP_BLE_ENHANCED_PWR_TYPE_BIS, /*!< TX power for BIS */
|
||||
ESP_BLE_ENHANCED_PWR_TYPE_CIS, /*!< TX power for CIS */
|
||||
#endif // SOC_BLE_ISO_SUPPORTED
|
||||
ESP_BLE_ENHANCED_PWR_TYPE_MAX, /*!< Reserved */
|
||||
} esp_ble_enhanced_power_type_t;
|
||||
|
||||
#if SOC_BLE_ISO_SUPPORTED
|
||||
@@ -311,26 +332,46 @@ esp_err_t esp_ble_tx_power_set(esp_ble_power_type_t power_type, esp_power_level_
|
||||
esp_power_level_t esp_ble_tx_power_get(esp_ble_power_type_t power_type);
|
||||
|
||||
/**
|
||||
* @brief ENHANCED API for Setting BLE TX power
|
||||
* Connection Tx power should only be set after connection created.
|
||||
* @param power_type : The enhanced type of which tx power, could set
|
||||
* Advertising/Connection/Default and etc
|
||||
* @param handle : The handle of Advertising or Connection and the value 0 for other enhanced power
|
||||
* types.
|
||||
* @param power_level: Power level(index) corresponding to absolute value(dbm)
|
||||
* @return ESP_OK - success, other - failed
|
||||
* @brief Set BLE TX power for the specified Advertising, Connection or ISO handle
|
||||
*
|
||||
* For the TX power type: `ESP_BLE_ENHANCED_PWR_TYPE_DEFAULT`, `ESP_BLE_ENHANCED_PWR_TYPE_SCAN`,
|
||||
* `ESP_BLE_ENHANCED_PWR_TYPE_INIT`, this API will ignore the input handle number, and set 0
|
||||
* internally. Setting `ESP_BLE_ENHANCED_PWR_TYPE_DEFAULT` also covers unset ISO power types
|
||||
* (BIG control / BIS / CIS).
|
||||
*
|
||||
* For the TX power type: `ESP_BLE_ENHANCED_PWR_TYPE_ADV`, `ESP_BLE_ENHANCED_PWR_TYPE_CONN`,
|
||||
* and ISO types `ESP_BLE_ENHANCED_PWR_TYPE_BIG_CTRL` / `ESP_BLE_ENHANCED_PWR_TYPE_BIS` /
|
||||
* `ESP_BLE_ENHANCED_PWR_TYPE_CIS` (when `SOC_BLE_ISO_SUPPORTED`), this API will set the TX power
|
||||
* for the target handle.
|
||||
*
|
||||
* @note Connection / ISO TX power should only be set after the corresponding link is created.
|
||||
*
|
||||
* @param power_type The enhanced type of TX power
|
||||
* @param handle The handle of Advertising, Connection, BIG, BIS or CIS; use 0 for other
|
||||
* enhanced power types
|
||||
* @param power_level Power level (index) corresponding to absolute value (dBm)
|
||||
* @return ESP_OK - success, other - failed
|
||||
*/
|
||||
esp_err_t esp_ble_tx_power_set_enhanced(esp_ble_enhanced_power_type_t power_type, uint16_t handle,
|
||||
esp_power_level_t power_level);
|
||||
|
||||
/**
|
||||
* @brief ENHANCED API of Getting BLE TX power
|
||||
* Connection Tx power should only be get after connection created.
|
||||
* @param power_type : The enhanced type of which tx power, could set
|
||||
* Advertising/Connection/Default and etc
|
||||
* @param handle : The handle of Advertising or Connection and the value 0 for other enhanced power
|
||||
* types.
|
||||
* @return >= 0 - Power level, < 0 - Invalid
|
||||
* @brief Get BLE TX power of the specified Advertising, Connection or ISO handle
|
||||
*
|
||||
* For the TX power type: `ESP_BLE_ENHANCED_PWR_TYPE_DEFAULT`, `ESP_BLE_ENHANCED_PWR_TYPE_SCAN`,
|
||||
* `ESP_BLE_ENHANCED_PWR_TYPE_INIT`, this API will ignore the input handle number.
|
||||
*
|
||||
* For the TX power type: `ESP_BLE_ENHANCED_PWR_TYPE_ADV`, `ESP_BLE_ENHANCED_PWR_TYPE_CONN`,
|
||||
* and ISO types `ESP_BLE_ENHANCED_PWR_TYPE_BIG_CTRL` / `ESP_BLE_ENHANCED_PWR_TYPE_BIS` /
|
||||
* `ESP_BLE_ENHANCED_PWR_TYPE_CIS` (when `SOC_BLE_ISO_SUPPORTED`), this API will return the TX
|
||||
* power of the target handle.
|
||||
*
|
||||
* @note Connection / ISO TX power should only be get after the corresponding link is created.
|
||||
*
|
||||
* @param power_type The enhanced type of TX power
|
||||
* @param handle The handle of Advertising, Connection, BIG, BIS or CIS; use 0 for other
|
||||
* enhanced power types
|
||||
* @return >= 0 - Power level, < 0 - Invalid
|
||||
*/
|
||||
esp_power_level_t esp_ble_tx_power_get_enhanced(esp_ble_enhanced_power_type_t power_type,
|
||||
uint16_t handle);
|
||||
|
||||
@@ -400,6 +400,11 @@ esp_ble_tx_power_set_enhanced(esp_ble_enhanced_power_type_t power_type, uint16_t
|
||||
break;
|
||||
case ESP_BLE_ENHANCED_PWR_TYPE_ADV:
|
||||
case ESP_BLE_ENHANCED_PWR_TYPE_CONN:
|
||||
#if SOC_BLE_ISO_SUPPORTED
|
||||
case ESP_BLE_ENHANCED_PWR_TYPE_BIG_CTRL:
|
||||
case ESP_BLE_ENHANCED_PWR_TYPE_BIS:
|
||||
case ESP_BLE_ENHANCED_PWR_TYPE_CIS:
|
||||
#endif // SOC_BLE_ISO_SUPPORTED
|
||||
if (r_ble_txpwr_set(power_type, handle, power_level) == 0) {
|
||||
stat = ESP_OK;
|
||||
}
|
||||
@@ -464,6 +469,11 @@ esp_ble_tx_power_get_enhanced(esp_ble_enhanced_power_type_t power_type, uint16_t
|
||||
break;
|
||||
case ESP_BLE_ENHANCED_PWR_TYPE_ADV:
|
||||
case ESP_BLE_ENHANCED_PWR_TYPE_CONN:
|
||||
#if SOC_BLE_ISO_SUPPORTED
|
||||
case ESP_BLE_ENHANCED_PWR_TYPE_BIG_CTRL:
|
||||
case ESP_BLE_ENHANCED_PWR_TYPE_BIS:
|
||||
case ESP_BLE_ENHANCED_PWR_TYPE_CIS:
|
||||
#endif // SOC_BLE_ISO_SUPPORTED
|
||||
tx_level = r_ble_txpwr_get(power_type, handle);
|
||||
break;
|
||||
default:
|
||||
|
||||
Reference in New Issue
Block a user