Commit graph

1157 commits

Author SHA1 Message Date
Jiang Jiang Jian
0b4faeb781 Merge branch 'bugfix/btdm_backports_v3.2_0903' into 'release/v3.2'
Bugfix/btdm backports v3.2 0903

See merge request espressif/esp-idf!5987
2019-10-11 18:34:31 +08:00
Prasad Alatkar
cf26a8b0f0 BT/Bluedroid : Add support to set min encryption key requirement (Backport v3.2)
- Backport(v3.2) of IDF MR!6122
- Modifies `smp_utils.c` to add check on encryption key size received from
  peer.
- Modifies `esp_ble_gap_set_security_param` API to add minimum encryption key
  size requirement.
2019-10-09 16:19:48 +08:00
baohongde
ca824d0ddf components/bt: backports release/v3.2 0903
Remove xtensa/xruntime.h
Fix sending Lmp_feature_req_ext in a loop
Fix 2 bugs in r_ld_fm_sket_isr
fix data loss and send same pkt twice sometimes
fix adv data error in air sometimes
fix adv start/stop crash sometimes
2019-09-23 17:53:29 +08:00
wangmengyang
fae3bad007 components/bt: set the minimum encryption key size to be 7 octects for BR/EDR link for preventing KNOB attack.
This patch is to address the CVE-2019-9506 vulnerability.
2019-08-23 08:30:23 +08:00
baohongde
dc1db1c4e7 components/bt: Backport 3 bugfixs into release v3.2
1. Bugfix btdm sleep twice after wakeup request
2. Fix connect fail duo to loop of send extended feature request
3. Clear BT/BLE interrupts after controller_disable to overwrite the default non-zero value of intcntl registers
2019-08-09 03:04:40 +00:00
baohongde
151638fdbb components/bt: Fix memory leak about rfcomm 2019-07-25 17:10:52 +08:00
zhiweijian
2821e99bcc component/bt: fix rxwinsz assert in ble and wifi coex 2019-07-04 21:17:51 +08:00
Jiang Jiang Jian
cbec031c91 Merge branch 'bugfix/btdm_backport_2_bugs_v3.2' into 'release/v3.2'
Bugfix/btdm backport 2 bugs v3.2

See merge request idf/esp-idf!5269
2019-07-02 17:33:53 +08:00
zhiweijian
eaf8cfbf8d component/bt: fix unpack hci enhance connection complete event error 2019-06-24 03:23:31 +00:00
baohongde
e7f57fef55 component/bt: Allow configuration of default SCO_DATA_PATH in bluetooth controller 2019-06-17 14:12:09 +08:00
baohongde
284362d62d add missing source files to CMakeLists for HFP 2019-06-17 14:06:33 +08:00
wangmengyang
29b009d6fd component/bt: fix some performance issues in A2DP source data flow control
1. modify the limit of frames to send to avoid dropping packet on A2DP source due to TX data queue overflow
2. reduce the A2DP source data queue size in order to achieve faster control respnonse
2019-06-17 14:06:19 +08:00
baohongde
267ce80355 components/bt: Fix assert due to alloc LMP TX buffer failed 2019-06-12 19:25:59 +08:00
Jiang Jiang Jian
193b8e93a8 Merge branch 'bugfix/btdm_abort_if_deinit_spp_without_init_v3.2' into 'release/v3.2'
components/bt: Fix abort if call esp_spp_deinit without calling esp_spp_init

See merge request idf/esp-idf!4862
2019-04-26 21:01:35 +08:00
Jiang Jiang Jian
0c13ae6b45 Merge branch 'feature/btdm_add_ble_link_timeout_config_v3.2' into 'release/v3.2'
Component/bt: add ble link timeout config in menuconfig(backport v3.2)

See merge request idf/esp-idf!4826
2019-04-25 20:05:19 +08:00
baohongde
f95826144e components/bt: Fix abort if call esp_spp_deinit without calling esp_spp_init 2019-04-24 11:34:06 +08:00
zhiweijian
96c8343e46 Component/bt: add ble link timeout config in menuconfig
- add ble link timeout config in menuconfig
- disable background connection when call gatts_open
2019-04-22 21:55:06 +08:00
XiaXiaotian
5059c7fac3 Decouple WiFi and BT with coexist to reduce bin size
1. Do not link WiFi code when only BT or BLE is used and WiFi is not
used.

2. Do not link coexist code when CONFIG_SW_COEXIST_ENABLE is disabled.
2019-04-17 16:59:24 +08:00
Jiang Jiang Jian
acc882f4dd Merge branch 'bugfix/btdm_bugx_backport_3.2' into 'release/v3.2'
Some bugs backport 3.2

See merge request idf/esp-idf!4773
2019-04-16 10:45:04 +08:00
Jiang Jiang Jian
fa40e43c8d Merge branch 'bugfix/btdm_fix_warning_when_disable_logs_v3.2' into 'release/v3.2'
components/bt: Fix warning when disable debug logs or in release mode and improve the code structure

See merge request idf/esp-idf!4620
2019-04-15 18:52:09 +08:00
Jiang Jiang Jian
9f29dbf656 Merge branch 'bugfix/btdm_fix_build_warning_when_bluedroid_disable_log_v3.2' into 'release/v3.2'
Component/bt: fix build warning when bluedroid disable log (backport v3.2)

See merge request idf/esp-idf!4566
2019-04-15 18:50:58 +08:00
baohongde
bb518afb59 Some bugs backport 3.2
1.Fix memory leak when set txpower
2.Fix some bugs
    Disconnect with apple device
    hci_refresh_enc_key_cmd will be ignore
    hci_refresh_enc_key_cmd will crash
2019-04-15 16:51:29 +08:00
Jiang Jiang Jian
2da22620f8 Merge branch 'feature/btdm_add_mesh_adv_type_and_srv_uuid_for_dup_scan_except_v3.2' into 'release/v3.2'
Component/bt: add mesh beacon adv and svc uuid for duplicate scan exceptional list (backport v3.2)

See merge request idf/esp-idf!4606
2019-04-14 02:56:43 +08:00
Jiang Jiang Jian
065d451e47 Merge branch 'bugfix/btdm_modify_HCI_GET_CMD_BUF_v3.2' into 'release/v3.2'
Component/bt: modify HCI_GET_CMD_BUF (backport v3.2)

See merge request idf/esp-idf!4599
2019-04-12 21:58:51 +08:00
Jiang Jiang Jian
c8990eb39d Merge branch 'bugfix/btdm_add_scan_window_interval_check_v3.2' into 'release/v3.2'
Component/bt: add scan window and interval check when set scan params (backport v3.2)

See merge request idf/esp-idf!4311
2019-04-12 21:57:50 +08:00
Jiang Jiang Jian
c90f770599 Merge branch 'bugfix/btdm_fix_blufi_prepare_write_crash_v3.2' into 'release/v3.2'
Component/bt: fix blufi prepare write crash (backport V3.2)

See merge request idf/esp-idf!4563
2019-04-12 21:57:23 +08:00
Jiang Jiang Jian
48978c6f2b Merge branch 'bugfix/btdm_fix_iOS_and_win10_compatibility_error_for_HID_v3.2' into 'release/v3.2'
Component/bt: fix iOS and win10 compatibility error  for HID (backport v3.2)

See merge request idf/esp-idf!4424
2019-04-12 21:56:40 +08:00
zhiweijian
3130b19cf8 Component/bt: add mesh beacon adv and svc uuid for duplicate scan exceptional list 2019-03-28 11:20:51 +08:00
baohongde
5ede49ca4a components/bt: Fix warning when disable debug logs or in release mode and improve the code structure 2019-03-26 15:29:22 +08:00
baohongde
bbdb236ab7 components/bt: Fix warning when disable debug logs or in release mode and improve the code structure 2019-03-26 14:59:58 +08:00
zhiweijian
6b4dcd4f5c Component/bt: modify HCI_GET_CMD_BUF 2019-03-22 15:02:20 +08:00
zhiweijian
241ba1a6bb Component/bt: fix iOS and win10 compatibility error for HID 2019-03-20 19:47:04 +08:00
zhiweijian
78d32f2e8b Component/bt: fix build warning when bluedroid disable log 2019-03-20 15:06:17 +08:00
zhiweijian
f237b92bc4 Component/bt: fix blufi prepare write crash 2019-03-20 14:27:11 +08:00
zhiweijian
d6bdaed141 Component/bt: fix no adv report when scanning with sleep enable 2019-03-18 17:40:19 +08:00
zhiweijian
fed772641a Component/bt: add update duplicate scan exceptional list APIs 2019-03-14 20:59:38 +08:00
zhiweijian
6628fddae6 Component/bt: add BLE adv report flow control 2019-03-12 20:18:30 +08:00
zwj
b305a96a74 component/bt: add vendor hci cmd 2019-03-12 11:55:42 +08:00
Tian Hao
67aefe1011 component/bt : fix bug that there's low ratio crash when BLE do re-connect/re-scan/re-adv
fix 3 bugs:
1. do BLE connect (both of slave and master), it mgiht cause crash due to there's much interrupts happens effect ble code running, for example, wifi run on the same core as bluetooth controller and wifi run throughtput test.
2. do BLE scan stop or adv stop or connection stop, it might cause ASSERT or crash due to memory corrupted in controller memory poll.
3. minor bug fix, not really effect bluetooth.
2019-02-25 13:40:46 +00:00
zhiweijian
46a3c36343 Component/bt: add scan window and interval check when set scan params 2019-02-25 13:22:32 +00:00
zwj
b4feb67b5f component/bt:fix connection params update issues 2019-02-19 20:26:36 +08:00
baohongde
5568ca2855 components/bt: Add precautions for esp_vhci_host_send_packet (backport 3.2) 2019-02-18 08:15:17 +00:00
baohongde
30f2371917 components/bt: Fix crash when inquiry stop (backport v3.2) 2019-02-18 08:15:17 +00:00
wangmengyang
b8f0c32a0a component/bt: allow dynamic allocation of SBC encoder/decoder buffer used in A2DP to save internal DRAM 2019-02-13 19:15:34 +08:00
Jiang Jiang Jian
8a69ffc36f Merge branch 'bugfix/btdm_add_handle_in_gatts_conf_event_for_indication_v3.2' into 'release/v3.2'
Component/bt: add handle in gatts conf event for indication (backport v3.2)

See merge request idf/esp-idf!4222
2019-02-01 21:34:05 +08:00
zhiweijian
95c7f45e84 Component/bt: add handle in gatts conf event for indication 2019-01-31 20:30:23 +08:00
zhiweijian
651a08f710 Component/bt: fix write char crash after disconnection 2019-01-31 12:20:16 +00:00
Tian Hao
78511c3cc3 component/bt: add a option to make report adv data and scan response individually
Originally, when doing BLE active scan, Bluedroid will not report adv to
application layer until receive scan response. This option is used to
disable the behavior. When enable this option, Bluedroid will report
adv data or scan response to application layer immediately.
2019-01-24 14:43:36 +08:00
wangmengyang
358de85eb3 component/bt: add more information and description for bluetooth modem sleep
Add remark that "EVED" mode for bluetooth modem sleep is only used for internal test
2018-12-21 19:29:47 +08:00
Jiang Jiang Jian
2cac11f162 Merge branch 'bugfix/btdm_fix_crash_adv_scan_coex_v3.2' into 'release/v3.2'
component/bt: fix crash when adv and scan coex and optimize duplicate scan (backport v3.2)

See merge request idf/esp-idf!3994
2018-12-21 15:59:53 +08:00
Jiang Jiang Jian
64eeee4532 Merge branch 'bugfix/btdm_fix_two_bugs_about_pairing_v3.2' into 'release/v3.2'
components/bt: Fix two bugs about pairing(backport 3.2)

See merge request idf/esp-idf!3995
2018-12-21 14:26:19 +08:00
zwj
3f6033d8bd fix crash when adv and scan coex and optimize duplicate scan 2018-12-19 19:53:01 +08:00
baohongde
45e59a9f56 components/bt: Fix two bugs about pairing
1. Fix Legacy Pairing failed without remote device name
2. Fix discovery no device after disabling SSP
2018-12-19 19:42:47 +08:00
wangmengyang
587e6ec93f component/bt: use a pm_lock to prevent light sleep when bluetooth is enabled due to current imcompatibility 2018-12-18 14:51:19 +08:00
Jiang Jiang Jian
6d00c7fc49 Merge branch 'bugfix/btdm_assert_ble_65536_v3.2' into 'release/v3.2'
fix bug that there's very low ratio to cause BLE assert(65536, 0) in rwble.c at line 222

See merge request idf/esp-idf!3968
2018-12-18 12:03:21 +08:00
Jiang Jiang Jian
c418714ec6 Merge branch 'bugfix/btdm_fix_receive_adv_pkt_when_duplicate_scan_enabled_v3.2' into 'release/v3.2'
Component/bt: fix receive adv pkt when enable duplicate scan (backport v3.2)

See merge request idf/esp-idf!3942
2018-12-18 11:45:28 +08:00
Tian Hao
e5e592e5b6 fix bug that there's very low ratio to cause BLE assert(65536, 0) in rwble.c at line 222 2018-12-17 20:50:42 +08:00
zhiweijian
28e20e90e3 Component/bt: fix receive adv pkt when enable duplicate scan 2018-12-17 15:51:28 +08:00
Jiang Jiang Jian
1c4d9f2aca Merge branch 'bugfix/btdm_modem_sleep_cowork_with_DFS_for_v3.2' into 'release/v3.2'
Bugfix/btdm modem sleep cowork with dfs for v3.2(backport v3.2)

See merge request idf/esp-idf!3962
2018-12-14 20:28:31 +08:00
Jiang Jiang Jian
ded8b0102a Merge branch 'bugfix/btdm_fix_auth_mode_error_when_reconnection_in_smp_v3.2' into 'release/v3.2'
Component/bt: fix auth_mode error when reconnection in SMP (backport v3.2)

See merge request idf/esp-idf!3955
2018-12-14 18:24:01 +08:00
wangmengyang
401970495d component/bt: add DRAM_ATTR attribute to global variables(mostly in bss segment) in bt.c which can be accessed in ISR 2018-12-14 14:59:41 +08:00
wangmengyang
8de9149b11 component/bt: bugfix of bluetooth modem sleep not being able to work with Dynamic Frequency Scaling
1. start an esp_timer on entering sleep to acquire pm_lock before wake up from modem sleep
2. decrease the clock division of XTAL fed to bluetooth low power clock from 32us to 2us period to allow to work under 240MHz Max CPU frequency
3. decrease the minimum sleep duration threshold to allow shorter bluetooth modem sleep period, especially for BLE with short connection interval
4. reconfigure bluetooth baseband(BT-BB) settings after PHY/RF init upon waking up from modem sleep to avoid packet RX/TX performance degradation
2018-12-14 14:56:29 +08:00
zhiweijian
2c1e3d1ef2 Component/bt: fix save keys when auth mode without bond 2018-12-13 15:45:53 +08:00
zhiweijian
bf608b6709 Component/bt: fix auth_mode error when reconnection in SMP 2018-12-13 15:33:37 +08:00
Jiang Jiang Jian
fd00d3213b Merge branch 'bugfix/btdm_fix_accept_specified_sec_auth_v3.2' into 'release/v3.2'
Component/bt: fix accept specified sec auth error(backport v3.2)

See merge request idf/esp-idf!3836
2018-12-13 11:20:02 +08:00
Tian Hao
f44507de53 fix bug that there's very low ratio to cause BLE assert(32768, 0) in rwble.c at line 222 2018-12-06 21:35:19 +08:00
Tian Hao
2d67ce3109 component/bt and esp32: fix two bluetooth bugs that caused by coexist module
1. Fix interrupt watchdog timeout in bluetooth "btdm_bb_isr"
    2. Fix BLE assert(512) or assert(1536)  in rwble.c at line 222
    3. Update librtc.a to fix BLE assert(512) in rwble.c at line 222

    The #1 and #2 occurs random.
    The #3 bug occurs in certain scenario:
    	1. If Wifi start softap and BLE is working
    	2. If wifi start station, but do not use normal station operation, such
    		as just use espnow, while BLE is working
    	3. Any other scenario, that wifi works without use software coexist
    		operation, while BLE is working(such as do advertising and ...)

    4. update libcoexist.a version to v1.1.2
2018-12-03 19:30:28 +08:00
zhiweijian
ca51b60033 Component/bt: fix accept specified sec auth error 2018-11-29 20:46:08 +08:00
Tian Hao
9bb719dd68 fix bug to unsupport rf reg access from hci cmd
Always return 0 when read rf register and do nothing when write rf register
2018-11-24 14:21:25 +08:00
baohongde
8d1594c339 components/bt: Move function in interrupt into IRAM
1. Move function in interrupt into IRAM
2. Delete unused code, saving 240B DRAM and some code size
2018-11-22 16:19:21 +08:00
Jiang Jiang Jian
18b65dca26 Merge branch 'bugfix/btdm_controller_disable_v3.2' into 'release/v3.2'
Fix two bugs when disable bluetooth controller(backport v3.2)

See merge request idf/esp-idf!3716
2018-11-21 11:26:14 +08:00
Tian Hao
331c7c7dc3 Fix two bugs when disable bluetooth controller
1. Fix the bug that disable controller suddenly cause crash when ble is working.
2. Fix the bug that when disable controller, it will cause wifi cannot RX, TX timeout, buffer lack and etc.
2018-11-20 09:01:57 +00:00
zhiweijian
c59c40741b Component/bt: add check peer addr type in set adv params 2018-11-19 17:15:41 +08:00
Jiang Jiang Jian
8725bce5bc Merge branch 'bugfix/btdm_errors_in_comment_v3.2' into 'release/v3.2'
components/bt: Some errors in comment(backport 3.2)

See merge request idf/esp-idf!3713
2018-11-19 14:36:45 +08:00
baohongde
b021bbdc80 components/bt: Some errors in comment 2018-11-16 15:27:28 +08:00
baohongde
c9fe4fa13e components/bt: Put function in isr into iram(backport 3.2) 2018-11-16 07:19:51 +00:00
Jiang Jiang Jian
fe0a5b41bf Merge branch 'bugfix/fix_memory_leak_for_v3.2' into 'release/v3.2'
Component/bt: fix memory leak in service change(backport v3.2)

See merge request idf/esp-idf!3685
2018-11-14 15:35:03 +08:00
zhiweijian
1f7c54ae85 Component/bt: fix memory leak in service change 2018-11-12 19:41:19 +08:00
baohongde
f2309f1013 components/bt: Point ACL RX buffer ptr to ACL RX buffer if ACL RX buffer ptr is null
1. When WIFI task or other high priority task blocks the Bluetooth task, ACL RX buffer will use up, ACL RX buffer ptr will point to null and will never point to a valid adress. Causing errors in Bluetooth.
2. hcimsgs.h used whether flow control is on or off
2018-11-01 17:33:44 +08:00
Jiang Jiang Jian
12b2268ee5 Merge branch 'bugfix/btdm_sniff_anchor_point_calculation_error' into 'master'
bugfix/btdm_sniff_anchor_point_calculation_error

See merge request idf/esp-idf!3582
2018-11-01 15:58:00 +08:00
Jiang Jiang Jian
a60a71ff07 Merge branch 'bugfix/btdm_name_buffer_allocation_size_differs' into 'master'
components/bt: Fix the different size of name buffer allocation size

See merge request idf/esp-idf!3587
2018-11-01 15:56:45 +08:00
Jiang Jiang Jian
cac7b951a8 Merge branch 'bugfix/btdm_fix_get_attr_value_error' into 'master'
Component/bt: fix get attr value API error

See merge request idf/esp-idf!3583
2018-11-01 15:55:22 +08:00
baohongde
373f1c121b component/bt: bugfix of error when entering sniff mode with attempt large than 0xFF 2018-10-31 16:16:49 +00:00
wangmengyang
159d4ac742 component/bt: bugfix for the error in calculation sniff anchor point which can result in supervision timeout after connection is brought into sniff mode 2018-10-31 16:16:49 +00:00
zhiweijian
1716d12547 Component/bt: fix ble cannot send or receive packet sometimes 2018-10-31 16:13:51 +00:00
Jiang Jiang Jian
dba29eeb2e Merge branch 'bugfix/btdm_change_default_CoD_of_BT_profile' into 'master'
components/bt: Set default Class of Device of BT profile

See merge request idf/esp-idf!3564
2018-10-31 20:51:15 +08:00
baohongde
e19a352a2b components/bt: Fix the different size of name buffer allocation size
Close https://github.com/espressif/esp-idf/issues/2615
2018-10-31 17:39:31 +08:00
Jiang Jiang Jian
39c03558e8 Merge branch 'bugfix/btdm_add_attr_handle_for_ESP_GATTS_CONF_EVT' into 'master'
Component/bt: add attr_handle for ESP_GATTS_CONF_EVT

See merge request idf/esp-idf!3492
2018-10-31 17:20:47 +08:00
zhiweijian
950fe25120 Component/bt: fix get attr value API error 2018-10-30 15:00:23 +08:00
baohongde
df5839420d components/bt: Reduce IRAM size
libbtdm: 2608B
idf: 924B
2018-10-29 16:54:32 +08:00
baohongde
67e62aa105 components/bt: Set default Class of Device of BT profile
The CoD of each profile both are 0x2c0414, now they are as follow:
A2DP sink:   0x240414
A2DP source: 0x280400
HFP:         0x200408
SPP:         0x001F00
2018-10-26 17:03:39 +08:00
Jiang Jiang Jian
93dbf2f3ba Merge branch 'bugfix/btdm_read_multiple_return_callback_status_ESP_GATT_STACK_RSP' into 'master'
Component/bt: fix read multiple return callback status: ESP_GATT_STACK_RSP

See merge request idf/esp-idf!3437
2018-10-26 11:41:18 +08:00
Jiang Jiang Jian
0bc364f7ea Merge branch 'bugfix/btdm_add_sniff_mode_to_spp' into 'master'
components/bt: Add sniff mode to SPP

See merge request idf/esp-idf!3472
2018-10-26 11:38:50 +08:00
Jiang Jiang Jian
762c04bd61 Merge branch 'bugfix/btdm_disconnect_ble_when_ESP_BLE_SM_ONLY_ACCEPT_SPECIFIED_SEC_AUTH_failed' into 'master'
Component/bt: add ble disconnect when ACCEPT_SPECIFIED_SEC_AUTH failed

See merge request idf/esp-idf!3465
2018-10-26 11:34:26 +08:00
zhiweijian
6b96a3c23b Component/bt: add ble disconnect when ACCEPT_SPECIFIED_SEC_AUTH failed 2018-10-25 06:03:16 +00:00
zwj
501ebabc4e component/bt: fix remove bond list failed 2018-10-24 23:23:50 +00:00
Renz Bagaporo
cc774111bf cmake: Add support for test build 2018-10-20 12:07:24 +08:00
zhiweijian
44827bb681 Component/bt: add attr_handle for ESP_GATTS_CONF_EVT 2018-10-19 08:19:36 +00:00
Tian Hao
6934a739d7 coexist : fix coexist bugs related to coex hw blocking
1. fix some bugs by previous coex hw blocking bugfix,
   such like, rwble.c (64, 0) line 222
2. fix bug that ble scan performance is very low when software coexist
   is working.
3. update libcoexist version to v1.1.0
2018-10-18 11:49:10 +08:00
zhiweijian
30ea8c7048 Component/bt: read multiple return callback status: ESP_GATT_STACK_RSP 2018-10-17 12:34:34 +00:00