From 9574435cc5eced94c44d5f1b424fc8f0c9c790e9 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 74fb3946ffe3..b38b95bd7b26 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 8e93c2241566..bb7a47b53a19 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