Enable CPUFreq and CPUIdle for RISC-V systems to be configured with Kconfig, and compile the kernel code to support it by default. This will be used to support dynamic CPU frequency switching for the HiFive Unleashed board, along with any future RISC-V boards that support CPU power management. Signed-off-by: Yash Shah <yash.shah@xxxxxxxxxx> --- arch/riscv/Kconfig | 8 ++++++++ arch/riscv/configs/defconfig | 5 +++++ 2 files changed, 13 insertions(+) diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig index a31e1a4..1c8443e 100644 --- a/arch/riscv/Kconfig +++ b/arch/riscv/Kconfig @@ -381,6 +381,14 @@ endchoice endmenu +menu "CPU Power Management" + +source "drivers/cpuidle/Kconfig" + +source "drivers/cpufreq/Kconfig" + +endmenu + menu "Power management options" source "kernel/power/Kconfig" diff --git a/arch/riscv/configs/defconfig b/arch/riscv/configs/defconfig index 4da4886..58f4bce 100644 --- a/arch/riscv/configs/defconfig +++ b/arch/riscv/configs/defconfig @@ -17,6 +17,11 @@ CONFIG_BPF_SYSCALL=y CONFIG_SOC_SIFIVE=y CONFIG_SOC_VIRT=y CONFIG_SMP=y +CONFIG_CPU_IDLE=y +CONFIG_CPU_FREQ=y +CONFIG_CPU_FREQ_STAT=y +CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y +CONFIG_CPUFREQ_DT=y CONFIG_MODULES=y CONFIG_MODULE_UNLOAD=y CONFIG_NET=y -- 2.7.4