mirror of
https://github.com/espressif/esp-idf.git
synced 2025-07-31 03:07:21 +02:00
fix(bt): Fix controller disable cause iwdt timeout on esp32
This commit is contained in:
@ -1047,9 +1047,8 @@ static bool async_wakeup_request(int event)
|
|||||||
|
|
||||||
switch (event) {
|
switch (event) {
|
||||||
case BTDM_ASYNC_WAKEUP_REQ_HCI:
|
case BTDM_ASYNC_WAKEUP_REQ_HCI:
|
||||||
btdm_in_wakeup_requesting_set(true);
|
|
||||||
// NO break
|
|
||||||
case BTDM_ASYNC_WAKEUP_REQ_CTRL_DISA:
|
case BTDM_ASYNC_WAKEUP_REQ_CTRL_DISA:
|
||||||
|
btdm_in_wakeup_requesting_set(true);
|
||||||
if (!btdm_power_state_active()) {
|
if (!btdm_power_state_active()) {
|
||||||
do_wakeup_request = true;
|
do_wakeup_request = true;
|
||||||
|
|
||||||
@ -1082,10 +1081,10 @@ static void async_wakeup_request_end(int event)
|
|||||||
bool request_lock = false;
|
bool request_lock = false;
|
||||||
switch (event) {
|
switch (event) {
|
||||||
case BTDM_ASYNC_WAKEUP_REQ_HCI:
|
case BTDM_ASYNC_WAKEUP_REQ_HCI:
|
||||||
|
case BTDM_ASYNC_WAKEUP_REQ_CTRL_DISA:
|
||||||
request_lock = true;
|
request_lock = true;
|
||||||
break;
|
break;
|
||||||
case BTDM_ASYNC_WAKEUP_REQ_COEX:
|
case BTDM_ASYNC_WAKEUP_REQ_COEX:
|
||||||
case BTDM_ASYNC_WAKEUP_REQ_CTRL_DISA:
|
|
||||||
request_lock = false;
|
request_lock = false;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
@ -1887,6 +1886,7 @@ esp_err_t esp_bt_controller_disable(void)
|
|||||||
while (!btdm_power_state_active()) {
|
while (!btdm_power_state_active()) {
|
||||||
esp_rom_delay_us(1000);
|
esp_rom_delay_us(1000);
|
||||||
}
|
}
|
||||||
|
async_wakeup_request_end(BTDM_ASYNC_WAKEUP_REQ_CTRL_DISA);
|
||||||
}
|
}
|
||||||
|
|
||||||
btdm_controller_disable();
|
btdm_controller_disable();
|
||||||
|
Reference in New Issue
Block a user