Commit Graph

686 Commits

Author SHA1 Message Date
zwj
feb5edf8b0 improve scan performance when scan and sync coexist on ESP32-C3 and ESP32-S3 2023-04-17 12:27:08 +08:00
chenjianhua
056ae5dd21 Update bt lib for ESP32-C3 and ESP32-S3
- Fixed non-connectable and non-scannable directed adv can't be scanned
2023-04-14 15:44:17 +08:00
Darian Leung
a5b04de565 bt: Remove FreeRTOS static allocation from OSI functions
Previously, the BT OSI would use various FreeRTOS "create static" functions to
ensure that semaphores and queues were always allocated to internal memory.
However, from commit e21ab0332b onwards, all
dynamic memory allocated by FreeRTOS will default to internal RAM.

Thus, the extra "create static" calls can be removed to simply the code.
2023-04-13 15:06:21 +08:00
zwj
00501c5b14 Fixed duplicate scan refresh cycle is not accurate after restarting scan on ESP32 2023-04-11 20:44:00 +08:00
xiongweichao
30c87c7a82 bt:Fixed esp32 controller bug
1. Fixed crash after controller disable and re-enable
2. Fixed the crash caused by processing the HCI_Read_Remote_Extented_Features command in the non-connected state

Closes https://github.com/espressif/esp-idf/issues/10835
2023-04-11 12:03:09 +08:00
Yuan Mingfu
cb6f56ffa2 bugfix: deinit ble for specifies ESP_BT_MODE_BTDM 2023-04-07 12:45:33 +00:00
baohongde
dff3c07e42 components/coexist: Set coex scan status when ble connecting 2023-04-06 11:09:46 +08:00
Jiang Jiang Jian
08b4bd2ecd Merge branch 'feature/add_interface_for_ble_QA_test' into 'master'
BLE: Add interface for QA test

Closes EBLE50Y23-69

See merge request espressif/esp-idf!22976
2023-03-31 19:43:54 +08:00
Jiang Jiang Jian
6ede152d87 Merge branch 'bugfix/unhandle_unsniff_req_disconnect' into 'master'
bt: Fixed disconnection due to not handling lmp_unsniff_req in LC_WAIT_SNIFF_SUB_RSP state

Closes BTQABR2023-25 and BT-3208

See merge request espressif/esp-idf!22941
2023-03-31 12:07:14 +08:00
xiongweichao
8f5c33cec1 1.Fixed disconnection due to not handling lmp_unsniff_req in LC_WAIT_SNIFF_SUB_RSP state
2.Fixed crash caused by supervision timeout greater than sniff interval
2023-03-30 11:15:38 +08:00
Shen Weilong
aad3d8344b BLE: Add interface for QA test
Fix sleep crash issue
2023-03-29 20:02:56 +08:00
zwj
a1bfc91f54 Fixed BLE HW RAL_UNDERRUN assert on ESP32C3 and ESP32S3 2023-03-29 17:13:15 +08:00
Jiang Jiang Jian
e797a06120 Merge branch 'bugfix/unify_btbb_init' into 'master'
esp_phy: added API esp_btbb_disable

See merge request espressif/esp-idf!22806
2023-03-23 20:34:03 +08:00
Jiang Jiang Jian
b6fda9723e Merge branch 'bugfix/fix_att_rsp_timeout' into 'master'
Fixed bluedroid host ATT Ignore wrong response error

Closes BLEQABR23-30 and BT-3224

See merge request espressif/esp-idf!22688
2023-03-23 17:10:54 +08:00
wangmengyang
cbb8bf9f88 esp_phy: added API esp_btbb_disable
APIs esp_btbb_enable and esp_btbb_disable are supposed to be used by 802.15.4 and Bluetooth module, and implemented with reference counter for resource management
2023-03-23 05:40:32 +00:00
Shen Weilong
90d6b9cbd7 ble: Update README files for bluedroid host examples on ESP32-H2
Disable clocks and phy modem directly in esp_bt_controller_deinit()
2023-03-20 19:09:29 +08:00
zhiweijian
3be3bef3a6 set BT_CTRL_BLE_MAX_ACT default value to 6 2023-03-20 15:54:47 +08:00
Jiang Jiang Jian
12b44b3a0a Merge branch 'bugfix/update_config_in_esp32h2_chip' into 'master'
ble: update config in esp32h2 chip

See merge request espressif/esp-idf!22708
2023-03-20 12:09:52 +08:00
isha.pardikar@espressif.com
7d3e347ba2 Bluetooth : Fixed h2 controller function definition 2023-03-16 18:03:39 +05:30
cjin
e317f07798 ble: update config in esp32h2 chip 2023-03-15 21:02:12 +08:00
zwj
a9d9f115c3 - Support ESP32C3 and ESP32S3 new BLE lib
- Disable controller 5.0 feature bits if host 5.0 feature is not enabled
- Fixed extend ADV parameters check for ADV_DIRECT_HI
2023-03-13 10:47:18 +00:00
jingli
cb0f517fe3 soc/soc_caps: update soc caps for chips that support power-down of modem hardware
Closes WIFI-4424
2023-03-10 14:15:27 +08:00
zwl
57c7310512 ble: Add assertion checking for bluedroid hci on ESP32-C2,ESP32-C6 and ESP32-H2 2023-03-09 20:02:23 +08:00
Jiang Jiang Jian
fe979e6513 Merge branch 'feature/merge_c3_s3_bt_files_to_one' into 'master'
Merge ESP32C3 and ESP32S3 BLE bt.c, esp_bt.h and kconfig files to one

Closes BT-3209

See merge request espressif/esp-idf!22453
2023-03-08 10:53:01 +08:00
zwj
a5e43a7d43 Merge ESP32C3 and ESP32S3 BLE bt.c files to one 2023-03-06 14:53:03 +08:00
Shen Weilong
f39648040e BLE: Add ble support for esp32h2 2023-03-06 10:43:17 +08:00
Shen Wei Long
20cc537044 Merge branch 'bugfix/fix_assertion_when_deinit_ble_controller' into 'master'
[esp32c2] Fixed the occasional assertion when deinit the ble controller

Closes BT-3203

See merge request espressif/esp-idf!22455
2023-02-28 20:53:21 +08:00
wangmengyang
2c4fc5d9ea bt: add coexistence internal API declarations and clean up some unused coexistence hooks 2023-02-26 06:58:18 +00:00
liuning
b3a040aa98 coex: apply new coex_schm_callback 2023-02-26 06:58:18 +00:00
wangmengyang
1661694e0b bt: added coex adapter operation to get version of coexist module to ESP32 Bluetooth Controller 2023-02-26 06:58:18 +00:00
liuning
103772df94 esp_wifi: support adapter of all chips for new coex lib 2023-02-26 06:58:18 +00:00
Shen Weilong
c1329974a0 [esp32c2] Fixed the occasional assertion when deinit the ble controller 2023-02-21 14:03:37 +08:00
Island
50ae186ff7 Merge branch 'bugfix/esp32c2_fixed_adv_stop' into 'master'
ble:Fixed issues of adv error stop and abnormal reporting of connection update...

Closes BT-3137 and BT-3144

See merge request espressif/esp-idf!22310
2023-02-15 14:20:51 +08:00
Kapil Gupta
30a2558450 esp_wifi: Merge wpa_supplicant and esp_wifi Kconfig 2023-02-11 07:38:45 +08:00
zwl
f79d0e6a43 ble:Fixed issues of adv error stop and abnormal reporting of connection update complete event on ESP32-C2 2023-02-10 14:16:07 +08:00
cjin
9985371b8a BLE: fixed hci event fail on bluedroid host 2023-02-03 17:57:33 +08:00
zwl
3a5373a5d0 Fixed the issue that Offest Base in SyncInfo was zero on ESP32-C6 2023-01-31 20:34:04 +08:00
Jiang Jiang Jian
43f5f3d56d Merge branch 'bugfix/coex_enable_disable_not_in_pairs' into 'master'
bluetooth: fix that functions "coex_enable" and "coex_disable" are not used in pairs

Closes BCI-317

See merge request espressif/esp-idf!21895
2023-01-18 17:01:02 +08:00
Island
2dc96f9a27 Merge branch 'feature/esp32c6_enable_pcl_feature' into 'master'
Enabled PCL feature on ESP32C6

Closes IDF-6529

See merge request espressif/esp-idf!21903
2023-01-17 17:35:04 +08:00
zwl
38c5f239be Enabled PCL feature on ESP32C6 BT Controller 2023-01-16 12:28:44 +08:00
Shen Weilong
45aaeda1e3 modify bt sdkconfig to support bluedroid examples for esp32c6 2023-01-13 15:05:34 +08:00
Zhi Wei Jian
1002ad1f90 Merge branch 'bugfix/fix_disconn_due_to_instant_passed' into 'master'
Fix ble disconnect due to channel map update instant passed

Closes BT-3085

See merge request espressif/esp-idf!21889
2023-01-10 10:48:37 +08:00
zwl
06937271bb Optimized NPL Freertos API 2023-01-06 15:10:18 +08:00
wangmengyang
29610b8a1b bluetooth: fix that functions "coex_enable" and "coex_disable" are not used in pairs on ESP32-C3, ESP32-S3, ESP32-C2 and ESP32-C6 2023-01-05 12:34:49 +08:00
chenjianhua
c0dd6896a7 update bt-lib for ESP32
fix ble disconnect due to channel map update instant passed
2023-01-04 11:22:33 +08:00
Shen Weilong
e41b35b089 1. Update libbt
2. Release the controller's .bss and .data memory
3. Modify the kconfig in nimble host
2023-01-04 11:17:07 +08:00
shenweilong
93fc1bd05f support ble on esp32c6 2023-01-04 11:10:10 +08:00
Cao Sen Miao
4713a9a7f2 ESP32H2: Introduce new chip target esp32h2, hello_world example supported 2022-12-29 12:29:14 +08:00
Shu Chen
0215575606 Merge branch 'feature/esp32c6_ieee802154_support' into 'master'
ieee802154: add ieee802154 support for esp32c6

See merge request espressif/esp-idf!21615
2022-12-22 18:01:58 +08:00
xiaqilin
57a6abdad1 ieee802154: add support ieee802154 for esp32c6 2022-12-22 10:45:23 +08:00
zwj
9ac7b16124 Update bt lib for ESP32
- Add config to set duplicate scan list refresh period
- overwrite the oldest device infor if the list is full
- Fixed duplicate scan period is not accurate
2022-12-19 15:15:37 +08:00
Zhi Wei Jian
67cfef0acd Merge branch 'feature/add_config_to_set_duplicate_scan_list_refresh_time' into 'master'
Add config to set duplicate scan list refresh period on ESP32-S3 and ESP32-C3

Closes BT-3073 and BT-3023

See merge request espressif/esp-idf!21586
2022-12-15 16:29:44 +08:00
Jiang Jiang Jian
97d6050fea Merge branch 'feature/esp32c2_optimize_npl_element_count' into 'master'
Feature/esp32c2 optimize npl element count

Closes BT-3012

See merge request espressif/esp-idf!21562
2022-12-14 17:18:07 +08:00
zwj
5e72006fb9 Update bt lib for ESP32-C3 and ESP32-S3
- Add config to set duplicate scan list refresh period
- overwrite the oldest device infor if the list is full
- Fixed duplicate scan period is not accurate
2022-12-14 15:54:01 +08:00
Zhi Wei Jian
cd5ce86cf2 Merge branch 'bugfix/fix_ble_conn_failed_in_air' into 'master'
Change default TX power to 9 dBm on ESP32

Closes BT-2436

See merge request espressif/esp-idf!21567
2022-12-14 14:43:54 +08:00
chenjianhua
d7c97ce20b update bt lib for ESP32-C3 and ESP32-S3
1 fixed privacy error for directed adv
2 fixed multi periodic adv sync failed in air
2022-12-13 21:40:04 +08:00
zwl
cdcdc50cfe Renamed BAH 2022-12-13 18:02:19 +08:00
zwl
a83ee7d406 Fixed some occasional ble issues on ESP32H2BETA2 2022-12-13 17:47:28 +08:00
zwl
0b3490acd8 Optimized the number of npl on ESP32C2 2022-12-13 17:47:28 +08:00
chenjianhua
5c533afbae update bt-lib for ESP32
1 change default TX power to 9 dBm
2 fixed disconnect reason 0x1f (unspecified error)
3 fixed connection timeout due to terminate ind has not been acknowledged
2022-12-13 10:33:22 +08:00
Jiang Jiang Jian
f0fd0b7bc3 Merge branch 'rebase/remove_redundant_pm_lock_on_ble' into 'master'
ble: remove redundant pm lock on ble

See merge request espressif/esp-idf!21357
2022-12-12 14:49:23 +08:00
Zhi Wei Jian
6842d2f8c9 Merge branch 'bugfix/fix_mem_not_released_after_controller_init_failed_on_esp32c3' into 'master'
Fixed some memory was not released after bluetooth controller initialization failed on ESP32-C3 and ESP32-S3

Closes BT-3047 and BT-3025

See merge request espressif/esp-idf!21504
2022-12-12 11:15:34 +08:00
cjin
77d870c73a ble: fix occasional assertion on ble rtc intr 2022-12-09 15:23:44 +08:00
zwl
46127774fa Unify controller internal error code on ESP32-C2 2022-12-09 15:23:44 +08:00
cjin
6d83c999c6 ble: remove redundant pm lock on ble 2022-12-09 15:23:44 +08:00
zwj
b5a6e9a528 Fixed some memory was not released after bluetooth controller initialization failed on ESP32-C3 and ESP32-S3 2022-12-08 17:26:14 +08:00
zwj
e9bfaf9a41 Fixed some memory was not released after bluetooth controller initialization failed on ESP32 2022-12-07 15:04:39 +08:00
Shen Wei Long
67507baf37 Merge branch 'feature/add_comments_for_bt_connections_master' into 'master'
Explain how much memory that will be used by each connection/advertiser.

See merge request espressif/esp-idf!21321
2022-12-06 16:55:26 +08:00
Shen Weilong
b3d248df95 Explain how mush memory that will be used by each connection/advertiser. 2022-12-02 14:21:22 +08:00
Zhi Wei Jian
18e0cd6214 Merge branch 'feature/support_ble_max_conn_num_to_9' into 'master'
Support bluedroid host maximum number of connections to 9

Closes BT-2914, BT-3000, and BT-2915

See merge request espressif/esp-idf!20933
2022-12-02 12:10:27 +08:00
liuning
d9ef6aed66 ci: fix esp_phy_modem_deinit issue 2022-11-30 16:39:40 +08:00
Jiang Jiang Jian
09231b4fa2 Merge branch 'bugfix/fix_failure_of_wifi_channel_configuration' into 'master'
phy: only set phy_init_flag at power domain off, when all modems deinit

Closes WIFI-4983

See merge request espressif/esp-idf!21235
2022-11-30 14:41:08 +08:00
zwj
51c739c181 update BLE lib for ESP32-C3 and ESP32-S3
- Fixed lld_con.c line 3048 assert
- Fixed crash sometimes when connected as a slave by 8th device
2022-11-29 17:37:04 +08:00
zwl
81d6b8f011 Fixed interrupt latency when cache is disable on ESP32-C2 2022-11-29 16:29:32 +08:00
zwl
1732a6d044 Fixed memory leak when RAM free size is insufficient or setting ext scan parameters failed on ESP32-C2 2022-11-29 16:29:26 +08:00
liuning
b8d3553a1c phy: only set phy_init_flag at power domain off, when all modems deinit 2022-11-25 03:18:12 +00:00
C.S.M
28b2deaf24 Merge branch 'feature/add_target_esp32h2' into 'master'
ESP32-H2: Introduce new target for ESP32H2

See merge request espressif/esp-idf!21190
2022-11-24 18:31:19 +08:00
Alexey Gerenkov
47c2c13de5 build: Adds support for universal Clang toolchain 2022-11-23 13:25:16 +03:00
Cao Sen Miao
86aa4df5b5 ESP32-H2: Introduce new target for ESP32H2 2022-11-23 14:38:05 +08:00
zhiweijian
ebd2825379 - update phy lib
- Enable BLE pll track to fix bluetooth disconnection caused by temperature rise or fall on ESP32C3 and ESP32S3
- call pll track in controller task
2022-11-21 10:19:54 +08:00
zwj
b2a17e9d4c Update bt lib for ESP32C3 and ESP32S3
- Added config to disable scan backoff
- Fixed llm_scan.c assert at line 1485 during controller deinit if duplicate scan is not stopped
- Call pll track in controller task
2022-11-16 15:58:32 +08:00
zwj
8dc4207e69 change default tx power from 3dBm to 9dBm 2022-11-16 15:44:29 +08:00
Jiang Jiang Jian
8ea3865430 Merge branch 'feature/support_ble_memory_release_on_esp32c2' into 'master'
Support BLE memory release on ESP32C2

See merge request espressif/esp-idf!20838
2022-11-14 19:32:01 +08:00
laokaiyao
8677216576 esp32h2: renaming esp32h2 to esp32h4 2022-11-08 17:05:33 +08:00
Zhi Wei Jian
d5306303f0 Merge branch 'feature/support_ble_memory_release_on_esp32c3_and_esp32s3' into 'master'
Support Bluetooth to release .bss and .data segment memory on ESP32C3 and ESP32S3

Closes IDFGH-8470

See merge request espressif/esp-idf!20700
2022-11-02 11:00:53 +08:00
Jiang Jiang Jian
b313d7e2cd Merge branch 'bugfix/esp32c2_create_sync_lost' into 'master'
Fixed occasional failure to establish sync and occasional wdt timeout issues on ESP32C2

See merge request espressif/esp-idf!20861
2022-11-01 21:00:47 +08:00
zhiweijian
29e4fab59e Fixed BLE array access out of bounds 2022-10-31 20:03:41 +08:00
zwl
de3f7888c6 Fixed occasional failure to establish sync and occasional wdt timeout issues on ESP32C2 2022-10-31 11:44:50 +08:00
Rahul Tank
7ca82b1b29 Support BLE memory release on ESP32C2 2022-10-27 18:00:01 +05:30
zwj
d600496800 support BLE memory release on ESP32C3 and ESP32S3 2022-10-27 14:22:15 +08:00
Jiang Jiang Jian
6e65b61c8a Merge branch 'bugfix/esp32c2_scan_assert' into 'master'
Fixed occasional crash during scanning

Closes BT-2784

See merge request espressif/esp-idf!20578
2022-10-14 18:02:06 +08:00
Jiang Jiang Jian
0ebae990a0 Merge branch 'bugfix/use_nonblocking_coex_callback' into 'master'
bluetooth: use non-blocking coexistence callback functions so that Wi-Fi task is not blocked by Bluetooth

See merge request espressif/esp-idf!20413
2022-10-13 14:57:08 +08:00
zwl
07d844f565 Fixed occasional crash during scanning 2022-10-13 11:48:50 +08:00
Jiang Jiang Jian
55eaf66a94 Merge branch 'rebase/fix_ble_mem_leak_issue' into 'master'
fix ble mem leak when sleep is enabled

See merge request espressif/esp-idf!20527
2022-10-13 10:48:15 +08:00
cjin
071abb4866 fix ble mem leak when sleep is enabled 2022-10-12 11:23:28 +08:00
Satish Solanke
34722483b3 Merge branch 'master' into 'support/Update_sdkdefaultconfig_BLE_only_flag'
# Conflicts:
#   examples/bluetooth/bluedroid/ble/ble_ancs/sdkconfig.defaults.esp32c2
#   examples/bluetooth/bluedroid/ble/ble_compatibility_test/sdkconfig.defaults.esp32c2
#   examples/bluetooth/bluedroid/ble/ble_eddystone/sdkconfig.defaults.esp32c2
#   examples/bluetooth/bluedroid/ble/ble_hid_device_demo/sdkconfig.defaults.esp32c2
#   examples/bluetooth/bluedroid/ble/ble_ibeacon/sdkconfig.defaults.esp32c2
#   examples/bluetooth/bluedroid/ble/ble_spp_client/sdkconfig.defaults.esp32c2
#   examples/bluetooth/bluedroid/ble/ble_spp_server/sdkconfig.defaults.esp32c2
#   examples/bluetooth/bluedroid/ble/ble_throughput/throughput_client/sdkconfig.defaults.esp32c2
#   examples/bluetooth/bluedroid/ble/ble_throughput/throughput_server/sdkconfig.defaults.esp32c2
#   examples/bluetooth/bluedroid/ble/gatt_client/sdkconfig.defaults.esp32c2
#   examples/bluetooth/bluedroid/ble/gatt_security_client/sdkconfig.defaults.esp32c2
#   examples/bluetooth/bluedroid/ble/gatt_security_server/sdkconfig.defaults.esp32c2
#   examples/bluetooth/bluedroid/ble/gatt_server/sdkconfig.defaults.esp32c2
#   examples/bluetooth/bluedroid/ble/gatt_server_service_table/sdkconfig.defaults.esp32c2
#   examples/bluetooth/bluedroid/ble/gattc_multi_connect/sdkconfig.defaults.esp32c2
#   examples/bluetooth/bluedroid/ble_50/ble50_security_client/sdkconfig.defaults.esp32c2
#   examples/bluetooth/bluedroid/ble_50/ble50_security_server/sdkconfig.defaults.esp32c2
#   examples/bluetooth/bluedroid/ble_50/multi-adv/sdkconfig.defaults.esp32c2
#   examples/bluetooth/bluedroid/ble_50/peroidic_adv/sdkconfig.defaults.esp32c2
#   examples/bluetooth/bluedroid/ble_50/peroidic_sync/sdkconfig.defaults.esp32c2
2022-10-11 10:39:15 +00:00
wangmengyang
7736cdefd8 bt: use non-blocking coexistence callback functions so that Wi-Fi task is not blocked by Bluetooth 2022-10-11 16:36:37 +08:00
Zhi Wei Jian
1308ff3d21 Merge branch 'bugfix/fix_esp32_ble_assert_32' into 'master'
Fixed ESP32 BLE assert(32 0)

Closes BT-2809

See merge request espressif/esp-idf!20446
2022-10-08 21:51:50 +08:00
Wang Meng Yang
0fa55c897f Merge branch 'bugfix/fix_ble_lld_per_adv_assert_on_esp32c3_s3' into 'master'
Fixed BLE lld_per_adv.c line 401 assert

Closes BT-2624

See merge request espressif/esp-idf!20447
2022-10-08 20:49:43 +08:00
zwj
457006e04e Fixed BLE lld_per_adv.c line 401 assert 2022-09-30 15:45:37 +08:00
zwj
4ba1dd0a9c Fixed ESP32 BLE assert(32 0) 2022-09-30 15:07:24 +08:00
zwl
8a221f0073 Fixed the issue that master sends retransmitted data incorrectly on ESP32C2 2022-09-29 16:26:10 +08:00
cjin
0d113fb609 update controller lib for bugfix on light-sleep 2022-09-26 21:25:48 +08:00
cjin
f289710ccf fix ble compilation error 2022-09-26 20:51:13 +08:00
cjin
8e348c3f63 update ble controller lib for bugfix on esp32c2 2022-09-21 12:34:41 +00:00
cjin
872baad9b9 mbuf copy hci data error fix 2022-09-21 12:34:41 +00:00
Jiang Jiang Jian
292fe7c57f Merge branch 'bugfix/ble_light_sleep_error_on_esp32c2_master' into 'master'
Bugfix/ble light sleep error on esp32c2 master

Closes BLE-161 and BLE-162

See merge request espressif/esp-idf!20248
2022-09-21 10:53:18 +08:00
Jiang Jiang Jian
19759d5d33 Merge branch 'bugfix/acl_buf_ocf_and_conn_fail' into 'master'
bugfix/fixed the exhaustion of ACL buffer and duplicated connection requests

Closes ESPCS-855

See merge request espressif/esp-idf!19794
2022-09-20 15:12:14 +08:00
zwl
16c8a369e6 fixed wifi can't be connected after enable bt sleep mode 2022-09-20 14:44:00 +08:00
Wang Meng Yang
02aad58856 Merge branch 'bugfix/fix_ble_disconnect_due_to_channel_map_instant_passed' into 'master'
Fixed BLE disconnection issue when channel map instant passed due to bad channels

Closes BT-2764, BT-2730, and BT-2649

See merge request espressif/esp-idf!20189
2022-09-20 14:13:27 +08:00
zwl
f42eed9491 fixed ble can't enter light sleep 2022-09-20 12:08:09 +08:00
satish.solanke
77b8276578 Fix: blufi example memory leak while init and deinit 2022-09-19 10:17:50 +05:30
zwj
f95c347013 update BLE lib for ESP32C3 and ESP32S3
Fixed BLE disconnection issue when channel map update failed due to bad channels
2022-09-16 21:25:22 +08:00
zwj
c6b7bbdab9 Update ESP32-C3 and ESP32-S3 BLE lib
- Fixed the performance issue of usage of PLL track related baseband IRQsFixed the performance issue of BLE sync scan in coexistence scenario when PLL track is enabled
    - Fixed connect failed due to error sync found signal
    - Fixed BLE disconnect failed due to terminate_ind have sent but no ACK is received
    - Added ADV mode error check in ADV rx isr handler function
    - Fixed BLE RAL_UNDERRUN and TX_CRYPT_ERR assert
    - Disable scan continue
    - Fixed scan forever if scan continue is disable
2022-09-07 12:20:01 +08:00
jincheng
1282eda148 fixed the exhaustion of ACL buffer
fixed the duplication of connection request from the same device
2022-08-31 16:24:59 +08:00
Jiang Jiang Jian
8d9c51f76d Merge branch 'feature/add_txpwr_api_on_esp32c2' into 'master'
add set/get txpwr api for esp32c2

See merge request espressif/esp-idf!19520
2022-08-29 23:35:25 +08:00
Zhi Wei Jian
4a5662bc25 Merge branch 'feature/add_qa_test_funcs' into 'master'
Add QA test Functions for esp32

See merge request espressif/esp-idf!19735
2022-08-29 21:04:02 +08:00
zwl
30e47072f9 add set/get txpwr api and fix issues such as disconnect and abnormal tx behavior for esp32c2 2022-08-29 11:32:18 +08:00
zhiweijian
0b4122ecee Add QA test Functions 2022-08-23 21:20:43 +08:00
xiongweichao
9ee49832ea Fix bluetooth disconnection issue when light sleep and baseband power down are enabled 2022-08-22 15:06:48 +08:00
songruojing
304a8f142d esp32c6: introduce the target
Add esp32c6 target to tools and Kconfig
Create directories and files that are essential for `idf.py --preview set-target esp32c6`
2022-08-19 11:13:02 +08:00
zwj
788f7265c0 Update BLE lib for ESP32-C3 and ESP32-S3
- update ble tx power level mapping
- Fixed ble sch_arb assert
2022-08-11 21:29:26 +08:00
satish.solanke
42743a7189 Update_sdkdefaultconfig_BLE_only_flag ESP32C2 2022-08-09 16:28:01 +00:00
jingli
ee3423834e kconfig: refactor xtal freq kconfig to common configuration item 2022-08-05 19:12:29 +08:00
Island
74abb42053 Merge branch 'feature/update_to_the_latest_controller_lib' into 'master'
Feature/update to the latest controller lib

See merge request espressif/esp-idf!19372
2022-08-05 17:51:16 +08:00
zwl
dd05a3754a update ble controller lib for ble issues fixed on esp32c2(8dbbbf0269) 2022-08-04 15:19:51 +08:00
Li Shuai
4f2cec8495 1. Wi-Fi: update tsf tick interval when lpclk is modified
2. Move register_lpclk_callback to coexistence
2022-08-04 14:11:25 +08:00
xiongweichao
bb5e7004b9 make bluetooth and wifi use the same low power clock 2022-08-04 14:01:34 +08:00
xiongweichao
1fec2b9529 ESP32S3:bluetooth support use main XTAL in light sleep mode 2022-08-04 14:01:34 +08:00
xiongweichao
d85d927bb0 ESP32C3:bluetooth support use main XTAL in light sleep mode 2022-08-04 14:01:34 +08:00
Island
6c8375e2d2 Merge branch 'feature/support_ble_on_esp32c2_26M' into 'master'
support BLE with 26M xtal for esp32c2

See merge request espressif/esp-idf!19300
2022-08-04 11:07:20 +08:00
Shen Weilong
028d071e84 support BLE with 26M xtal for esp32c2 2022-07-29 21:36:33 +08:00
xiongweichao
7eedd710c2 fix legacy pair controller does not send the link key to the host
Closes https://github.com/espressif/esp-idf/issues/5850
2022-07-28 14:21:48 +08:00
jincheng
44607e10ea add protect for bt_util_buf_env buffers when access by task and interrupt
ignore the assert_err in rm_bt_clkoff1_setf
2022-07-27 17:56:08 +08:00
Jiang Jiang Jian
9a6ccb7f57 Merge branch 'bugfix/make_sure_sempher_and_queue_used_in_isr_is_in_DRAM' into 'master'
Bugfix/make sure sempher and queue used in isr is in dram

Closes WIFI-3571, IDFGH-7458, IDFGH-7342, and IDFGH-7569

See merge request espressif/esp-idf!19160
2022-07-22 14:04:27 +08:00
Jiang Jiang Jian
22b17a3471 Merge branch 'bugfix/schm_process_in_active_crash' into 'master'
Coex: fixed crash when calculating end transfer time

See merge request espressif/esp-idf!18330
2022-07-22 11:02:08 +08:00
baohongde
6d631d14de components/bt: Make sure sempher and queue used in isr is in DRAM 2022-07-21 13:50:29 +08:00
Jiang Jiang Jian
8d98fbe26a Merge branch 'bugfix/remove_unused_ble_rtc_source_sel' into 'master'
Remove can not use wake up source for esp32h2

See merge request espressif/esp-idf!18966
2022-07-13 13:50:26 +08:00
Jiang Jiang Jian
1523a1bdef Merge branch 'bugfix/fix_esp32_c3_s3_adv_report_duplicate_check' into 'master'
Fix esp32c3/s3 adv report duplicate check

Closes BT-2440

See merge request espressif/esp-idf!18961
2022-07-12 14:00:33 +08:00
GengYuchao
df6d3eb602 Remove can not use wake up source for esp32h2 2022-07-12 11:23:59 +08:00
xiongweichao
b0b6ad21f8 coex: fixed crash when calculating end transfer time 2022-07-11 15:26:53 +08:00
Jiang Jiang Jian
4644e2c302 Merge branch 'bugfix/fix_esp32_ke_mem_c_assert' into 'master'
Fixed esp32 BLE ke_mem.c assert

See merge request espressif/esp-idf!18916
2022-07-11 14:02:39 +08:00
chenjianhua
42667adf70 fix esp32c3/s3 adv report duplicate check 2022-07-11 10:25:32 +08:00
Jiang Jiang Jian
9ec829f352 Merge branch 'bugfix/wifi_sta_and_ble_disconnect_BCI-303_master' into 'master'
component_bt: Fix wifi is initialized before bluetooth initialization, bluetooth can't stay connected

Closes BCI-303

See merge request espressif/esp-idf!18643
2022-07-08 19:43:10 +08:00
Jiang Jiang Jian
a7bf3af687 Merge branch 'bugfix/reset_ble_hw_on_inititalization' into 'master'
component/bt: reset Bluetooth hardware during controller inititalization on ESP32-C3/ESP32-S3

Closes BT-2402

See merge request espressif/esp-idf!18831
2022-07-08 16:21:41 +08:00
zwj
9a46d06532 fix esp32 BLE ke_mem.c assert 2022-07-07 11:23:11 +00:00
Island
0d86ca59a6 Merge branch 'update/esp32h2_h2_beta2_controller_lib_to_cd9dd20' into 'master'
Update esp32h2 beta2 lib to controller master

See merge request espressif/esp-idf!18876
2022-07-06 22:13:05 +08:00
Jiang Jiang Jian
7b3ee47c67 Merge branch 'bugfix/fix_ble_ke_mem_c_assert_on_c3_s3' into 'master'
Fixed BLE ke_mem.c assert on esp32c3 and esp32s3

Closes BT-2405, BT-2406, and BCI-302

See merge request espressif/esp-idf!18863
2022-07-06 16:58:07 +08:00
wangmengyang
1d55f12c2d component/bt: reset Bluetooth hardware during controller inititalization on ESP32-C3/ESP32-S3
1. Rename MACROs SYSTEM_WIFI_RST_EN register bit fields to be more recognizable
2. reset Bluetooth baseband and clock bits to fix the issue of task watchdog triggered during controller initialization due to invalid hardware state
2022-07-06 16:23:48 +08:00
xiongweichao
155c4a5cb3 Fix wifi is initialized before bluetooth initialization, bluetooth can't stay connected 2022-07-06 14:42:46 +08:00
GengYuchao
d145c337e0 Enable rpa_moudle reset function 2022-07-05 20:50:31 +08:00
GengYuchao
509ac4e748 Update esp32h2 beta2 lib to master 2022-07-05 15:15:41 +08:00
zwj
f15d7d28b5 fix ble ke_mem.c assert on esp32c3 and esp32s3 2022-07-05 03:18:14 +00:00
Jiang Jiang Jian
8ab78803d4 Merge branch 'bugfix/s3_wakeup_light_sleep_rtc_wdt_timeout' into 'master'
component_bt: Fixed rtc watchdog timeout when waking up light sleep due to some functions not in IRAM

See merge request espressif/esp-idf!18757
2022-07-04 18:21:29 +08:00
morris
7863c1bc45 Merge branch 'bugfix/fix_rtc_freq_err_for_h2_beta1' into 'master'
Bugfix/fix rtc freq err for h2 beta1

See merge request espressif/esp-idf!18682
2022-07-04 16:46:17 +08:00
Wang Meng Yang
73cfc078a0 Merge branch 'bugfix/restore_edr_en_and_protect_for_vhci_env' into 'master'
bugfix/restore edr_en and add protect for vhci_env

Closes IDFGH-6254, IDFGH-6766, IDFGH-7605, and AUD-3629

See merge request espressif/esp-idf!18388
2022-07-01 19:31:01 +08:00
GengYuchao
95c8d775d0 Update lib for h2 beta2 2022-06-30 17:02:00 +08:00
GengYuchao
b474c83840 Add support for esp32h2 beta2 2022-06-30 17:02:00 +08:00
GengYuchao
07a470bccc Update ble lib for h2 beta1 2022-06-30 17:02:00 +08:00
xiongweichao
9531fae1d3 Fixed rtc watchdog timeout when waking up light sleep due to some functions not in IRAM 2022-06-29 19:56:47 +08:00
zwj
ed593ba168 update ble lib (444e4a2b)
- fix rpa entry err if addr resol is disabled
- fix aux connect crash
2022-06-27 14:50:26 +08:00
jincheng
70d892fbb8 restore edr_en which was wrongly cleared by role switch
add critical protection for vhci_env_p->vhci_intr_st
ignore max_page when handle remote features

Closes https://github.com/espressif/esp-idf/issues/7923
Closes https://github.com/espressif/esp-idf/issues/8394
Closes https://github.com/espressif/esp-idf/issues/1921
2022-06-21 19:23:41 +08:00
GengYuchao
1dabebf771 Fix Kconfig format issue and add option 2022-06-20 17:00:12 +08:00
GengYuchao
b2f8a3c694 Update bt controller interface file 2022-06-20 17:00:12 +08:00
GengYuchao
633e9282b7 Update the CMake compilation architecture and update the controller configuration options 2022-06-20 17:00:12 +08:00
GengYuchao
d1afa7f8d5 Update ble controller lib for esp32c2 2022-06-20 17:00:12 +08:00
Jack
cb0dd5cc75 fix the bug that some memory leaked in phy after wifi/ble deinit 2022-06-16 20:42:20 +08:00
zwj
fd90341138 support ble modem sleep and light sleep 2022-06-14 19:52:50 +08:00
Jiang Jiang Jian
b617ccfb4c Merge branch 'feature/esp32c2_eco1_bluetooth_update_0525_for_MR' into 'master'
Support bluetooth for esp32c2 chip

See merge request espressif/esp-idf!18243
2022-06-04 17:35:17 +08:00
Geng Yuchao
910b296d72 Add missing configuration items for BLE controller 2022-06-04 11:35:18 +08:00
Geng Yuchao
8533457208 Add bluetooth controller lib for esp32c2 2022-06-04 01:00:04 +08:00
Geng Yuchao
0722e6a0b7 Update controller lib for esp32h2 2022-06-04 01:00:04 +08:00
Geng Yuchao
5bba3ebed9 Fix esp32h2 controller support. 2022-06-04 00:59:56 +08:00
Geng Yuchao
5c3f0bfe7c Add esp32c2 controller support. 2022-06-04 00:59:21 +08:00
Geng Yuchao
50b762af1f Add Bluetooth controller menuconfig option for esp32c2 and esp32h2 2022-06-03 22:41:33 +08:00
xiongweichao
d888665160 Bluetooth build fail when power management is enabled
Closes https://github.com/espressif/esp-idf/issues/9081
2022-06-02 10:46:19 +08:00
satish.solanke
3a42007680 Bluedroid porting changes for esp32h2
created common Kconfig for common flag of nimbble and Bluedroid

fix compile error

created common cfg file for controller

fix the compilation error on tip of master

added common controller flags and fixed compilation error

sdkconfig rename for target specific
2022-05-30 08:42:45 +00:00
Jiang Jiang Jian
0e94779b2e Merge branch 'feature/support_esp32c2_wifi_new' into 'master'
Bringup ESP32C2 Wi-Fi

Closes IDF-3905

See merge request espressif/esp-idf!18136
2022-05-29 18:25:24 +08:00
Jack
7a8b63869f deinit BB MAC back memory when they are not used 2022-05-29 00:13:32 +08:00
Anton Maklakov
cfa3e68d1b bt: esp32s3, make int types consistent 2022-05-27 08:03:54 +00:00
Anton Maklakov
877dc3e304 bt: make int types consistent 2022-05-27 08:03:54 +00:00
songruojing
a5b09cf015 rtc_clk: Clean up some clock related enum and macro in soc/rtc.h, replace with new ones in
soc/clk_tree_defs.h
2022-05-24 22:59:41 +08:00
Karl Wang
777dbb6c83 components/bt: disable Bluetooth PLL track function for ESP32-C3/ESP32-S3 as it introduced coexistence issues 2022-05-17 20:00:23 +08:00
Jiang Jiang Jian
baa5b8ed7d Merge branch 'bufix/esp32c3_s3_build_err' into 'master'
component_bt: Fix ESP32C3/S3 build error after enabled light sleep

Closes BT-2086

See merge request espressif/esp-idf!17546
2022-05-01 17:48:18 +08:00
Marius Vikhammer
d2872095f9 soc: moved kconfig options out of the target component.
Moved the following kconfig options out of the target component:
 * CONFIG_ESP*_DEFAULT_CPU_FREQ* -> esp_system
 * ESP*_REV_MIN -> esp_hw_support
 * ESP*_TIME_SYSCALL -> newlib
 * ESP*_RTC_* -> esp_hw_support

Where applicable these target specific konfig names were merged into
a single common config, e.g;
CONFIG_ESP*_DEFAULT_CPU_FREQ -> CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ
2022-04-21 12:09:43 +08:00
songruo
60bb5c913d clk_tree: prework of introducing clk subsystem control
1. Clean up clk usage in IDF, replace rtc_clk_xtal/apb_freq_get with
   upper level API esp_clk_xtal/apb_freq
2. Fix small errors and wrong comments related to clock
3. Add clk_tree_defs.h to provide an unified clock id for each chip
   Modify the NGed drivers to adopt new clock ids
2022-04-11 12:09:06 +08:00
xiongweichao
2be8875fd7 Fix ESP32C3/S3 build error after enable light sleep 2022-03-24 11:43:04 +08:00
Anton Maklakov
68e5d9d585 Remove IRAM_ATTR from any function declarations
IRAM_ATTR expands to a unique section attribute. Applying it to both
declaration and definition results in a section conflict.
2022-03-22 09:58:50 +00:00
Rahul Tank
f376bb5d05 Add support in Nimble for ESP32H2 2022-03-14 11:57:53 +05:30
Sudeep Mohanty
a9fda54d39 esp_hw_support/esp_system: Re-evaluate header inclusions and include directories
This commit updates the visibility of various header files and cleans up
some unnecessary inclusions. Also, this commit removes certain header
include paths which were maintained for backward compatibility.
2022-03-07 11:18:08 +05:30
Yang Zhao
000f398ab9 Update ESP32-C3 and ESP32-S3 bt lib and phy lib
Add the pll track feature to keep the ble connection stable when the environment
temprature increase form 0 to 74.
2022-03-03 07:39:22 +00:00
xiongweichao
3fe222d17b Fix crash when host exit sniff mode 2022-03-02 03:56:52 +00:00
xiewenxiang
dd9e2f4ac6 components/bt: Fix ble adv_underrun issue
components/bt: Fix LLCP collision for channel map update
2022-02-16 16:35:00 +08:00
morris
ef00bd59dc esp_rom: extract int matrix route and cpu ticks getter 2022-02-09 13:52:20 +08:00
Kevin (Lao Kaiyao)
bf8d4d55d0 Merge branch 'refactor/rename_esp8684_to_esp32c2' into 'master'
esp8684: rename esp8684 to esp32c2

Closes IDF-4530

See merge request espressif/esp-idf!16745
2022-01-19 09:08:58 +00:00
laokaiyao
cf049e15ed esp8684: rename target to esp32c2 2022-01-19 11:08:57 +08:00
wangmengyang
941165e380 components/bt: fix the definition of "le_scan_duplicate_option" to avoid defining common symbols 2022-01-17 10:46:00 +08:00
jincheng
6a9afa65a2 fix cs event for rd_rem_ext_feats delayed issue 2022-01-05 14:48:04 +08:00
xiewenxiang
54298708fe component/bt: Support set HW CCA threshold value 2021-12-28 18:15:18 +08:00
wangmengyang
219bffce9f component/bt: fixed coexistence scannable extended adv performance issue 2021-12-22 10:55:33 +08:00
Chinmay Chhajed
556cd73a7e bt/bugfix: ACL Rx data is sent to host before enc change event 2021-12-09 15:23:50 +08:00
baohongde
c138e47f45 components/bt: Update licenses 2021-12-08 10:59:06 +08:00
Cao Sen Miao
eddc196081 esp_clk: refactor target/clk.h to private/esp_clk.h 2021-11-26 14:56:30 +08:00
xiewenxiang
6d35819d16 component/bt: fix assert fail when interrupt hlevel disable 2021-11-24 20:10:00 +08:00
xiongweichao
c80ac536d7 Add hci command to set coexistence status 2021-11-22 19:57:01 +08:00
Yang Zhao
3b84612582 Update esp32 bt-lib
It is abnormal when getting the deep sleep state bit. So we need to check
the state again and run the "ble_master_soft_rst()" if neesed.
2021-11-18 15:23:36 +08:00
Wang Meng Yang
534cd5bb31 Merge branch 'bugfix/fix_custmoer_issues' into 'master'
bugfix/fix_3_controller_issues

Closes ESPCS-721, IDFGH-5407, IDFGH-5712, and IDFGH-6082

See merge request espressif/esp-idf!15821
2021-11-11 03:39:37 +00:00
Jiang Jiang Jian
3a443d523f Merge branch 'bugfix/fix_memory_leak_controller_deinit' into 'master'
ESP32: Fix memory leak in controller deinit function

See merge request espressif/esp-idf!15449
2021-11-11 03:36:18 +00:00
Jiang Jiang Jian
c6ad0e4658 Merge branch 'bugfix/power_down_bluetooth_module_when_deinit' into 'master'
component/bt: Power down bluetooth module when deinit

Closes WIFI-4180

See merge request espressif/esp-idf!15716
2021-11-11 03:23:46 +00:00
jincheng
74e121af88 fix HCI_Read_Clock error
fix HCI_Create_Connection_Cancel error
fix ASSERT_WARN during epr
2021-11-09 14:37:13 +08:00
baohongde
11656377af components/bt: Fix the issue caused by the power off the bt power domain 2021-11-09 12:03:49 +08:00
morris
16677b0d3c global: make periph enable/disable APIs private
peripheral enable/disable usually should be managed by driver itself,
so make it as espressif private APIs, not recommended for user to use it
in application code.
However, if user want to re-write the driver or ports to other platform,
this is still possible by including the header in this way:
"esp_private/peripheral_ctrl.h"
2021-11-08 10:37:47 +08:00
Cao Sen Miao
599227a1b6 ESP8684: Add esp8684 target to other repo for passing build 2021-11-06 17:33:45 +08:00
xiewenxiang
9b16f5d831 component/bt: fix crash when shutdown bt 2021-11-02 10:29:10 +08:00
Chinmay Chhajed
7caa6ca45f BLE: Set connection max latency value to 499. 2021-10-29 14:24:45 +05:30
baohongde
e6ceedf3a0 component/bt: Power down bluetooth module when deinit 2021-10-29 10:42:23 +08:00
xiongweichao
d5c3342a46 Remove assert when inq done
Closes https://github.com/espressif/esp-idf/issues/6759
2021-10-21 20:08:37 +08:00
Yang Zhao
a7247db6b4 Update esp32 bt-lib
1. Fix the scan failed issue.
2. Fix connection failed with LG 5.0 phone
2021-10-19 21:43:17 +08:00
Li Shuai
46dedca23c ci: replace old header with new SPDX header style 2021-10-14 10:51:10 +08:00
baohongde
e684b3f2a6 Power Management: Initialize backup memory for MAC and Baseband power up/down 2021-10-14 10:51:10 +08:00
baohongde
17d719bad7 Power Management: power up/down BT power domain when BT init/deinit 2021-10-14 10:51:09 +08:00
Rahul Tank
7f9a15f298 ESP32: Fix memory leak in controller deinit function
Added change to dealloc s_pm_lock in controller deinit as it gets allocated
during init procedure.

Closes https://github.com/espressif/esp-idf/issues/7653
2021-10-08 14:35:47 +05:30
Chinmay Chhajed
a977618f55 BT: Check only for same X component of public key in BR/EDR. 2021-09-20 23:24:24 +08:00
xiewenxiang
bebc5d543b component/bt: Fixed default LE Event Mask 2021-09-17 17:12:16 +08:00
baohongde
b310c062cd components/bt: move config BT_RESERVE_DRAM from bluedroid to ESP32 controller 2021-09-16 20:26:35 +08:00
baohongde
eb176c3453 Fix bt init error with psram 2021-09-15 10:57:45 +08:00
baohongde
05768e9878 components/bt: Combine 3 Bluetooth controller menu 2021-09-15 10:57:37 +08:00
baohongde
6fc4bf7145 components/bt: Fix link error of Kconfig 2021-09-13 15:45:27 +08:00
baohongde
006a10b050 components/doc: Update doc about high-level interrupt
some bugfix.
2021-09-09 20:40:09 +08:00
baohongde
57eeb4d953 components/driver: support static allocation of FreeRTOS queues used by ISR routine 2021-09-09 11:29:19 +08:00
baohongde
e2fb413329 components/bt: add config option to choose Bluetooth intterupt level. 2021-09-09 11:29:17 +08:00
baohongde
8a4696d25a components/os: Fix live lock int bt isr using ocd multicore debug
components/os: Fix live lock in bt isr immediately
2021-09-09 11:29:08 +08:00
baohongde
d1db2df316 components/bt: High level interrupt in bluetooth
components/os: Move ETS_T1_WDT_INUM, ETS_CACHEERR_INUM and ETS_DPORT_INUM to l5 interrupt

components/os: high level interrupt(5)

components/os: hli_api: meta queue: fix out of bounds access, check for overflow

components/os: hli: don't spill registers, instead save them to a separate region

Level 4 interrupt has a chance of preempting a window overflow or underflow exception.
Therefore it is not possible to use standard context save functions,
as the SP on entry to Level 4 interrupt may be invalid (e.g. in WindowUnderflow4).

Instead, mask window overflows and save the entire general purpose register file,
plus some of the special registers.
Then clear WindowStart, allowing the C handler to execute without spilling the old windows.
On exit from the interrupt handler, do everything in reverse.

components/bt: using high level interrupt in lc

components/os: Add DRAM_ATTR to avoid feature `Allow .bss segment placed in external memory`

components/bt: optimize code structure

components/os: Modify the BT assert process to adapt to coredump and HLI

components/os: Disable exception mode after saving special registers

To store some registers first, avoid stuck due to live lock after disabling exception mode

components/os: using dport instead of AHB in BT to fix live lock

components/bt: Fix hli queue send error

components/bt: Fix CI fail

# Conflicts:
#	components/bt/CMakeLists.txt
#	components/bt/component.mk
#	components/bt/controller/bt.c
#	components/bt/controller/lib
#	components/esp_common/src/int_wdt.c
#	components/esp_system/port/soc/esp32/dport_panic_highint_hdl.S
#	components/soc/esp32/include/soc/soc.h
2021-09-09 11:29:06 +08:00
xiongweichao
ba7252d2ea Fix that when EXT CRYS is configured but not detected, light sleep is still allowed to be used 2021-08-16 16:51:54 +08:00
xiewenxiang
2e5f44afa3 component/bt: Fixed ble conn will crash durning erase flash 2021-08-13 17:57:33 +08:00
Yang Zhao
931da79804 1.Update the esp32 bt lib.The last update is still the old one,so update it again.
2.The controller may miss the sleep time caculated before. So it will stuck
  in the loop to get the deep sleep HW flag. Then the watchdog issue happen.
2021-08-11 14:05:45 +08:00
Yang Zhao
d1f4b74812 The controller may miss the sleep time caculated before. So it will stuck
in the loop to get the deep sleep HW flag. Then the watchdog issue happen.
2021-08-09 13:13:51 +08:00
Yang Zhao
6aa44a8a89 This is to fix the hardware bug. The device may report scan event
timeout when scaning.If check this error,then reset the rwble core.
2021-07-19 20:56:30 +08:00
xiongweichao
fbab2fc0e3 Add remove sniff when peer not accepted sniff mode 2021-07-16 11:31:13 +08:00
sushant.chougule
4c3d527b2f component/bt: Fix BLE controller crash during reset/reboot 2021-07-15 22:35:37 +05:30
Wang Meng Yang
0b42c8fc73 Merge branch 'bugfix/fix_c3_s3_some_bugs_06_15' into 'master'
Bugfix/fix c3 s3 some bugs 06 15

See merge request espressif/esp-idf!14018
2021-06-27 23:45:22 +00:00
Wang Meng Yang
6ecffb02aa Merge branch 'bugfix/ble_start_scan_crash_issue_mr_master' into 'master'
ble start scan crash issue

See merge request espressif/esp-idf!13798
2021-06-25 10:31:01 +00:00
zwj
97188e8068 support hw recorrect 2021-06-25 15:30:02 +08:00
wangmengyang
a024de7cac component/bt: fixed the assert in checking hardware sleep state during wake-up
The hardware sleep state change can take some time after wake-up interrupt. Use busy waiting instead of directly assert
2021-06-24 10:35:40 +08:00
wangmengyang
aff1696c4e components/bt: fixed two bugs
1. Use correct addresses of Bluetooth Low Power Clock registers on Chip 7.2.8 ESP32-S3
2. Disabled CS-RXDONEMSK to avoid RX interrupt flooding during scan event in coexistence scenario
2021-06-23 07:06:28 +08:00
“YangZhao”
7bec64eaa3 If the scan window set as 4 slots and the scan interval set as 5 slots
,then the device will crash when starting scanning.This commit is to fix
this bug.
2021-06-21 21:14:42 +08:00
sushant.chougule
8f7ed33ba3 bt/component: Fix MIC error issue during start_encryption procedure in esp32c3 ble controller 2021-06-21 17:03:02 +05:30
wangmengyang
775465c140 components/bt: fixed performance issue for extended active scan in coexistence scenario: use the same priority for Rx of AUX_ADV_IND and AUX_SCAN_RSP 2021-06-07 11:31:15 +08:00
Jiang Jiang Jian
5cbea220b0 Merge branch 'feature/decouple_esp_phy' into 'master'
esp_phy: decouple esp_phy component from esp_wifi and bt

See merge request espressif/esp-idf!13742
2021-06-04 05:20:17 +00:00
Shu Chen
6061a547e5 esp_phy: decouple esp_phy component from esp_wifi and bt
* add esp-phy-lib submodule
* move libphy.a and phy_init.c from esp_wifi to esp_phy
* move librtc.a from esp_wifi to esp_phy
* move libbtbb.a from bt to esp_phy
* corresponding updates to build system
2021-06-03 16:17:31 +08:00
Angus Gratton
dc6b950257 doc: Add performance guides for execuion speed, binary size, RAM usage
Closes https://github.com/espressif/esp-idf/issues/7007
Closes https://github.com/espressif/esp-idf/issues/6715
Closes https://github.com/espressif/esp-idf/issues/3781
Closes https://github.com/espressif/esp-idf/issues/2566
2021-06-03 13:55:34 +10:00
liaowenhao
6bd7f30199 bugfix/fix crash when lmp flooding 2021-05-24 12:08:03 +08:00
baohongde
721a0c3415 components/bt: Delete BLE ADV priority high 2021-05-17 17:07:14 +08:00
Chinmay Chhajed
ce4743d9d3 bt controller: Fixed handling for invalid feature page. 2021-05-11 09:00:37 +00:00
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
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
zwj
58cd231895 optimize C3 and s3 multi-connection 2021-04-20 02:41:14 +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
Renz Bagaporo
e6edf34e82 esp32: move esp_clk functions 2021-03-31 19:17:33 +08: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
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
“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
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
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
Chinmay Chhajed
1d54d9ac13 Fix for C2H flow control param check when only BLE mode is configured. 2021-03-10 15:06:49 +05:30
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
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
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
gengyuchao
0d1eb8a331 Fix IRAM_ATTR missing 2021-02-26 20:31:47 +08:00
Chinmay Chhajed
368ba6b077 component/bt: Added check for NULL valued combination key. 2021-02-09 12:09:32 +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
wangmengyang
2dd730d35c component/bt: [esp32c3] modify Bluetooth coexistence options 2021-02-05 09:16:29 +00: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
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
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
wangmengyang
51be1af028 add coexist hook functions and fix bugs for coexistence 2021-01-27 06:37:04 +00:00
zwj
ea42d8e043 fix bluedroid deinit crash 2021-01-15 21:08:14 +08:00
zwj
7c1c669799 component/bt: add BLE v5.0 feature for bluedroid host 2021-01-15 17:55:12 +08:00
Island
1e73d90c29 Merge branch 'bugfix/bluedroid_avoid_same_bdaddr_conn' into 'master'
Bluedroid: Do not connect if peer BD_ADDR is same as own BD_ADDR.

See merge request espressif/esp-idf!11806
2021-01-14 14:47:21 +08:00
Chinmay Chhajed
e016b6b79b Bluedroid: Do not connect if peer BD_ADDR is same as own BD_ADDR. 2021-01-05 14:54:15 +05:30
baohongde
3b0fc48ab4 components/bt: Shutdown Bluetooth before esp_restart. 2020-12-21 20:08:10 +08:00
gengyuchao
247484c454 bugfix: clear the timer after remote reject when respond the parameters update 2020-12-17 22:19:44 +08:00
wangcheng
386a8e37f1 components/bt:fix exl200, add btdm_disable_adv_delay, fix RPA addr update error. 2020-12-17 10:57:54 +08:00
Wei Tian Hua
6b7c878581 Free ACL RX Buf in EM when disconnection 2020-12-16 18:02:39 +08:00
weitianhua
56f0978caa Add protection for interval_min when it comes to zero 2020-11-19 11:05:40 +08:00
Angus Gratton
66fb5a29bb Whitespace: Automated whitespace fixes (large commit)
Apply the pre-commit hook whitespace fixes to all files in the repo.

(Line endings, blank lines at end of file, trailing whitespace)
2020-11-11 07:36:35 +00:00
weitianhua
ed2654bdf3 Remove dummy assert when receive passkey requst 2020-11-10 15:58:24 +08:00
gengyuchao
5aecf71021 Fix two bugs:
1.Fix supervision timeout in LLC DISC busy statue can not disconnect issue.
 2.Solve the problem that the ble terminate ack packet may lose with a high probability in coex mode.
2020-11-10 03:02:57 +00:00
wangcheng
e5af56db41 components/bt: fix hci timeout, add timer to monitor scan evt. 2020-11-06 14:04:17 +08:00
weitianhua
1de3b17192 Fix BT controller dead issue caused by clk overflow 2020-10-29 10:49:30 +08:00
wangcheng
6d7c9907c3 components/bt: fixed memory damage caused by bluetooth memory release 2020-10-28 06:59:03 +00:00
wangcheng
8cf0c1c3b8 components/bt: fix assert(10, 9), when the AFPM happens 2020-10-28 06:59:03 +00:00
wangcheng
94fae76de1 components/bt: fixed tx_prog insert error 2020-10-21 20:22:17 +08:00
baohongde
3b82670a50 components/bt: Fix waking up fail while sleeping 2020-10-14 20:20:57 +08:00
baohongde
3f97f1d67a components/bt: Make sleep avaliable in hli(for future use) 2020-10-13 19:45:03 +08:00
wangcheng
49a52cda6e components/bt: btdm fix cache disable crash 2020-10-11 15:14:34 +08:00
baohongde
628655b6be components/coex: Some bugfix about ble dynamic prio
Rewrite ble dynamic prio to fix ble disconn in conn_param_update/channel_map_update
Rewrite ble dynamic prio in connection establishment
Fix ble dynamic prio with latency
Fix status bit set error when conn fail
2020-09-29 21:08:13 +08:00
wangcheng
8ddbadafe7 component/bt: Insert the llcp packet to the top of the tx_preg linked list. 2020-09-25 18:27:10 +08:00
Xia Xiaotian
bdbe74693f esp_wifi: refactor wifi code in order to adapter to new chips 2020-09-24 10:15:50 +08:00
Xia Xiaotian
2e0c60461c esp_wifi: refactor PHY access
- Simplify PHY access API
- Move coexist initializing and deinitializing out from PHY API
  to Wi-Fi and Bluetooth
- Remove coexist pause and resume for they are no longer needed.
2020-09-22 15:00:05 +08:00
weitianhua
c598b816ba Confirmed bugfix from Baidu project 2020-09-15 19:36:20 +08:00
weitianhua
9b57366908 Change PCM config to the right position 2020-09-01 16:05:01 +08:00
weitianhua
d43f3539ee Workaround for a hardware bug in Slave sniff mode. Because of Slave dose not start a sniff timeout count when slave send a ACL package. 2020-08-26 15:00:29 +08:00
wangcheng
6a9becd75f Fixed assert(9, 10), When rx and evt_end interrupts exist at the same time, use the information of rx to determine the execution order 2020-08-23 13:42:40 +00:00
Jiang Jiang Jian
2ad8f8c9d2 Merge branch 'bugfix/ADV_UNDERRUN_assert_1024' into 'master'
components/bt: Fix ble assert(1024,0), ADV_UNDERRUN error

Closes BT-726

See merge request espressif/esp-idf!9479
2020-07-30 21:18:11 +08:00
morris
2917651478 esp_rom: extract common ets apis into esp_rom_sys.h 2020-07-27 15:27:01 +08:00
wangcheng
43f1e43215 component/bt: Fix ble IFS_UNDERRUN, ADV_UNDERRUN error 2020-07-27 04:09:17 +00:00
weitianhua
8f84930c5c Redesign Kconfig.in BT components 2020-07-14 11:01:02 +08:00
weitianhua
4167fc3438 Enable pcm config 2020-07-14 10:25:13 +08:00
wangcheng
b60c496296 components/bt: Change the default value of conn_max_tx_octets to 251. 2020-07-10 19:48:32 +08:00
Chinmay Chhajed
9bac16fcec Fixes ACL TX handler functioning.
ACL TX handler was never being called. Changed it's caller function so
that it is called properly.
2020-07-02 17:11:29 +05:30
Chinmay Chhajed
e3350e7861 Bluedroid: Authentication fixes in Legacy and Secure Connection.
Prevent a remote device from doing a Bluetooth Impersonation Attack
(BIAS) by:

- Preventing remote device to downgrade secure connection
feature mask. Secure connection feature mask should remain same or
increase to enabled in link key generation and authentication.

- Doing a mutual authentication during Legacy Authentication.

Signed-off-by: Chinmay Chhajed <chinmay.chhajed@espressif.com>
2020-06-25 15:37:01 +05:30
wangcheng
7bad9b77cc components/bt:Fix instant reverse and add ble connect paramter check. 2020-06-18 11:21:46 +08:00
baohongde
140b696009 components/bt: Fix ble disconnect due to instant of channel map update is too small 2020-06-17 03:52:32 +00:00
baohongde
75ca740d04 Set AFH in time(075dd35)
Send LMP_channelClassification immediately
Fix first LMP_set_AFH not using host value
2020-06-17 03:52:32 +00:00
baohongde
fd8f2c1a32 components/coex: Fix ble connecting fail in coexist 2020-06-17 03:52:32 +00:00
weitianhua
8fc05d0665 Fix ASSERT for RXDESC and save the log for debug 2020-05-18 06:51:51 +00:00
weitianhua
8d1032ccac Fix ASSERT in ld_acl at line 302 forclkoff1 and localval 2020-05-18 06:51:51 +00:00
weitianhua
77cc105c72 Fix ld_acl schedule bug to parity shift 2020-05-18 06:51:51 +00:00
weitianhua
55877684a0 Fix ASSERT(64,0) in rwble.c 2020-05-18 06:51:51 +00:00
weitianhua
0811851378 Fix ASSERT in ld_pscan.c at line 1032 2020-05-18 06:51:51 +00:00
weitianhua
b20f254483 Free lmp tx buf in EM in the procedure of handling LMP_detach_Req when not received the last acknowledge from peer device and seperate them by ACL State 2020-05-18 06:51:51 +00:00
weitianhua
190ff3ae37 Fix that when slave initiate unsniff procedure and meet transaction collision, no mode change event is repoerted 2020-05-18 06:51:51 +00:00
weitianhua
70fa5b4ac5 Fix int_wdt due to disable interrupt too long time 2020-05-18 06:51:51 +00:00
weitianhua
c18ed5cbee Fix Connection fail in loop 2020-05-18 06:51:51 +00:00
weitianhua
7aeb3d329a Set AFH in BTDM Task when WiFi changes channel 2020-05-18 06:51:51 +00:00
weitianhua
e0e1154b62 Fix ASSERT(25,0) in lc_task.c 2020-05-18 06:51:51 +00:00
weitianhua
899e49b90e Disable frequent warning log in ld_acl 2020-05-18 06:51:51 +00:00
weitianhua
b45f2d3913 Move default log level to WARNING instead ERROR in BT Controller 2020-05-18 06:51:51 +00:00
baohongde
95f47a2d4d Coexistence: Add coexist API to enable BLE connection dynamic priority 2020-04-28 16:16:27 +08:00
sushant.chougule
4cd6f09427 components/bt: Fix for HCI desync deadlock issue in BLE controller 2020-04-02 09:54:16 +00:00
baohongde
1bcce4e7db components/coex: Fix wakeup delay with DFS 2020-03-20 17:58:05 +08:00
weitianhua
b86f4d4f00 Fix mem_start uninitialized error when compiler optimization performance enabled 2020-03-12 15:07:03 +08:00