mirror of
				https://github.com/espressif/esp-idf.git
				synced 2025-11-04 00:51:42 +01: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) {
 | 
			
		||||
        case BTDM_ASYNC_WAKEUP_REQ_HCI:
 | 
			
		||||
            btdm_in_wakeup_requesting_set(true);
 | 
			
		||||
            // NO break
 | 
			
		||||
        case BTDM_ASYNC_WAKEUP_REQ_CTRL_DISA:
 | 
			
		||||
            btdm_in_wakeup_requesting_set(true);
 | 
			
		||||
            if (!btdm_power_state_active()) {
 | 
			
		||||
                do_wakeup_request = true;
 | 
			
		||||
 | 
			
		||||
@@ -1082,10 +1081,10 @@ static void async_wakeup_request_end(int event)
 | 
			
		||||
    bool request_lock = false;
 | 
			
		||||
    switch (event) {
 | 
			
		||||
        case BTDM_ASYNC_WAKEUP_REQ_HCI:
 | 
			
		||||
        case BTDM_ASYNC_WAKEUP_REQ_CTRL_DISA:
 | 
			
		||||
            request_lock = true;
 | 
			
		||||
            break;
 | 
			
		||||
        case BTDM_ASYNC_WAKEUP_REQ_COEX:
 | 
			
		||||
        case BTDM_ASYNC_WAKEUP_REQ_CTRL_DISA:
 | 
			
		||||
            request_lock = false;
 | 
			
		||||
            break;
 | 
			
		||||
        default:
 | 
			
		||||
@@ -1887,6 +1886,7 @@ esp_err_t esp_bt_controller_disable(void)
 | 
			
		||||
        while (!btdm_power_state_active()) {
 | 
			
		||||
            esp_rom_delay_us(1000);
 | 
			
		||||
        }
 | 
			
		||||
        async_wakeup_request_end(BTDM_ASYNC_WAKEUP_REQ_CTRL_DISA);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    btdm_controller_disable();
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user