|
|
@@ -325,14 +325,18 @@ void IRAM_ATTR esp_wifi_bt_power_domain_on(void)
|
|
|
_lock_acquire(&s_wifi_bt_pd_controller.lock);
|
|
|
if (s_wifi_bt_pd_controller.count++ == 0) {
|
|
|
CLEAR_PERI_REG_MASK(RTC_CNTL_DIG_PWC_REG, RTC_CNTL_WIFI_FORCE_PD);
|
|
|
-
|
|
|
-#if !CONFIG_IDF_TARGET_ESP32
|
|
|
+ esp_rom_delay_us(10);
|
|
|
+ wifi_bt_common_module_enable();
|
|
|
+#if CONFIG_IDF_TARGET_ESP32
|
|
|
+ DPORT_SET_PERI_REG_MASK(DPORT_CORE_RST_EN_REG, MODEM_RESET_FIELD_WHEN_PU);
|
|
|
+ DPORT_CLEAR_PERI_REG_MASK(DPORT_CORE_RST_EN_REG, MODEM_RESET_FIELD_WHEN_PU);
|
|
|
+#else
|
|
|
// modem reset when power on
|
|
|
SET_PERI_REG_MASK(SYSCON_WIFI_RST_EN_REG, MODEM_RESET_FIELD_WHEN_PU);
|
|
|
CLEAR_PERI_REG_MASK(SYSCON_WIFI_RST_EN_REG, MODEM_RESET_FIELD_WHEN_PU);
|
|
|
#endif
|
|
|
-
|
|
|
CLEAR_PERI_REG_MASK(RTC_CNTL_DIG_ISO_REG, RTC_CNTL_WIFI_FORCE_ISO);
|
|
|
+ wifi_bt_common_module_disable();
|
|
|
}
|
|
|
_lock_release(&s_wifi_bt_pd_controller.lock);
|
|
|
#endif // !SOC_PMU_SUPPORTED
|