feat(nimble): Added some fixes for autopts testing

This commit is contained in:
Sumeet Singh
2025-02-12 17:57:23 +05:30
parent c799865f91
commit ffaa688582
16 changed files with 57 additions and 45 deletions

View File

@@ -40,6 +40,7 @@ extern "C" {
#define DEFAULT_BT_LE_HCI_EVT_HI_BUF_COUNT MYNEWT_VAL(BLE_TRANSPORT_EVT_COUNT) #define DEFAULT_BT_LE_HCI_EVT_HI_BUF_COUNT MYNEWT_VAL(BLE_TRANSPORT_EVT_COUNT)
#define DEFAULT_BT_LE_HCI_EVT_LO_BUF_COUNT MYNEWT_VAL(BLE_TRANSPORT_EVT_DISCARDABLE_COUNT) #define DEFAULT_BT_LE_HCI_EVT_LO_BUF_COUNT MYNEWT_VAL(BLE_TRANSPORT_EVT_DISCARDABLE_COUNT)
#define DEFAULT_BT_LE_POWER_CONTROL_ENABLED MYNEWT_VAL(BLE_POWER_CONTROL) #define DEFAULT_BT_LE_POWER_CONTROL_ENABLED MYNEWT_VAL(BLE_POWER_CONTROL)
#define DEFAULT_BT_LE_SUBRATE_ENABLED MYNEWT_VAL(BLE_CONN_SUBRATING)
#if defined(CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT) #if defined(CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT)
#define DEFAULT_BT_LE_50_FEATURE_SUPPORT (1) #define DEFAULT_BT_LE_50_FEATURE_SUPPORT (1)
#else #else
@@ -144,6 +145,8 @@ extern "C" {
#define DEFAULT_BT_LE_HCI_UART_CTS_PIN (-1) #define DEFAULT_BT_LE_HCI_UART_CTS_PIN (-1)
#define DEFAULT_BT_LE_HCI_UART_RTS_PIN (-1) #define DEFAULT_BT_LE_HCI_UART_RTS_PIN (-1)
#endif #endif
#define DEFAULT_BT_LE_SUBRATE_ENABLED 0
#endif #endif
#define DEFAULT_BT_LE_COEX_PHY_CODED_TX_RX_TLIM_EFF CONFIG_BT_LE_COEX_PHY_CODED_TX_RX_TLIM_EFF #define DEFAULT_BT_LE_COEX_PHY_CODED_TX_RX_TLIM_EFF CONFIG_BT_LE_COEX_PHY_CODED_TX_RX_TLIM_EFF

View File

@@ -689,40 +689,38 @@ if BT_NIMBLE_50_FEATURE_SUPPORT
default n default n
help help
Enable support for Connectionless and Connection Oriented Direction Finding Enable support for Connectionless and Connection Oriented Direction Finding
endif
menuconfig BT_NIMBLE_GATT_CACHING menuconfig BT_NIMBLE_GATT_CACHING
bool "Enable GATT caching" bool "Enable GATT caching"
depends on BT_NIMBLE_ENABLED && BT_NIMBLE_50_FEATURE_SUPPORT depends on BT_NIMBLE_ENABLED
select BT_NIMBLE_DYNAMIC_SERVICE select BT_NIMBLE_DYNAMIC_SERVICE
help help
Enable GATT caching Enable GATT caching
config BT_NIMBLE_GATT_CACHING_MAX_CONNS config BT_NIMBLE_GATT_CACHING_MAX_CONNS
int "Maximum connections to be cached" int "Maximum connections to be cached"
depends on BT_NIMBLE_GATT_CACHING depends on BT_NIMBLE_GATT_CACHING
default 1 default BT_NIMBLE_MAX_CONNECTIONS
help help
Set this option to set the upper limit on number of connections to be cached. Set this option to set the upper limit on number of connections to be cached.
config BT_NIMBLE_GATT_CACHING_MAX_SVCS config BT_NIMBLE_GATT_CACHING_MAX_SVCS
int "Maximum number of services per connection" int "Maximum number of services per connection"
depends on BT_NIMBLE_GATT_CACHING depends on BT_NIMBLE_GATT_CACHING
default 64 default 64
help help
Set this option to set the upper limit on number of services per connection to be cached. Set this option to set the upper limit on number of services per connection to be cached.
config BT_NIMBLE_GATT_CACHING_MAX_CHRS config BT_NIMBLE_GATT_CACHING_MAX_CHRS
int "Maximum number of characteristics per connection" int "Maximum number of characteristics per connection"
depends on BT_NIMBLE_GATT_CACHING depends on BT_NIMBLE_GATT_CACHING
default 64 default 64
help help
Set this option to set the upper limit on number of characteristics per connection to be cached. Set this option to set the upper limit on number of characteristics per connection to be cached.
config BT_NIMBLE_GATT_CACHING_MAX_DSCS config BT_NIMBLE_GATT_CACHING_MAX_DSCS
int "Maximum number of descriptors per connection" int "Maximum number of descriptors per connection"
depends on BT_NIMBLE_GATT_CACHING depends on BT_NIMBLE_GATT_CACHING
default 64 default 64
help help
Set this option to set the upper limit on number of descriptors per connection to be cached. Set this option to set the upper limit on number of descriptors per connection to be cached.
endif
config BT_NIMBLE_GATT_CACHING_DISABLE_AUTO config BT_NIMBLE_GATT_CACHING_DISABLE_AUTO
bool "Do not start discovery procedure automatically upon receiving Out of Sync" bool "Do not start discovery procedure automatically upon receiving Out of Sync"
depends on BT_NIMBLE_GATT_CACHING depends on BT_NIMBLE_GATT_CACHING
@@ -934,6 +932,12 @@ menu "GAP Service"
help help
Enable the LE GATT Security Level Characteristic Enable the LE GATT Security Level Characteristic
config BT_NIMBLE_SVC_GAP_RPA_ONLY
bool "Resolvable Private Address Only characteristic"
default n
help
Enable the Resolvable Private Address Only characteristic
endmenu endmenu
menu "BLE Services" menu "BLE Services"

View File

@@ -1818,6 +1818,11 @@
CONFIG_BT_NIMBLE_SVC_GAP_GATT_SECURITY_LEVEL CONFIG_BT_NIMBLE_SVC_GAP_GATT_SECURITY_LEVEL
#endif #endif
#ifndef MYNEWT_VAL_BLE_SVC_GAP_RPA_ONLY
#define MYNEWT_VAL_BLE_SVC_GAP_RPA_ONLY \
CONFIG_BT_NIMBLE_SVC_GAP_RPA_ONLY
#endif
/*** nimble/transport */ /*** nimble/transport */
#ifndef MYNEWT_VAL_BLE_HCI_TRANSPORT_EMSPI #ifndef MYNEWT_VAL_BLE_HCI_TRANSPORT_EMSPI
#define MYNEWT_VAL_BLE_HCI_TRANSPORT_EMSPI (0) #define MYNEWT_VAL_BLE_HCI_TRANSPORT_EMSPI (0)

View File

@@ -276,7 +276,7 @@ typedef struct {
.ignore_wl_for_direct_adv = 0, \ .ignore_wl_for_direct_adv = 0, \
.enable_pcl = DEFAULT_BT_LE_POWER_CONTROL_ENABLED, \ .enable_pcl = DEFAULT_BT_LE_POWER_CONTROL_ENABLED, \
.csa2_select = DEFAULT_BT_LE_50_FEATURE_SUPPORT, \ .csa2_select = DEFAULT_BT_LE_50_FEATURE_SUPPORT, \
.enable_csr = 0, \ .enable_csr = DEFAULT_BT_LE_SUBRATE_ENABLED, \
.ble_aa_check = DEFAULT_BT_LE_CTRL_CHECK_CONNECT_IND_ACCESS_ADDRESS, \ .ble_aa_check = DEFAULT_BT_LE_CTRL_CHECK_CONNECT_IND_ACCESS_ADDRESS, \
.ble_llcp_disc_flag = BT_LE_CTRL_LLCP_DISC_FLAG, \ .ble_llcp_disc_flag = BT_LE_CTRL_LLCP_DISC_FLAG, \
.scan_backoff_upperlimitmax = BT_CTRL_SCAN_BACKOFF_UPPERLIMITMAX, \ .scan_backoff_upperlimitmax = BT_CTRL_SCAN_BACKOFF_UPPERLIMITMAX, \

View File

@@ -998,7 +998,7 @@ nimble_hid_gap_event(struct ble_gap_event *event, void *arg)
static esp_err_t start_nimble_scan(uint32_t seconds) static esp_err_t start_nimble_scan(uint32_t seconds)
{ {
uint8_t own_addr_type; uint8_t own_addr_type;
struct ble_gap_disc_params disc_params; struct ble_gap_disc_params disc_params = {0};
int rc; int rc;
/* Figure out address to use while advertising (no privacy for now) */ /* Figure out address to use while advertising (no privacy for now) */

View File

@@ -145,7 +145,7 @@ static void
ble_cts_cent_scan(void) ble_cts_cent_scan(void)
{ {
uint8_t own_addr_type; uint8_t own_addr_type;
struct ble_gap_disc_params disc_params; struct ble_gap_disc_params disc_params = {0};
int rc; int rc;
/* Figure out address to use while advertising (no privacy for now) */ /* Figure out address to use while advertising (no privacy for now) */

View File

@@ -183,7 +183,7 @@ static void
enc_adv_data_cent_scan(void) enc_adv_data_cent_scan(void)
{ {
uint8_t own_addr_type; uint8_t own_addr_type;
struct ble_gap_disc_params disc_params; struct ble_gap_disc_params disc_params = {0};
int rc; int rc;
/* Figure out address to use while advertising (no privacy for now) */ /* Figure out address to use while advertising (no privacy for now) */

View File

@@ -263,7 +263,7 @@ static void
ble_htp_cent_scan(void) ble_htp_cent_scan(void)
{ {
uint8_t own_addr_type; uint8_t own_addr_type;
struct ble_gap_disc_params disc_params; struct ble_gap_disc_params disc_params = {0};
int rc; int rc;
/* Figure out address to use while advertising (no privacy for now) */ /* Figure out address to use while advertising (no privacy for now) */

View File

@@ -190,7 +190,7 @@ static void
blecent_scan(void) blecent_scan(void)
{ {
uint8_t own_addr_type; uint8_t own_addr_type;
struct ble_gap_disc_params disc_params; struct ble_gap_disc_params disc_params = {0};
int rc; int rc;
/* Figure out address to use while advertising (no privacy for now) */ /* Figure out address to use while advertising (no privacy for now) */

View File

@@ -26,7 +26,7 @@ static void
periodic_sync_scan(void) periodic_sync_scan(void)
{ {
uint8_t own_addr_type; uint8_t own_addr_type;
struct ble_gap_disc_params disc_params; struct ble_gap_disc_params disc_params = {0};
int rc; int rc;
/* Figure out address to use while advertising (no privacy for now) */ /* Figure out address to use while advertising (no privacy for now) */

View File

@@ -187,7 +187,7 @@ static void
blecent_scan(void) blecent_scan(void)
{ {
uint8_t own_addr_type; uint8_t own_addr_type;
struct ble_gap_disc_params disc_params; struct ble_gap_disc_params disc_params = {0};
int rc; int rc;
/* Figure out address to use while advertising (no privacy for now) */ /* Figure out address to use while advertising (no privacy for now) */

View File

@@ -180,7 +180,7 @@ static void
ble_prox_cent_scan(void) ble_prox_cent_scan(void)
{ {
uint8_t own_addr_type; uint8_t own_addr_type;
struct ble_gap_disc_params disc_params; struct ble_gap_disc_params disc_params = {0};
int rc; int rc;
/* Figure out address to use while advertising (no privacy for now) */ /* Figure out address to use while advertising (no privacy for now) */

View File

@@ -127,7 +127,7 @@ static void
ble_spp_client_scan(void) ble_spp_client_scan(void)
{ {
uint8_t own_addr_type; uint8_t own_addr_type;
struct ble_gap_disc_params disc_params; struct ble_gap_disc_params disc_params = {0};
int rc; int rc;
/* Figure out address to use while advertising (no privacy for now) */ /* Figure out address to use while advertising (no privacy for now) */

View File

@@ -435,7 +435,7 @@ static void
blecent_scan(void) blecent_scan(void)
{ {
uint8_t own_addr_type; uint8_t own_addr_type;
struct ble_gap_disc_params disc_params; struct ble_gap_disc_params disc_params = {0};
int rc; int rc;
/* Figure out address to use while advertising (no privacy for now) */ /* Figure out address to use while advertising (no privacy for now) */

View File

@@ -466,7 +466,7 @@ static void
blecent_scan(void) blecent_scan(void)
{ {
uint8_t own_addr_type; uint8_t own_addr_type;
struct ble_gap_disc_params disc_params; struct ble_gap_disc_params disc_params = {0};
int rc; int rc;
/* Figure out address to use while advertising (no privacy for now) */ /* Figure out address to use while advertising (no privacy for now) */