Signed-off-by: Kate Hsuan <hpa@xxxxxxxxxx> --- drivers/platform/x86/Kconfig | 20 -------------- drivers/platform/x86/Makefile | 2 -- drivers/platform/x86/intel/Kconfig | 1 + drivers/platform/x86/intel/Makefile | 3 ++- drivers/platform/x86/intel/pmc_core/Kconfig | 26 +++++++++++++++++++ drivers/platform/x86/intel/pmc_core/Makefile | 6 +++++ .../x86/{ => intel/pmc_core}/intel_pmc_core.c | 0 .../x86/{ => intel/pmc_core}/intel_pmc_core.h | 0 .../pmc_core}/intel_pmc_core_pltdrv.c | 0 9 files changed, 35 insertions(+), 23 deletions(-) create mode 100644 drivers/platform/x86/intel/pmc_core/Kconfig create mode 100644 drivers/platform/x86/intel/pmc_core/Makefile rename drivers/platform/x86/{ => intel/pmc_core}/intel_pmc_core.c (100%) rename drivers/platform/x86/{ => intel/pmc_core}/intel_pmc_core.h (100%) rename drivers/platform/x86/{ => intel/pmc_core}/intel_pmc_core_pltdrv.c (100%) diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig index ecd8daf6c240..b9a324ba17e3 100644 --- a/drivers/platform/x86/Kconfig +++ b/drivers/platform/x86/Kconfig @@ -1086,26 +1086,6 @@ config INTEL_UNCORE_FREQ_CONTROL will be called intel-uncore-frequency. -config INTEL_PMC_CORE - tristate "Intel PMC Core driver" - depends on PCI - depends on ACPI - help - The Intel Platform Controller Hub for Intel Core SoCs provides access - to Power Management Controller registers via various interfaces. This - driver can utilize debugging capabilities and supported features as - exposed by the Power Management Controller. It also may perform some - tasks in the PMC in order to enable transition into the SLPS0 state. - It should be selected on all Intel platforms supported by the driver. - - Supported features: - - SLP_S0_RESIDENCY counter - - PCH IP Power Gating status - - LTR Ignore / LTR Show - - MPHY/PLL gating status (Sunrisepoint PCH only) - - SLPS0 Debug registers (Cannonlake/Icelake PCH) - - Low Power Mode registers (Tigerlake and beyond) - - PMC quirks as needed to enable SLPS0/S0ix config INTEL_PMT_CLASS tristate diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile index a659fdcfd2d3..30771dd51a84 100644 --- a/drivers/platform/x86/Makefile +++ b/drivers/platform/x86/Makefile @@ -123,8 +123,6 @@ obj-$(CONFIG_INTEL_UNCORE_FREQ_CONTROL) += intel-uncore-frequency.o # Intel PMIC / PMC / P-Unit devices - -obj-$(CONFIG_INTEL_PMC_CORE) += intel_pmc_core.o intel_pmc_core_pltdrv.o obj-$(CONFIG_INTEL_PMT_CLASS) += intel_pmt_class.o obj-$(CONFIG_INTEL_PMT_TELEMETRY) += intel_pmt_telemetry.o obj-$(CONFIG_INTEL_PMT_CRASHLOG) += intel_pmt_crashlog.o diff --git a/drivers/platform/x86/intel/Kconfig b/drivers/platform/x86/intel/Kconfig index afbf34a12811..2565b676b911 100644 --- a/drivers/platform/x86/intel/Kconfig +++ b/drivers/platform/x86/intel/Kconfig @@ -24,5 +24,6 @@ source "drivers/platform/x86/intel/wmi/Kconfig" source "drivers/platform/x86/intel/bxtwc/Kconfig" source "drivers/platform/x86/intel/chtdc_ti/Kconfig" source "drivers/platform/x86/intel/mrfld/Kconfig" +source "drivers/platform/x86/intel/pmc_core/Kconfig" endif # X86_PLATFORM_DRIVERS_INTEL diff --git a/drivers/platform/x86/intel/Makefile b/drivers/platform/x86/intel/Makefile index f5fe2ff0417b..7a9faf15bfb9 100644 --- a/drivers/platform/x86/intel/Makefile +++ b/drivers/platform/x86/intel/Makefile @@ -16,4 +16,5 @@ obj-$(CONFIG_INTEL_WMI_THUNDERBOLT) += wmi/ # Intel PMIC / PMC / P-Unit devices obj-$(CONFIG_INTEL_BXTWC_PMIC_TMU) += bxtwc/ obj-$(CONFIG_INTEL_CHTDC_TI_PWRBTN) += chtdc_ti/ -obj-$(CONFIG_INTEL_MRFLD_PWRBTN) += mrfld/ \ No newline at end of file +obj-$(CONFIG_INTEL_MRFLD_PWRBTN) += mrfld/ +obj-$(CONFIG_INTEL_PMC_CORE) += pmc_core/ diff --git a/drivers/platform/x86/intel/pmc_core/Kconfig b/drivers/platform/x86/intel/pmc_core/Kconfig new file mode 100644 index 000000000000..fcabdaf40bf3 --- /dev/null +++ b/drivers/platform/x86/intel/pmc_core/Kconfig @@ -0,0 +1,26 @@ +# SPDX-License-Identifier: GPL-2.0-only +# +# Intel x86 Platform Specific Drivers +# + + +config INTEL_PMC_CORE + tristate "Intel PMC Core driver" + depends on PCI + depends on ACPI + help + The Intel Platform Controller Hub for Intel Core SoCs provides access + to Power Management Controller registers via various interfaces. This + driver can utilize debugging capabilities and supported features as + exposed by the Power Management Controller. It also may perform some + tasks in the PMC in order to enable transition into the SLPS0 state. + It should be selected on all Intel platforms supported by the driver. + + Supported features: + - SLP_S0_RESIDENCY counter + - PCH IP Power Gating status + - LTR Ignore / LTR Show + - MPHY/PLL gating status (Sunrisepoint PCH only) + - SLPS0 Debug registers (Cannonlake/Icelake PCH) + - Low Power Mode registers (Tigerlake and beyond) + - PMC quirks as needed to enable SLPS0/S0ix diff --git a/drivers/platform/x86/intel/pmc_core/Makefile b/drivers/platform/x86/intel/pmc_core/Makefile new file mode 100644 index 000000000000..805400a593e9 --- /dev/null +++ b/drivers/platform/x86/intel/pmc_core/Makefile @@ -0,0 +1,6 @@ +# SPDX-License-Identifier: GPL-2.0-only +# +# Intel x86 Platform Specific Drivers +# + +obj-$(CONFIG_INTEL_PMC_CORE) += intel_pmc_core.o intel_pmc_core_pltdrv.o diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel/pmc_core/intel_pmc_core.c similarity index 100% rename from drivers/platform/x86/intel_pmc_core.c rename to drivers/platform/x86/intel/pmc_core/intel_pmc_core.c diff --git a/drivers/platform/x86/intel_pmc_core.h b/drivers/platform/x86/intel/pmc_core/intel_pmc_core.h similarity index 100% rename from drivers/platform/x86/intel_pmc_core.h rename to drivers/platform/x86/intel/pmc_core/intel_pmc_core.h diff --git a/drivers/platform/x86/intel_pmc_core_pltdrv.c b/drivers/platform/x86/intel/pmc_core/intel_pmc_core_pltdrv.c similarity index 100% rename from drivers/platform/x86/intel_pmc_core_pltdrv.c rename to drivers/platform/x86/intel/pmc_core/intel_pmc_core_pltdrv.c -- 2.31.1