Commit Graph

2083 Commits

Author SHA1 Message Date
wangmengyang
666a73d79c components/bt: bug-fixes in BLE controller and BLE baseband
1. Removed the interrupt lock operation during controller enable/disable/reset, to avoid trigger interrupt watchdog time-out due to use of mutex/semaphore in coex_st_set

2. update libbtbb.a to fix the Rx performance issue for CODED PHY, especially in coexistence scenario
2021-04-28 12:05:49 +00:00
wangmengyang
d2324c162a components/bt: Minor fix for the range of GATTC number of reconnections. 2021-04-28 12:05:49 +00:00
zwj
3c06fea8a1 fix esp32c3 and esp32s3 ble disconnect due to connection paramters update 2021-04-25 20:18:21 +08:00
wangmengyang
d703424ef7 component/bt: add another bt-lib submodule and refactor the directories 2021-04-22 07:41:46 +08:00
wangmengyang
b81c687327 remove original esp32-bt-lib submodule 2021-04-21 19:51:32 +08:00
“YangZhao”
1def09cc99 bugfix: Fix the issue that the controller do not report the timeout
disconnect event. This issue is caused by modem sleep.The sleep interrupt
will come the second time before the CLKN interrupt. If we disable the sleep
interrupt when it comes in the first time, the CLKN will never come.
2021-04-21 14:49:44 +08:00
Wang Meng Yang
c94916de8f Merge branch 'bugfix/optimize_c3_multi_con_and_add_connection_retry' into 'master'
optimize c3 multi con and add connection retry

See merge request espressif/esp-idf!12983
2021-04-20 14:48:11 +00:00
Island
3e05abe7bb Merge branch 'bugfix/endianness_in_output_or_input_oob' into 'master'
ble_mesh: stack: Fix endianness error in output or input oob data of number

See merge request espressif/esp-idf!13160
2021-04-20 13:09:01 +00:00
wangjialiang
dd0fbb2f5e ble_mesh: stack: Fix endianness error in output or input oob data of number
Closes https://github.com/espressif/esp-idf/issues/6862
2021-04-20 06:25:52 +00:00
Prasad Alatkar
7d4cfb6d53 NimBLE: Add max connection config option for ESP32C3 2021-04-20 02:41:58 +00:00
zwj
58cd231895 optimize C3 and s3 multi-connection 2021-04-20 02:41:14 +00:00
zwj
077722696a add option to enable multi-connection 2021-04-20 02:41:14 +00:00
zwj
6fff69390e update con state when getting connection cancle complete 2021-04-20 02:41:14 +00:00
zwj
85b73337a3 fix ble 5.0 SMP failed 2021-04-20 02:41:14 +00:00
zwj
e652e264c7 add BLE connection establishment retry 2021-04-20 02:41:14 +00:00
Jiang Jiang Jian
920b3a0929 Merge branch 'feature/configure_max_server_profiles_count' into 'master'
esp32: Added an option in menuconfig to configure maximum gatt services

Closes BT-1508

See merge request espressif/esp-idf!12769
2021-04-19 06:31:09 +00:00
zwj
facadc86d8 support 727 esp32s3 BLE 2021-04-15 22:02:58 +08:00
xiongweichao
4aafb1fd80 modify E8192 ELx200 ELx40 log level to LOGD 2021-04-13 17:08:23 +08:00
Marius Vikhammer
0633ee3e18 docs: fix doxygen compile warnings for doxygen 1.9.1
Newer versions of doxygen will give warnings for comments in
INPUT lists

Delete all comment lines to fix these warnings, our folder structure
stil gives an OK overview of what we are including
2021-04-09 11:57:03 +08:00
Rahul Tank
6395eae955 esp-idf: Added an option in menuconfig to configure maximum gatt services
Currently Max GATT services count cannot be configured externally and
hence user needs to modify code ,everytime the count is to be
modified.

 Added an option in menuconfig to provide a way to user to set the count.

Fixes: https://jira.espressif.com:8443/browse/BT-1508
2021-04-08 10:42:47 +00:00
Renz Bagaporo
e6edf34e82 esp32: move esp_clk functions 2021-03-31 19:17:33 +08:00
Jiang Jiang Jian
80d0f6c860 Merge branch 'nimble/add_error_prints_acl_buf' into 'master'
NimBLE: Add error prints for ACL buffer exhaustion in NPL

See merge request espressif/esp-idf!12665
2021-03-31 03:20:16 +00:00
Jiang Jiang Jian
bd4e34b15a Merge branch 'bugfix/btdm_incorrectly_spelled' into 'master'
component/bt: fix Spelling mistakes

Closes IDFGH-4886, IDFGH-4910, and IDFGH-4635

See merge request espressif/esp-idf!12814
2021-03-29 05:07:54 +00:00
Jiang Jiang Jian
bcbf1d2c3c Merge branch 'bugfix/btdm_add_controller_support_RPA' into 'master'
add option to enable/disable esp32 controller RPA

See merge request espressif/esp-idf!12832
2021-03-26 04:19:50 +00:00
Jiang Jiang Jian
6c070f49a8 Merge branch 'bugfix/btdm_fix_multi-con_pair_failed' into 'master'
fix multi-connection pair failed

Closes BT-1490

See merge request espressif/esp-idf!12877
2021-03-26 04:18:56 +00:00
Jiang Jiang Jian
e5f8e12db1 Merge branch 'bugfix/btdm_synchronize_multiple_branch_of_bt_lib' into 'master'
Bugfix/btdm synchronize multiple branch of bt lib

Closes BT-1535

See merge request espressif/esp-idf!12868
2021-03-26 04:15:42 +00:00
Jiang Jiang Jian
a24ae68d48 Merge branch 'nimble/mbedtls_aes_free_dma' into 'master'
NimBLE: Free AES context after use by calling `mbedtls_free_aes` (Needed for C3)

Closes BT-1435

See merge request espressif/esp-idf!12363
2021-03-25 12:42:32 +00:00
baohongde
77fc60ede1 components/bt: Synchronize multiple branch of bt lib 2021-03-25 14:39:28 +08:00
baohongde
36b89a9f0b components/bt: Fix assert without sw coexist enabled 2021-03-25 14:39:07 +08:00
baohongde
7c2ff2ad3f component/coex: Decouple Wi-Fi and bluetooth with coexist to reduce binary file size 2021-03-25 14:39:07 +08:00
Prasad Alatkar
b4861a11e6 NimBLE: Free AES context after use by calling mbedtls_free_aes
- Update NimBLE submodule to resolve issue observed while using mbedTLS as
  crypto stack during security exchanges.

Closes BT-1435, BT-1434
2021-03-24 13:26:36 +00:00
Prasad Alatkar
5d80d551cf NimBLE: Add error prints for ACL buffer exhaustion in NPL 2021-03-24 13:25:38 +00:00
zwj
dc3a5a9335 fix multi-connection pair failed 2021-03-24 14:58:21 +08:00
zwj
6e343bead2 add option to enable/disable esp32 controller RPA 2021-03-24 14:42:35 +08:00
“YangZhao”
8e282c7fe5 Fix the bug of modem sleep which may lead to the crash issue "assert(-218959118,0)" 2021-03-24 11:39:00 +08:00
XieWenxiang
f9cdd1d6c9 component/bt: Modify some ambiguous descriptions 2021-03-23 23:08:05 +08:00
Jiang Jiang Jian
5978352cf9 Merge branch 'bugfix/ble_tx_power_mapping' into 'master'
Bluetooth: Tx power level for ESP32C3 and IRAM_ATTR fix for ESP32S3 controller

See merge request espressif/esp-idf!12651
2021-03-23 03:04:30 +00:00
Angus Gratton
54edd4fc58 Merge branch 'feature/wdt_c3' into 'master'
wdt: Fix RTC_SLOW_CLK for chips, corrects WDT timeout.

Closes IDF-2118 and IDF-2332

See merge request espressif/esp-idf!12796
2021-03-22 06:48:58 +00:00
liaowenhao
048f527883 bugfix/bta_hf_client_co_cb_ptr requires HFP_DYNAMIC_MEMORY macro to be used 2021-03-22 03:07:49 +00:00
KonstantinKondrashov
aa1338bf23 wdt: Fix timeout and RTC_SLOW_CLK
RTC_SLOW_CLK
ESP32:    150kHz
ESP32-S2:  90kHz
ESP32-S3: 150kHz
ESP32-C3: 150kHz
2021-03-19 00:15:18 +08:00
Jiang Jiang Jian
d01c951d46 Merge branch 'bufix/ag_deep_copy_crash' into 'master'
components/bt: Fix crash in btc_hf_arg_deep_copy when name or number is NULL

Closes BT-1355

See merge request espressif/esp-idf!12338
2021-03-18 09:49:57 +00:00
wangmengyang
3df07164c1 components/bt: shorten some log messages for bluedroid 2021-03-17 16:52:34 +08:00
wangmengyang
ab8e488c38 component/bt: [ESP32S3] fix missing IRAM_ATTR for function in libbtdm_app.a 2021-03-17 16:52:34 +08:00
wangmengyang
528964f12c fixed incorrect Tx power mappings for ESP32C3 chip 2021-03-17 16:52:26 +08:00
zwj
b3a2fedfde fix ble connection event report remote address error 2021-03-12 11:49:52 +08:00
Jiang Jiang Jian
a8f6a7a28e Merge branch 'bugfix/c2h_fc_param_fix_ble' into 'master'
Fix for C2H flow control param check when only BLE mode is configured.

See merge request espressif/esp-idf!12672
2021-03-10 17:22:03 +00:00
Chinmay Chhajed
1d54d9ac13 Fix for C2H flow control param check when only BLE mode is configured. 2021-03-10 15:06:49 +05:30
Angus Gratton
39a2d531f0 Merge branch 'feature/ldgen_mapping_extensions' into 'master'
ldgen: mapping flags extensions

Closes IDFGH-2524

See merge request espressif/esp-idf!12035
2021-03-09 22:43:08 +00:00
baohongde
33df1358ef Fix issues during light sleep and DFS 2021-03-09 13:49:59 +08:00
Jiang Jiang Jian
ffe5e45c77 Merge branch 'bugfix/btdm_controller_task_watchdog_in_wifi_test' into 'master'
Fix controller task watchdog in Wi-Fi test

Closes WIFI-3391

See merge request espressif/esp-idf!12628
2021-03-08 07:02:16 +00:00
Jiang Jiang Jian
b88a156ce5 Merge branch 'bugfix/btdm_crash_when_esp_restart' into 'master'
components/bt: Fix crash in Bluetooth when esp_restart

See merge request espressif/esp-idf!12566
2021-03-05 11:53:03 +00:00
baohongde
df146f5cd9 Fix controller task watchdog in Wi-Fi test 2021-03-05 11:25:03 +08:00
Angus Gratton
70e13752ae Merge branch 'feature/rtc_time_get' into 'master'
rtc: Clean up for S2,S3,C3

Closes IDF-2569

See merge request espressif/esp-idf!12336
2021-03-05 01:16:15 +00:00
Jiang Jiang Jian
52720c724f Merge branch 'bugfix/fix_l2cap_repeat_cid' into 'master'
Bugfix/Fix L2CAP Repeat Cid

Closes BT-1411, BT-1409, and BT-1410

See merge request espressif/esp-idf!12342
2021-03-04 03:36:31 +00:00
Jiang Jiang Jian
6677cd5498 Merge branch 'component_bt/optimize_spp_stop_server' into 'master'
component_bt/Optimize SPP Stop Server API

Closes BT-960

See merge request espressif/esp-idf!11124
2021-03-04 03:34:44 +00:00
liqigan
408a1490a9 add API esp_spp_stop_srv_scn to stop a specific server 2021-03-03 15:02:23 +08:00
liqigan
825c2024d0 fix l2cap repeat cid 2021-03-03 14:50:05 +08:00
Angus Gratton
cfde7adb7f esp_ble_mesh: Use standard ESP-IDF asserts
Smaller binary size, means that config options for silent assert or disable
assert will apply
2021-03-03 10:26:57 +11:00
Angus Gratton
0d26c89b6b btc_common: Redefine BTC assert macro to use standard assert
Allows assert to be disabled, made silent, etc.

Progress towards https://github.com/espressif/esp-idf/issues/6306
2021-03-03 10:26:57 +11:00
Angus Gratton
a0c73c5f92 bt host: Don't redefine the assert macro
Required so that bt asserts obey the same configuration settings as other
asserts.

Progress towards https://github.com/espressif/esp-idf/issues/6306
2021-03-03 10:26:57 +11:00
Angus Gratton
d6f4d99d93 core system: Fix warnings in compilation when assertions are disabled
Adds a CI config for hello world that sets this, to catch future regressions
2021-03-03 10:26:57 +11:00
xiongweichao
d39756d8e7 components/bt: Fix crash in btc_hf_arg_deep_copy when name or number is NULL 2021-03-01 12:54:21 +00:00
KonstantinKondrashov
b31bf01484 rtc: Clean up for S2,S3,C3 2021-03-01 16:51:15 +08:00
baohongde
2e7405e8aa components/bt: Fix crash in Bluetooth when esp_restart 2021-03-01 14:39:35 +08:00
Renz Bagaporo
10c5226095 ldgen: use uppercase keywords for flags 2021-03-01 14:19:34 +08:00
Renz Bagaporo
dbdc17cced ldgen: rename emit to surround 2021-03-01 14:19:34 +08:00
Renz Bagaporo
c6f0d47758 esp32: move bt linker script placements to ldgen 2021-03-01 14:19:34 +08:00
gengyuchao
0d1eb8a331 Fix IRAM_ATTR missing 2021-02-26 20:31:47 +08:00
zwj
f344a65af5 fix crash caused by spp pairing cancel 2021-02-18 21:10:25 +08:00
Island
b88ec36635 Merge branch 'bugfix/ignore_null_valued_comb_key' into 'master'
component/bt: Added check for NULL valued combination key.

See merge request espressif/esp-idf!12239
2021-02-09 19:49:25 +08:00
Island
3f821b1d65 Merge branch 'bugfix/ble_mesh_server_model_deinit' into 'master'
ble_mesh: stack: Fix deinit server models with no matching id

See merge request espressif/esp-idf!12312
2021-02-09 16:26:38 +08:00
Chinmay Chhajed
368ba6b077 component/bt: Added check for NULL valued combination key. 2021-02-09 12:09:32 +05:30
Chinmay Chhajed
fb3a382fe4 Bluedroid: Do not initiate/accept connection with device having same BDADDR.
Added BD_ADDR comparison in l2cu_lcp_allocate and removed check from
security connection request handler as it's handled in l2cu_lcp_allocate
for both connection request and create connection.
2021-02-09 12:09:15 +05:30
Chinmay Chhajed
5596f37af1 bt: removed esp_bt_get_mac()
There was no need for this function as there is already a way present to
fetch own mac address. Own mac addr can be fetched by calling
controller_get_interface().
2021-02-09 12:09:15 +05:30
wangmengyang
44dd496bea update esp32c3 btbb lib 21-02-08 and set coexist state when in scan(initiating) mode 2021-02-08 21:19:59 +08:00
zwj
52909b69b7 fix esp32c3 can't enable adv flow control func 2021-02-08 16:33:20 +08:00
lly
d3cc004803 ble_mesh: stack: Fix deinit server models with no matching id 2021-02-07 11:12:25 +08:00
wangmengyang
2dd730d35c component/bt: [esp32c3] modify Bluetooth coexistence options 2021-02-05 09:16:29 +00:00
Jiang Jiang Jian
6a7781b92a Merge branch 'bugfix/fix_a2dp_underun' into 'master'
bugfix/component_bt: Fix A2DP Underrun Issue

Closes AUD-2681

See merge request espressif/esp-idf!12093
2021-02-04 19:28:07 +08:00
Jiang Jiang Jian
c1aacb2efc Merge branch 'bugfix/btdm_add_ble_connection_params_check' into 'master'
Bugfix/btdm add ble connection params check

See merge request espressif/esp-idf!12193
2021-02-04 17:32:42 +08:00
lly
0c6e61d258 ble_mesh: stack: Fix mbedtls aes ctx not deallocated 2021-02-04 11:24:54 +08:00
lly
0d95760fe4 ble_mesh: stack: Fix hw aes no dma channel for c3 2021-02-03 08:45:06 +00:00
lly
bd2d63ff96 ble_mesh: stack: Enable duplicate scan for c3 2021-02-03 08:45:06 +00:00
zwj
d76d708bc3 add connection parameter check 2021-01-29 15:29:57 +08:00
Jiang Jiang Jian
28faf93c51 Merge branch 'feature/esp32c3_power_down' into 'master'
esp32c3 : power down MAC and BB only if both Wi-Fi and BT power down

Closes FC3-99

See merge request espressif/esp-idf!12076
2021-01-28 23:27:19 +08:00
baohongde
eef66789d4 Mac BB power down in light sleep
components/bt: Do not use feature: timer support isr dispatch method

disable controller after wake up finished.

protect critical section of power down

choose clk in sleep

components/coex: mac bb power down in light sleep

components/coex: Macro changed

components/os: protect reserved interrupt number

update phy to phy_version 300,6e46ba7,Jan 25 2021

some bugfix
2021-01-28 22:28:04 +08:00
Jiang Jiang Jian
9eae54f3be Merge branch 'bugfix/fix_a2dp_sink_crash_due_to_ble5.0_code' into 'master'
fix a2dp sink crash due to ble 5.0 code

Closes BT-1358, BT-1354, and BT-1356

See merge request espressif/esp-idf!12170
2021-01-28 19:41:54 +08:00
wangmengyang
ee480b7776 Refactor Bluetooth init/deinit mechanism
free osi_funcs struct memory duiring failure of controller_init when necessary

components/bt: use s_lp_stat.phy_enabled to control the on/off of phy module

clean up style for controller_disable

clean up some empty functions and unnecessary comments

Added async wakeup src "BTDM_ASYNC_WAKEUP_SRC_TMR"

remove use of assert in controller_init, set error code upon some exceptions

move stop esp_timer early to phase0, add state variable wakeup_timer_started
2021-01-28 19:27:17 +08:00
wangmengyang
06ea8a3028 remove use of macro "CONFIG_SPIRAM_USE_MALLOC" 2021-01-28 19:25:03 +08:00
wangmengyang
086b36d737 Refactor Bluetooth sleep mechanism
Refactor bluetooth hardware PowerUp/PowerDown functions

component/bt: fix use of a deprecated MACRO "CONFIG_ESP32_WIFI_SW_COEXIST_ENABLE"

component/bt: fix sleep wakeup in controller disable procedure

remove use of s_pm_lock_sem

1. Modified the waking up approach from async to sync: post a message to controller task upon vhci downstream packets or controller disable, and in response, controller task goes through the wake-up procedure
2. Added Controller status check for the esp_vhci APIs
3. Adjust the procedure during controller_init, check the validity of arguments first

Some minor modifications for bluetooth sleep control and configuration

1. use variable flag s_btdm_allow_light_sleep to control the use of s_light_sleep_pm_lock
2. use variable btdm_lpclk_sel to choose bluetooth sleep clock, support only for external 32kHz crystal temporarily

component/bt: improve async_wakeup function

1. check power state first and then decide if wakeup needs to be performed
2. change the meaning of the return value, if wakeup request is posted to controller task, then return true, otherwise return false

put sleep control logics in controller init/deinit/enable/disable together

Use s_lp_cntl struct: replace bool-typed variable sleep_backup_en with s_lp_cntl.mac_bb_pd

Use s_lp_cntl struct: replace bool-typed variable s_btdm_allow_light_sleep with s_lp_cntl.no_light_sleep

Use s_lp_cntl struct: replace global variable btdm_lpclk_sel with s_lp_cntl.lpclk_sel

create semaphore s_wakeup_req_sem only when low power mode is required

Use s_lp_cntl struct: use s_lp_cntl.wakeup_timer_required to control the wakeup timer

use s_lp_stat to replace original state variable sleep_backup_done and s_pm_lock_acquired

one minor change for mac_bb_pd settings init: return error status if memeory allocation failed
2021-01-28 19:23:09 +08:00
Jiang Jiang Jian
4ab76197e9 Merge branch 'bugfix/bta_hf_client_sco_co_out_data' into 'master'
bugfix/if bta_hf_client_sco_co_out_data is called, it will crash when sco disconnected

Closes AUD-2714

See merge request espressif/esp-idf!12179
2021-01-28 18:02:25 +08:00
wangmengyang
9742aa6f05 component/bt: handle sleep wakeup event in the context of controller task instead of timer task 2021-01-28 16:04:21 +08:00
Jiang Jiang Jian
24f0bbded9 Merge branch 'bugfix/esp32s3beta2_ble_coexist_status_set' into 'master'
bugfix/esp32s3beta2_ble_coexist_status_set

See merge request espressif/esp-idf!12137
2021-01-27 21:37:51 +08:00
liaowenhao
e502893f18 bugfix/if bta_hf_client_sco_co_out_data is called, it will crash when sco disconnected 2021-01-27 19:46:13 +08:00
zwj
00fdbfcddc fix ble connection maximum latency is 499 2021-01-27 16:13:17 +08:00
zwj
b937485ad1 add ble examples default sdkconfig for esp32s3 2021-01-27 15:57:20 +08:00
zwj
bdafdbbf3d disable bluedroid congest error log print 2021-01-27 14:45:03 +08:00
zhiweijian
90d5413623 fix read multi char failed(GATT_27001) 2021-01-27 14:45:03 +08:00
zwj
081e474baf fix a2dp sink crash due to ble 5.0 code 2021-01-27 14:45:03 +08:00
wangmengyang
51be1af028 add coexist hook functions and fix bugs for coexistence 2021-01-27 06:37:04 +00:00