mirror of
https://github.com/espressif/esp-idf.git
synced 2025-08-01 03:34:32 +02:00
component/bt: [esp32c3] modify Bluetooth coexistence options
This commit is contained in:
@@ -73,13 +73,6 @@ config BT_CTRL_HW_CCA_EFF
|
|||||||
If other devices are sending packets in the air and the signal is strong,
|
If other devices are sending packets in the air and the signal is strong,
|
||||||
the packet hw to be sent this time is cancelled.
|
the packet hw to be sent this time is cancelled.
|
||||||
|
|
||||||
config BT_CTRL_COEX_PARAMETERS_ENABLE
|
|
||||||
bool "Allow Bluetooth preemption in the use of RF to support coexistence with Wi-Fi"
|
|
||||||
default n
|
|
||||||
help
|
|
||||||
Use pre-determined parameter set to control the use of RF by Bluetooth,
|
|
||||||
so that Bluetooth can compete for RF with Wi-fi to support coexistence.
|
|
||||||
|
|
||||||
choice BT_CTRL_CE_LENGTH_TYPE
|
choice BT_CTRL_CE_LENGTH_TYPE
|
||||||
prompt "Connection event length determination method"
|
prompt "Connection event length determination method"
|
||||||
help
|
help
|
||||||
@@ -167,12 +160,6 @@ config BT_CTRL_DFT_TX_POWER_LEVEL_EFF
|
|||||||
default 7 if BT_CTRL_DFT_TX_POWER_LEVEL_P9
|
default 7 if BT_CTRL_DFT_TX_POWER_LEVEL_P9
|
||||||
default 0
|
default 0
|
||||||
|
|
||||||
config BT_CTRL_COEX_USE_HOOKS
|
|
||||||
bool "Communicate Bluetooth working status with Wi-Fi to support coexistence"
|
|
||||||
default n
|
|
||||||
help
|
|
||||||
Send notifications of Bluetooth working status to support coexistence with Wi-Fi.
|
|
||||||
|
|
||||||
config BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_SUPP
|
config BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_SUPP
|
||||||
bool "BLE adv report flow control supported"
|
bool "BLE adv report flow control supported"
|
||||||
default y
|
default y
|
||||||
@@ -277,6 +264,31 @@ config BT_CTRL_MESH_DUPL_SCAN_CACHE_SIZE
|
|||||||
Maximum number of adv packets which can be recorded in duplicate scan cache for BLE Mesh.
|
Maximum number of adv packets which can be recorded in duplicate scan cache for BLE Mesh.
|
||||||
When the maximum amount of device in the filter is reached, the cache will be refreshed.
|
When the maximum amount of device in the filter is reached, the cache will be refreshed.
|
||||||
|
|
||||||
|
choice BT_CTRL_COEX_PHY_CODED_TX_RX_TLIM
|
||||||
|
prompt "Coexistence: limit on MAX Tx/Rx time for coded-PHY connection"
|
||||||
|
default BT_CTRL_COEX_PHY_CODED_TX_RX_TLIM_DIS
|
||||||
|
depends on ESP32_WIFI_SW_COEXIST_ENABLE
|
||||||
|
help
|
||||||
|
When using PHY-Coded in BLE connection, limitation on max tx/rx time can be applied to
|
||||||
|
better avoid dramatic performance deterioration of Wi-Fi.
|
||||||
|
|
||||||
|
config BT_CTRL_COEX_PHY_CODED_TX_RX_TLIM_EN
|
||||||
|
bool "Force Enable"
|
||||||
|
help
|
||||||
|
Always enable the limitation on max tx/rx time for Coded-PHY connection
|
||||||
|
|
||||||
|
config BT_CTRL_COEX_PHY_CODED_TX_RX_TLIM_DIS
|
||||||
|
bool "Force Disable"
|
||||||
|
help
|
||||||
|
Disable the limitation on max tx/rx time for Coded-PHY connection
|
||||||
|
endchoice
|
||||||
|
|
||||||
|
config BT_CTRL_COEX_PHY_CODED_TX_RX_TLIM_EFF
|
||||||
|
int
|
||||||
|
default 0 if (!ESP32_WIFI_SW_COEXIST_ENABLE)
|
||||||
|
default 1 if BT_CTRL_COEX_PHY_CODED_TX_RX_TLIM_EN
|
||||||
|
default 0 if BT_CTRL_COEX_PHY_CODED_TX_RX_TLIM_DIS
|
||||||
|
|
||||||
menu "MODEM SLEEP Options"
|
menu "MODEM SLEEP Options"
|
||||||
visible if BT_ENABLED
|
visible if BT_ENABLED
|
||||||
|
|
||||||
|
Submodule components/bt/controller/lib updated: 272aaca1f8...77eb1e9166
@@ -26,7 +26,7 @@ extern "C" {
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define ESP_BT_CTRL_CONFIG_MAGIC_VAL 0x5A5AA5A5
|
#define ESP_BT_CTRL_CONFIG_MAGIC_VAL 0x5A5AA5A5
|
||||||
#define ESP_BT_CTRL_CONFIG_VERSION 0x02004260
|
#define ESP_BT_CTRL_CONFIG_VERSION 0x02101290
|
||||||
|
|
||||||
#define ESP_BT_HCI_TL_MAGIC_VALUE 0xfadebead
|
#define ESP_BT_HCI_TL_MAGIC_VALUE 0xfadebead
|
||||||
#define ESP_BT_HCI_TL_VERSION 0x00010000
|
#define ESP_BT_HCI_TL_VERSION 0x00010000
|
||||||
@@ -85,23 +85,18 @@ enum {
|
|||||||
ESP_BT_ANT_IDX_1 = 1, /*!< anntena NO 1 */
|
ESP_BT_ANT_IDX_1 = 1, /*!< anntena NO 1 */
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Maximum Tx/Rx time limit on Coded-PHY connection
|
||||||
|
*/
|
||||||
|
enum {
|
||||||
|
ESP_BT_COEX_PHY_CODED_TX_RX_TIME_LIMIT_FORCE_DISABLE = 0, /*!< Disable the limit */
|
||||||
|
ESP_BT_COEX_PHY_CODED_TX_RX_TIME_LIMIT_FORCE_ENABLE, /*!< Always Enable the limit */
|
||||||
|
};
|
||||||
|
|
||||||
#ifdef CONFIG_BT_ENABLED
|
#ifdef CONFIG_BT_ENABLED
|
||||||
|
|
||||||
#ifdef CONFIG_BT_CTRL_COEX_PARAMETERS_ENABLE
|
|
||||||
#define BT_CTRL_COEX_PARAMETERS_ENABLE true
|
|
||||||
#else
|
|
||||||
#define BT_CTRL_COEX_PARAMETERS_ENABLE false
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef CONFIG_BT_CTRL_COEX_USE_HOOKS
|
|
||||||
#define BT_CTRL_COEX_USE_HOOKS true
|
|
||||||
#else
|
|
||||||
#define BT_CTRL_COEX_USE_HOOKS false
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define BT_CTRL_BLE_MAX_ACT_LIMIT 10 //Maximum BLE activity limitation
|
#define BT_CTRL_BLE_MAX_ACT_LIMIT 10 //Maximum BLE activity limitation
|
||||||
|
|
||||||
|
|
||||||
#ifdef CONFIG_BT_CTRL_SCAN_DUPL_TYPE
|
#ifdef CONFIG_BT_CTRL_SCAN_DUPL_TYPE
|
||||||
#define SCAN_DUPLICATE_TYPE_VALUE CONFIG_BT_CTRL_SCAN_DUPL_TYPE
|
#define SCAN_DUPLICATE_TYPE_VALUE CONFIG_BT_CTRL_SCAN_DUPL_TYPE
|
||||||
#else
|
#else
|
||||||
@@ -151,9 +146,7 @@ enum {
|
|||||||
.ble_st_acl_tx_buf_nb = CONFIG_BT_CTRL_BLE_STATIC_ACL_TX_BUF_NB, \
|
.ble_st_acl_tx_buf_nb = CONFIG_BT_CTRL_BLE_STATIC_ACL_TX_BUF_NB, \
|
||||||
.ble_hw_cca_check = CONFIG_BT_CTRL_HW_CCA_EFF, \
|
.ble_hw_cca_check = CONFIG_BT_CTRL_HW_CCA_EFF, \
|
||||||
.ble_adv_dup_filt_max = CONFIG_BT_CTRL_ADV_DUP_FILT_MAX, \
|
.ble_adv_dup_filt_max = CONFIG_BT_CTRL_ADV_DUP_FILT_MAX, \
|
||||||
.coex_param_en = BT_CTRL_COEX_PARAMETERS_ENABLE, \
|
|
||||||
.ce_len_type = CONFIG_BT_CTRL_CE_LENGTH_TYPE_EFF, \
|
.ce_len_type = CONFIG_BT_CTRL_CE_LENGTH_TYPE_EFF, \
|
||||||
.coex_use_hooks = BT_CTRL_COEX_USE_HOOKS, \
|
|
||||||
.hci_tl_type = CONFIG_BT_CTRL_HCI_TL_EFF, \
|
.hci_tl_type = CONFIG_BT_CTRL_HCI_TL_EFF, \
|
||||||
.hci_tl_funcs = NULL, \
|
.hci_tl_funcs = NULL, \
|
||||||
.txant_dft = CONFIG_BT_CTRL_TX_ANTENNA_INDEX_EFF, \
|
.txant_dft = CONFIG_BT_CTRL_TX_ANTENNA_INDEX_EFF, \
|
||||||
@@ -164,6 +157,7 @@ enum {
|
|||||||
.scan_duplicate_type = SCAN_DUPLICATE_TYPE_VALUE, \
|
.scan_duplicate_type = SCAN_DUPLICATE_TYPE_VALUE, \
|
||||||
.normal_adv_size = NORMAL_SCAN_DUPLICATE_CACHE_SIZE, \
|
.normal_adv_size = NORMAL_SCAN_DUPLICATE_CACHE_SIZE, \
|
||||||
.mesh_adv_size = MESH_DUPLICATE_SCAN_CACHE_SIZE, \
|
.mesh_adv_size = MESH_DUPLICATE_SCAN_CACHE_SIZE, \
|
||||||
|
.coex_phy_coded_tx_rx_time_limit = CONFIG_BT_CTRL_COEX_PHY_CODED_TX_RX_TLIM_EFF, \
|
||||||
};
|
};
|
||||||
|
|
||||||
#else
|
#else
|
||||||
@@ -213,9 +207,9 @@ typedef struct {
|
|||||||
uint8_t ble_st_acl_tx_buf_nb; /*!< controller static ACL TX BUFFER number */
|
uint8_t ble_st_acl_tx_buf_nb; /*!< controller static ACL TX BUFFER number */
|
||||||
uint8_t ble_hw_cca_check; /*!< controller hardware triggered CCA check */
|
uint8_t ble_hw_cca_check; /*!< controller hardware triggered CCA check */
|
||||||
uint16_t ble_adv_dup_filt_max; /*!< maxinum number of duplicate scan filter */
|
uint16_t ble_adv_dup_filt_max; /*!< maxinum number of duplicate scan filter */
|
||||||
bool coex_param_en; /*!< init coex parameters*/
|
bool coex_param_en; /*!< deprecated */
|
||||||
uint8_t ce_len_type; /*!< connection event length computation method */
|
uint8_t ce_len_type; /*!< connection event length computation method */
|
||||||
bool coex_use_hooks; /*!< use hooks in bluetooth to assist WiFi behavouir determination */
|
bool coex_use_hooks; /*!< deprecated */
|
||||||
uint8_t hci_tl_type; /*!< HCI transport layer, UART, VHCI, etc */
|
uint8_t hci_tl_type; /*!< HCI transport layer, UART, VHCI, etc */
|
||||||
esp_bt_hci_tl_t *hci_tl_funcs; /*!< hci transport functions used, must be set when hci_tl_type is UART */
|
esp_bt_hci_tl_t *hci_tl_funcs; /*!< hci transport functions used, must be set when hci_tl_type is UART */
|
||||||
uint8_t txant_dft; /*!< default Tx antenna */
|
uint8_t txant_dft; /*!< default Tx antenna */
|
||||||
@@ -226,6 +220,7 @@ typedef struct {
|
|||||||
uint8_t scan_duplicate_type; /*!< scan duplicate type */
|
uint8_t scan_duplicate_type; /*!< scan duplicate type */
|
||||||
uint16_t normal_adv_size; /*!< Normal adv size for scan duplicate */
|
uint16_t normal_adv_size; /*!< Normal adv size for scan duplicate */
|
||||||
uint16_t mesh_adv_size; /*!< Mesh adv size for scan duplicate */
|
uint16_t mesh_adv_size; /*!< Mesh adv size for scan duplicate */
|
||||||
|
uint8_t coex_phy_coded_tx_rx_time_limit; /*!< limit on max tx/rx time in case of connection using CODED-PHY with Wi-Fi coexistence */
|
||||||
} esp_bt_controller_config_t;
|
} esp_bt_controller_config_t;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -395,7 +395,6 @@ CONFIG_BT_CTRL_HCI_TL=1
|
|||||||
CONFIG_BT_CTRL_ADV_DUP_FILT_MAX=30
|
CONFIG_BT_CTRL_ADV_DUP_FILT_MAX=30
|
||||||
# CONFIG_BT_CTRL_HW_CCA is not set
|
# CONFIG_BT_CTRL_HW_CCA is not set
|
||||||
CONFIG_BT_CTRL_HW_CCA_EFF=0
|
CONFIG_BT_CTRL_HW_CCA_EFF=0
|
||||||
CONFIG_BT_CTRL_COEX_PARAMETERS_ENABLE=y
|
|
||||||
CONFIG_BT_CTRL_CE_LENGTH_TYPE_ORIG=y
|
CONFIG_BT_CTRL_CE_LENGTH_TYPE_ORIG=y
|
||||||
# CONFIG_BT_CTRL_CE_LENGTH_TYPE_CE is not set
|
# CONFIG_BT_CTRL_CE_LENGTH_TYPE_CE is not set
|
||||||
# CONFIG_BT_CTRL_CE_LENGTH_TYPE_SD is not set
|
# CONFIG_BT_CTRL_CE_LENGTH_TYPE_SD is not set
|
||||||
@@ -415,7 +414,6 @@ CONFIG_BT_CTRL_RX_ANTENNA_INDEX_EFF=0
|
|||||||
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P6 is not set
|
# CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P6 is not set
|
||||||
CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P9=y
|
CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_P9=y
|
||||||
CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_EFF=7
|
CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_EFF=7
|
||||||
CONFIG_BT_CTRL_COEX_USE_HOOKS=y
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# MODEM SLEEP Options
|
# MODEM SLEEP Options
|
||||||
|
Reference in New Issue
Block a user