Commit Graph

181 Commits

Author SHA1 Message Date
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