From 687de9f187cd632055b53d871e57aa307ab302e5 Mon Sep 17 00:00:00 2001 From: Tomasz Leman Date: Fri, 22 Dec 2023 13:48:02 +0100 Subject: [PATCH] config: ace: enable dynamic clock switching Enable the dynamic clock switching feature for Intel ADSP platforms. This feature allows the DSP to adjust its clock frequency dynamically when all cores enter the idle state, reducing energy consumption while waiting for interrupts. The following Kconfig options are added to MTL and LNL configuration: - CONFIG_PM_STATE_CUSTOM_DATA: Allows setting custom data pointers for specific power states. - CONFIG_ADSP_DYNAMIC_CLOCK_SWITCHING: Enables dynamic clock switching during idle states, dependent on the availability of custom power state data. This change is part of ongoing efforts to enhance power management capabilities and improve the energy efficiency of these platforms. Signed-off-by: Tomasz Leman --- app/boards/intel_adsp_ace15_mtpm.conf | 2 ++ app/boards/intel_adsp_ace20_lnl.conf | 2 ++ 2 files changed, 4 insertions(+) diff --git a/app/boards/intel_adsp_ace15_mtpm.conf b/app/boards/intel_adsp_ace15_mtpm.conf index 523d44d84d00..e21d6940c8e3 100644 --- a/app/boards/intel_adsp_ace15_mtpm.conf +++ b/app/boards/intel_adsp_ace15_mtpm.conf @@ -15,6 +15,8 @@ CONFIG_PM_DEVICE_RUNTIME=y CONFIG_PM_DEVICE_RUNTIME_EXCLUSIVE=n CONFIG_PM_DEVICE_POWER_DOMAIN=y CONFIG_PM_POLICY_CUSTOM=y +CONFIG_PM_STATE_CUSTOM_DATA=y +CONFIG_ADSP_DYNAMIC_CLOCK_SWITCHING=y CONFIG_POWER_DOMAIN=y CONFIG_POWER_DOMAIN_INTEL_ADSP=y diff --git a/app/boards/intel_adsp_ace20_lnl.conf b/app/boards/intel_adsp_ace20_lnl.conf index 36782e15dcd8..62c237629289 100644 --- a/app/boards/intel_adsp_ace20_lnl.conf +++ b/app/boards/intel_adsp_ace20_lnl.conf @@ -12,6 +12,8 @@ CONFIG_PM_DEVICE_RUNTIME=y CONFIG_PM_DEVICE_RUNTIME_EXCLUSIVE=n CONFIG_PM_DEVICE_POWER_DOMAIN=y CONFIG_PM_POLICY_CUSTOM=y +CONFIG_PM_STATE_CUSTOM_DATA=y +CONFIG_ADSP_DYNAMIC_CLOCK_SWITCHING=y CONFIG_ADSP_IMR_CONTEXT_SAVE=y CONFIG_ADSP_IDLE_CLOCK_GATING=y