Re: [PATCH] Allow selecting amd-pstate without CPU_SUP_INTEL

From: Huang Rui
Date: Tue Nov 09 2021 - 09:21:18 EST


O Mon, Nov 08, 2021 at 06:01:51PM +0800, Stefano Picascia wrote:
> On Mon, 2021-11-08 at 17:13 +0800, Huang Rui wrote:
> > On Sat, Nov 06, 2021 at 07:55:29PM +0800, Stefano Picascia wrote:
> > > Currently, even if selected, amd-pstate is not enabled unless
> > > CPU_SUP_INTEL is also selected, due to ACPI_CPPC_LIB depending on
> > > SCHED_MC_PRIO, which in turn depends on CPU_SUP_INTEL
> >
> > Actually, amd-pstate driver doesn't depend on SCHED_MC_PRIO.
>
> amd-pstate doesn't depend on SCHED_MC_PRIO, but ACPI_CPPC_LIB is only
> selected when SCHED_MC_PRIO is selected. I guess the issue can be fixed
> in a better way, but currently if one compiles the kernel with
> CPU_SUP_AMD, but without CPU_SUP_INTEL, ends up with a non functional
> amd-pstate. 
>
> Not a problem for distro kernels I guess, but I was puzzled as I wasn't
> getting amd-pstate even with a supported processor.
>

If I modify the Kconfig of amd-pstate like below:

config X86_AMD_PSTATE
bool "AMD Processor P-State driver"
depends on X86
select ACPI_PROCESSOR if ACPI
select ACPI_CPPC_LIB if X86_64 && ACPI
select CPU_FREQ_GOV_SCHEDUTIL if SMP

Then ACPI_CPPC_LIB can be selected by X86_AMD_PSTATE as well:

Symbol: ACPI_CPPC_LIB [=y]
Type : bool

Defined at drivers/acpi/Kconfig:268
Depends on: ACPI [=y] && ACPI_PROCESSOR [=y]
Selects: MAILBOX [=y] && PCC [=y]
Selected by [y]:
- X86_AMD_PSTATE [=y] && CPU_FREQ [=y] && X86 [=y] && X86_64 [=y] && ACPI [=y]
Selected by [n]:
- X86_INTEL_PSTATE [=n] && CPU_FREQ [=y] && X86 [=y] && X86_64 [=y] && ACPI [=y] && SCHED_MC_PRIO [=n]
- ACPI_CPPC_CPUFREQ [=n] && CPU_FREQ [=y] && (ARM || ARM64) && ACPI_PROCESSOR [=y]

Did I miss anything?

Thanks,
Ray