phy: only set phy_init_flag at power domain off, when all modems deinit

This commit is contained in:
liuning
2022-11-24 20:18:27 +08:00
parent 312da39eb9
commit ce2deab1a4
5 changed files with 34 additions and 27 deletions

View File

@@ -1215,14 +1215,16 @@ esp_err_t esp_bt_controller_init(esp_bt_controller_config_t *cfg)
ESP_LOGI(BTDM_LOG_TAG, "BT controller compile version [%s]", btdm_controller_get_compile_version());
esp_phy_modem_init();
esp_bt_power_domain_on();
s_wakeup_req_sem = semphr_create_wrapper(1, 0);
if (s_wakeup_req_sem == NULL) {
err = ESP_ERR_NO_MEM;
goto error;
}
esp_bt_power_domain_on();
btdm_controller_mem_init();
periph_module_enable(PERIPH_BT_MODULE);
@@ -1335,6 +1337,10 @@ error:
semphr_delete_wrapper(s_wakeup_req_sem);
s_wakeup_req_sem = NULL;
}
esp_bt_power_domain_off();
esp_phy_modem_deinit();
return err;
}
@@ -1380,6 +1386,8 @@ esp_err_t esp_bt_controller_deinit(void)
esp_bt_power_domain_off();
esp_phy_modem_deinit();
return ESP_OK;
}