mirror of
https://github.com/espressif/esp-idf
synced 2025-03-09 17:19:09 -04:00
Merge branch 'feat/add_vsc_to_support_test_v5.0' into 'release/v5.0'
feat(bt): add vendor hci command and event to support test (v5.0) See merge request espressif/esp-idf!36567
This commit is contained in:
commit
a55d6bc08f
@ -467,6 +467,29 @@ menu "BLE disconnect when instant passed"
|
||||
when instant passed in channel map update procedure.
|
||||
endmenu
|
||||
|
||||
config BTDM_BLE_CHAN_ASS_EN
|
||||
bool "Enable channel assessment"
|
||||
depends on (BTDM_CTRL_MODE_BLE_ONLY || BTDM_CTRL_MODE_BTDM)
|
||||
default y
|
||||
help
|
||||
If this option is enabled, The Controller will records the communication quality
|
||||
for each channel and then start a timer to check and update the channel map every 4 seconds.
|
||||
|
||||
config BTDM_BLE_PING_EN
|
||||
bool "Enable LE Ping procedure"
|
||||
depends on (BTDM_CTRL_MODE_BTDM || BTDM_CTRL_MODE_BLE_ONLY)
|
||||
default y
|
||||
help
|
||||
If this option is disabled, The Controller will not start the LE authenticated payload timer.
|
||||
This option is used for some compatibility problems related to LE ping procedure.
|
||||
|
||||
config BTDM_BLE_VS_QA_SUPPORT
|
||||
bool "BLE vendor HCI QA support"
|
||||
depends on (BTDM_CTRL_MODE_BTDM || BTDM_CTRL_MODE_BLE_ONLY)
|
||||
default n
|
||||
help
|
||||
This enables BLE vendor HCI command and event for QA.
|
||||
|
||||
config BTDM_RESERVE_DRAM
|
||||
hex
|
||||
default 0xdb5c if BT_ENABLED
|
||||
|
@ -259,6 +259,7 @@ extern uint32_t _bt_controller_data_end;
|
||||
extern void config_bt_funcs_reset(void);
|
||||
extern void config_ble_funcs_reset(void);
|
||||
extern void config_btdm_funcs_reset(void);
|
||||
extern void config_ble_vs_qa_funcs_reset(void);
|
||||
|
||||
/* Local Function Declare
|
||||
*********************************************************************
|
||||
@ -1720,6 +1721,7 @@ esp_err_t esp_bt_controller_init(esp_bt_controller_config_t *cfg)
|
||||
btdm_controller_mem_init();
|
||||
|
||||
periph_module_enable(PERIPH_BT_MODULE);
|
||||
periph_module_reset(PERIPH_BT_MODULE);
|
||||
|
||||
#if CONFIG_BTDM_CTRL_HCI_UART_FLOW_CTRL_EN
|
||||
sdk_config_set_uart_flow_ctrl_enable(true);
|
||||
@ -1851,6 +1853,10 @@ static void patch_apply(void)
|
||||
#ifndef CONFIG_BTDM_CTRL_MODE_BR_EDR_ONLY
|
||||
config_ble_funcs_reset();
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_BTDM_BLE_VS_QA_SUPPORT
|
||||
config_ble_vs_qa_funcs_reset();
|
||||
#endif
|
||||
}
|
||||
|
||||
esp_err_t esp_bt_controller_enable(esp_bt_mode_t mode)
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit ffb8fad8e0ff68f565bae8728cc68ebb49ae33b4
|
||||
Subproject commit e847faba2d86e90b5f21d6310bb4723c4e32ba1c
|
@ -55,7 +55,7 @@ extern "C" {
|
||||
*
|
||||
* @note Please do not modify this value.
|
||||
*/
|
||||
#define ESP_BT_CONTROLLER_CONFIG_MAGIC_VAL 0x20241015
|
||||
#define ESP_BT_CONTROLLER_CONFIG_MAGIC_VAL 0x20241024
|
||||
|
||||
/**
|
||||
* @brief Bluetooth Controller mode
|
||||
@ -199,6 +199,18 @@ the adv packet will be discarded until the memory is restored. */
|
||||
#define BTDM_CTRL_CHECK_CONNECT_IND_ACCESS_ADDRESS_ENABLED 0
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_BTDM_BLE_CHAN_ASS_EN)
|
||||
#define BTDM_BLE_CHAN_ASS_EN (CONFIG_BTDM_BLE_CHAN_ASS_EN)
|
||||
#else
|
||||
#define BTDM_BLE_CHAN_ASS_EN (0)
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_BTDM_BLE_PING_EN)
|
||||
#define BTDM_BLE_PING_EN (CONFIG_BTDM_BLE_PING_EN)
|
||||
#else
|
||||
#define BTDM_BLE_PING_EN (0)
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Default Bluetooth Controller configuration
|
||||
*/
|
||||
@ -229,6 +241,8 @@ the adv packet will be discarded until the memory is restored. */
|
||||
.ble_scan_backoff = BTDM_CTRL_SCAN_BACKOFF_UPPERLIMITMAX, \
|
||||
.ble_llcp_disc_flag = BTDM_BLE_LLCP_DISC_FLAG, \
|
||||
.ble_aa_check = BTDM_CTRL_CHECK_CONNECT_IND_ACCESS_ADDRESS_ENABLED, \
|
||||
.ble_chan_ass_en = BTDM_BLE_CHAN_ASS_EN, \
|
||||
.ble_ping_en = BTDM_BLE_PING_EN, \
|
||||
.magic = ESP_BT_CONTROLLER_CONFIG_MAGIC_VAL, \
|
||||
}
|
||||
|
||||
@ -309,6 +323,8 @@ typedef struct {
|
||||
uint8_t ble_llcp_disc_flag; /*!< Flag indicating whether the Controller disconnects after Instant Passed (0x28) error occurs. Configurable in menuconfig.
|
||||
- The Controller does not disconnect after Instant Passed (0x28) by default. */
|
||||
bool ble_aa_check; /*!< True if adds a verification step for the Access Address within the `CONNECT_IND` PDU; false otherwise (default). Configurable in menuconfig */
|
||||
uint8_t ble_chan_ass_en; /*!< True if BLE channel assessment is enabled (default), false otherwise. Configurable in menuconfig */
|
||||
uint8_t ble_ping_en; /*!< True if BLE ping procedure is enabled (default), false otherwise. Configurable in menuconfig */
|
||||
uint32_t magic; /*!< Magic number */
|
||||
} esp_bt_controller_config_t;
|
||||
|
||||
|
@ -97,6 +97,8 @@ static inline uint32_t periph_ll_get_rst_en_mask(periph_module_t periph, bool en
|
||||
return DPORT_LEDC_RST;
|
||||
case PERIPH_WIFI_MODULE:
|
||||
return DPORT_WIFIMAC_RST;
|
||||
case PERIPH_BT_MODULE:
|
||||
return (DPORT_BTBB_RST | DPORT_BTMAC_RST | DPORT_RW_BTMAC_RST | DPORT_RW_BTLP_RST);
|
||||
case PERIPH_UART0_MODULE:
|
||||
return DPORT_UART_RST;
|
||||
case PERIPH_UART1_MODULE:
|
||||
|
Loading…
x
Reference in New Issue
Block a user