feat(sleep): add config SOC_PM_SUPPORT_REGDMA_TRIGGERED_PHY

This commit is contained in:
cjin
2026-09-14 19:37:59 +08:00
parent 85fece0652
commit 7d9240e67d
10 changed files with 29 additions and 17 deletions
+8 -2
View File
@@ -333,19 +333,23 @@ void esp_phy_enable(esp_phy_modem_t modem)
#endif
s_is_phy_calibrated = true;
} else {
#if SOC_PM_SUPPORT_REGDMA_TRIGGERED_PHY
#if SOC_PM_SUPPORT_PMU_MODEM_STATE && CONFIG_ESP_WIFI_ENHANCED_LIGHT_SLEEP
if (!pm_mac_modem_rf_already_enabled()) {
#endif /* SOC_PM_SUPPORT_PMU_MODEM_STATE && CONFIG_ESP_WIFI_ENHANCED_LIGHT_SLEEP */
if (sleep_modem_phy_link_enabled() && sleep_modem_phy_link_done()) {
sleep_modem_do_phy_retention(true);
} else {
phy_wakeup_init();
}
#if SOC_PM_SUPPORT_PMU_MODEM_STATE && CONFIG_ESP_WIFI_ENHANCED_LIGHT_SLEEP
} else {
phy_wakeup_from_modem_state_extra_init();
}
#endif /* SOC_PM_SUPPORT_PMU_MODEM_STATE && CONFIG_ESP_WIFI_ENHANCED_LIGHT_SLEEP */
#else
phy_wakeup_init();
#endif /* SOC_PM_SUPPORT_PMU_MODEM_STATE && CONFIG_ESP_WIFI_ENHANCED_LIGHT_SLEEP */
#endif /* SOC_PM_SUPPORT_REGDMA_TRIGGERED_PHY */
#if SOC_PM_MODEM_RETENTION_BY_BACKUPDMA
phy_digital_regs_load();
@@ -400,12 +404,14 @@ void esp_phy_disable(esp_phy_modem_t modem)
#if SOC_PM_MODEM_RETENTION_BY_BACKUPDMA
phy_digital_regs_store();
#endif
#if SOC_PM_SUPPORT_REGDMA_TRIGGERED_PHY
#if SOC_PM_SUPPORT_PMU_MODEM_STATE && CONFIG_ESP_WIFI_ENHANCED_LIGHT_SLEEP
pm_mac_modem_clear_rf_power_state();
#endif /* SOC_PM_SUPPORT_PMU_MODEM_STATE && CONFIG_ESP_WIFI_ENHANCED_LIGHT_SLEEP */
if (sleep_modem_phy_link_enabled()) {
sleep_modem_do_phy_retention(false);
} else
#endif /* SOC_PM_SUPPORT_PMU_MODEM_STATE && CONFIG_ESP_WIFI_ENHANCED_LIGHT_SLEEP */
#endif /* SOC_PM_SUPPORT_REGDMA_TRIGGERED_PHY */
{
// Disable PHY and RF.
phy_close_rf();