Message ID | 81b6292e50af54fb7eeabfefde6f4a3d283b0b96.1629091915.git.gayatri.kammela@intel.com (mailing list archive) |
---|---|
State | Changes Requested, archived |
Headers | show |
Series | Add Alder Lake PCH-S support to PMC core driver | expand |
On Mon, Aug 16, 2021 at 8:02 PM Gayatri Kammela <gayatri.kammela@intel.com> wrote: > > As part of collecting Intel x86 specific drivers in their own > folder, move intel_pmc_core* files to its own subfolder there. > .../pmc/core_platform.c} | 0 platform.c is enough.
> -----Original Message----- > From: Andy Shevchenko <andy.shevchenko@gmail.com> > Sent: Monday, August 16, 2021 12:32 PM > To: Kammela, Gayatri <gayatri.kammela@intel.com> > Cc: Platform Driver <platform-driver-x86@vger.kernel.org>; Mark Gross > <mgross@linux.intel.com>; Hans de Goede <hdegoede@redhat.com>; > Rajneesh Bhardwaj <irenic.rajneesh@gmail.com>; Andy Shevchenko > <andriy.shevchenko@linux.intel.com>; You-Sheng Yang > <vicamo.yang@canonical.com>; Pandruvada, Srinivas > <srinivas.pandruvada@intel.com>; Box, David E <david.e.box@intel.com>; > Qin, Chao <chao.qin@intel.com>; Linux Kernel Mailing List <linux- > kernel@vger.kernel.org>; Mashiah, Tamar <tamar.mashiah@intel.com>; > Greg Kroah-Hartman <gregkh@linuxfoundation.org>; Rajat Jain > <rajatja@google.com>; Shyam Sundar S K <Shyam-sundar.S-k@amd.com>; > Alex Deucher <Alexander.Deucher@amd.com>; mlimonci@amd.com > Subject: Re: [PATCH v7 1/5] platform/x86/intel: intel_pmc_core: Move > intel_pmc_core* files to pmc subfolder > > On Mon, Aug 16, 2021 at 8:02 PM Gayatri Kammela > <gayatri.kammela@intel.com> wrote: > > > > As part of collecting Intel x86 specific drivers in their own folder, > > move intel_pmc_core* files to its own subfolder there. > > > .../pmc/core_platform.c} | 0 > > platform.c is enough. Sure, thanks Andy! > > -- > With Best Regards, > Andy Shevchenko
Hi, On 8/16/21 6:58 PM, Gayatri Kammela wrote: > As part of collecting Intel x86 specific drivers in their own > folder, move intel_pmc_core* files to its own subfolder there. > > Cc: Chao Qin <chao.qin@intel.com> > Cc: Srinivas Pandruvada <srinivas.pandruvada@intel.com> > Cc: David Box <david.e.box@intel.com> > Cc: You-Sheng Yang <vicamo.yang@canonical.com> > Cc: Hans de Goede <hdegoede@redhat.com> > Suggested-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> > Acked-by: Rajneesh Bhardwaj <irenic.rajneesh@gmail.com> > Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> > Signed-off-by: Gayatri Kammela <gayatri.kammela@intel.com> > --- > MAINTAINERS | 2 +- > drivers/platform/x86/Kconfig | 21 ------------------ > drivers/platform/x86/Makefile | 1 - > drivers/platform/x86/intel/Kconfig | 1 + > drivers/platform/x86/intel/Makefile | 1 + > drivers/platform/x86/intel/pmc/Kconfig | 22 +++++++++++++++++++ > drivers/platform/x86/intel/pmc/Makefile | 6 +++++ > .../{intel_pmc_core.c => intel/pmc/core.c} | 2 +- > .../{intel_pmc_core.h => intel/pmc/core.h} | 0 > .../pmc/core_platform.c} | 0 > 10 files changed, 32 insertions(+), 24 deletions(-) > create mode 100644 drivers/platform/x86/intel/pmc/Kconfig > create mode 100644 drivers/platform/x86/intel/pmc/Makefile > rename drivers/platform/x86/{intel_pmc_core.c => intel/pmc/core.c} (99%) > rename drivers/platform/x86/{intel_pmc_core.h => intel/pmc/core.h} (100%) > rename drivers/platform/x86/{intel_pmc_core_pltdrv.c => intel/pmc/core_platform.c} (100%) > > diff --git a/MAINTAINERS b/MAINTAINERS > index fd25e4ecf0b9..5e118faf8018 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -9477,7 +9477,7 @@ M: David E Box <david.e.box@intel.com> > L: platform-driver-x86@vger.kernel.org > S: Maintained > F: Documentation/ABI/testing/sysfs-platform-intel-pmc > -F: drivers/platform/x86/intel_pmc_core* > +F: drivers/platform/x86/intel/pmc/core* > > INTEL PMIC GPIO DRIVERS > M: Andy Shevchenko <andy@kernel.org> > diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig > index d12db6c316ea..c4ee38eba44b 100644 > --- a/drivers/platform/x86/Kconfig > +++ b/drivers/platform/x86/Kconfig > @@ -1187,27 +1187,6 @@ config INTEL_MRFLD_PWRBTN > To compile this driver as a module, choose M here: the module > will be called intel_mrfld_pwrbtn. > > -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 > help > diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile > index 7ee369aab10d..43d36f8c36f1 100644 > --- a/drivers/platform/x86/Makefile > +++ b/drivers/platform/x86/Makefile > @@ -128,7 +128,6 @@ obj-$(CONFIG_INTEL_UNCORE_FREQ_CONTROL) += intel-uncore-frequency.o > obj-$(CONFIG_INTEL_BXTWC_PMIC_TMU) += intel_bxtwc_tmu.o > obj-$(CONFIG_INTEL_CHTDC_TI_PWRBTN) += intel_chtdc_ti_pwrbtn.o > obj-$(CONFIG_INTEL_MRFLD_PWRBTN) += intel_mrfld_pwrbtn.o > -obj-$(CONFIG_INTEL_PMC_CORE) += intel_pmc_core.o intel_pmc_core_pltdrv.o This Makefile line will build 2 separate .ko files: intel_pmc_core.ko and intel_pmc_core_pltdrv.ko when CONFIG_INTEL_PMC_CORE=m > 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 <snip> > diff --git a/drivers/platform/x86/intel/pmc/Makefile b/drivers/platform/x86/intel/pmc/Makefile > new file mode 100644 > index 000000000000..c92e66846a4a > --- /dev/null > +++ b/drivers/platform/x86/intel/pmc/Makefile > @@ -0,0 +1,6 @@ > +# SPDX-License-Identifier: GPL-2.0 > +# > + > +obj-$(CONFIG_INTEL_PMC_CORE) += intel_pmc_core.o > +intel_pmc_core-objs := core.o \ > + core_platform.o Whereas this will now build a single intel_pmc_core.ko containing both object files, but the 2 .c files have: module_platform_driver(pmc_core_driver); (which is a macro expanding to a module_init + module_exit function) resp. module_init(pmc_core_platform_init); module_exit(pmc_core_platform_exit); So now we have 2 module_init (and _exit) functions in a single .ko file and the build will fail, not good. Also instead of "intel_pmc_core-objs :=" you should use "intel_pmc_core-y :=" And this series is based on 5.14-rc6, causing it to not apply because the pmt driver has already been moved to drivers/platform/x86 and this patch is using a base which is missing that move. pdx86 patches should be based on: https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git/log/?h=review-hans Please make sure the next version is based on my review-hans branch, there are some other intel driver renames in flight (and e.g. the pmt one has already landed) and I would like to be able to apply this without needing to manually resolve conflicts. Regards, Hans > diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel/pmc/core.c > similarity index 99% > rename from drivers/platform/x86/intel_pmc_core.c > rename to drivers/platform/x86/intel/pmc/core.c > index b0e486a6bdfb..f9de78b08e5d 100644 > --- a/drivers/platform/x86/intel_pmc_core.c > +++ b/drivers/platform/x86/intel/pmc/core.c > @@ -31,7 +31,7 @@ > #include <asm/msr.h> > #include <asm/tsc.h> > > -#include "intel_pmc_core.h" > +#include "core.h" > > #define ACPI_S0IX_DSM_UUID "57a6512e-3979-4e9d-9708-ff13b2508972" > #define ACPI_GET_LOW_MODE_REGISTERS 1 > diff --git a/drivers/platform/x86/intel_pmc_core.h b/drivers/platform/x86/intel/pmc/core.h > similarity index 100% > rename from drivers/platform/x86/intel_pmc_core.h > rename to drivers/platform/x86/intel/pmc/core.h > diff --git a/drivers/platform/x86/intel_pmc_core_pltdrv.c b/drivers/platform/x86/intel/pmc/core_platform.c > similarity index 100% > rename from drivers/platform/x86/intel_pmc_core_pltdrv.c > rename to drivers/platform/x86/intel/pmc/core_platform.c >
Hi, On 8/17/21 8:47 PM, Hans de Goede wrote: > Hi, > > On 8/16/21 6:58 PM, Gayatri Kammela wrote: >> As part of collecting Intel x86 specific drivers in their own >> folder, move intel_pmc_core* files to its own subfolder there. >> >> Cc: Chao Qin <chao.qin@intel.com> >> Cc: Srinivas Pandruvada <srinivas.pandruvada@intel.com> >> Cc: David Box <david.e.box@intel.com> >> Cc: You-Sheng Yang <vicamo.yang@canonical.com> >> Cc: Hans de Goede <hdegoede@redhat.com> >> Suggested-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> >> Acked-by: Rajneesh Bhardwaj <irenic.rajneesh@gmail.com> >> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> >> Signed-off-by: Gayatri Kammela <gayatri.kammela@intel.com> >> --- >> MAINTAINERS | 2 +- >> drivers/platform/x86/Kconfig | 21 ------------------ >> drivers/platform/x86/Makefile | 1 - >> drivers/platform/x86/intel/Kconfig | 1 + >> drivers/platform/x86/intel/Makefile | 1 + >> drivers/platform/x86/intel/pmc/Kconfig | 22 +++++++++++++++++++ >> drivers/platform/x86/intel/pmc/Makefile | 6 +++++ >> .../{intel_pmc_core.c => intel/pmc/core.c} | 2 +- >> .../{intel_pmc_core.h => intel/pmc/core.h} | 0 >> .../pmc/core_platform.c} | 0 >> 10 files changed, 32 insertions(+), 24 deletions(-) >> create mode 100644 drivers/platform/x86/intel/pmc/Kconfig >> create mode 100644 drivers/platform/x86/intel/pmc/Makefile >> rename drivers/platform/x86/{intel_pmc_core.c => intel/pmc/core.c} (99%) >> rename drivers/platform/x86/{intel_pmc_core.h => intel/pmc/core.h} (100%) >> rename drivers/platform/x86/{intel_pmc_core_pltdrv.c => intel/pmc/core_platform.c} (100%) >> >> diff --git a/MAINTAINERS b/MAINTAINERS >> index fd25e4ecf0b9..5e118faf8018 100644 >> --- a/MAINTAINERS >> +++ b/MAINTAINERS >> @@ -9477,7 +9477,7 @@ M: David E Box <david.e.box@intel.com> >> L: platform-driver-x86@vger.kernel.org >> S: Maintained >> F: Documentation/ABI/testing/sysfs-platform-intel-pmc >> -F: drivers/platform/x86/intel_pmc_core* >> +F: drivers/platform/x86/intel/pmc/core* >> >> INTEL PMIC GPIO DRIVERS >> M: Andy Shevchenko <andy@kernel.org> >> diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig >> index d12db6c316ea..c4ee38eba44b 100644 >> --- a/drivers/platform/x86/Kconfig >> +++ b/drivers/platform/x86/Kconfig >> @@ -1187,27 +1187,6 @@ config INTEL_MRFLD_PWRBTN >> To compile this driver as a module, choose M here: the module >> will be called intel_mrfld_pwrbtn. >> >> -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 >> help >> diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile >> index 7ee369aab10d..43d36f8c36f1 100644 >> --- a/drivers/platform/x86/Makefile >> +++ b/drivers/platform/x86/Makefile >> @@ -128,7 +128,6 @@ obj-$(CONFIG_INTEL_UNCORE_FREQ_CONTROL) += intel-uncore-frequency.o >> obj-$(CONFIG_INTEL_BXTWC_PMIC_TMU) += intel_bxtwc_tmu.o >> obj-$(CONFIG_INTEL_CHTDC_TI_PWRBTN) += intel_chtdc_ti_pwrbtn.o >> obj-$(CONFIG_INTEL_MRFLD_PWRBTN) += intel_mrfld_pwrbtn.o >> -obj-$(CONFIG_INTEL_PMC_CORE) += intel_pmc_core.o intel_pmc_core_pltdrv.o > > This Makefile line will build 2 separate .ko files: intel_pmc_core.ko and > intel_pmc_core_pltdrv.ko when CONFIG_INTEL_PMC_CORE=m > >> 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 > > <snip> > >> diff --git a/drivers/platform/x86/intel/pmc/Makefile b/drivers/platform/x86/intel/pmc/Makefile >> new file mode 100644 >> index 000000000000..c92e66846a4a >> --- /dev/null >> +++ b/drivers/platform/x86/intel/pmc/Makefile >> @@ -0,0 +1,6 @@ >> +# SPDX-License-Identifier: GPL-2.0 >> +# >> + >> +obj-$(CONFIG_INTEL_PMC_CORE) += intel_pmc_core.o >> +intel_pmc_core-objs := core.o \ >> + core_platform.o > > Whereas this will now build a single intel_pmc_core.ko containing both object files, > but the 2 .c files have: > > module_platform_driver(pmc_core_driver); > (which is a macro expanding to a module_init + module_exit function) > > resp. > > module_init(pmc_core_platform_init); > module_exit(pmc_core_platform_exit); > > So now we have 2 module_init (and _exit) functions in a single .ko > file and the build will fail, not good. Kate's big intel driver rename series also had a rename patch for the pmc_core code in there. Since that did not have this issue I've applied that one instead (otherwise I also would have trouble applying the rest of Kate's patch-series). With the rename issue resolved I can apply the rest of the series on top of Kate's rename. I will go and do that right away, so there is no need to send a new version. ### Thank you for your patch-series, I've applied the series to my review-hans branch: https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git/log/?h=review-hans Note it will show up in my review-hans branch once I've pushed my local branch there, which might take a while. Once I've run some tests on this branch the patches there will be added to the platform-drivers-x86/for-next branch and eventually will be included in the pdx86 pull-request to Linus for the next merge-window. Regards, Hans
diff --git a/MAINTAINERS b/MAINTAINERS index fd25e4ecf0b9..5e118faf8018 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -9477,7 +9477,7 @@ M: David E Box <david.e.box@intel.com> L: platform-driver-x86@vger.kernel.org S: Maintained F: Documentation/ABI/testing/sysfs-platform-intel-pmc -F: drivers/platform/x86/intel_pmc_core* +F: drivers/platform/x86/intel/pmc/core* INTEL PMIC GPIO DRIVERS M: Andy Shevchenko <andy@kernel.org> diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig index d12db6c316ea..c4ee38eba44b 100644 --- a/drivers/platform/x86/Kconfig +++ b/drivers/platform/x86/Kconfig @@ -1187,27 +1187,6 @@ config INTEL_MRFLD_PWRBTN To compile this driver as a module, choose M here: the module will be called intel_mrfld_pwrbtn. -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 help diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile index 7ee369aab10d..43d36f8c36f1 100644 --- a/drivers/platform/x86/Makefile +++ b/drivers/platform/x86/Makefile @@ -128,7 +128,6 @@ obj-$(CONFIG_INTEL_UNCORE_FREQ_CONTROL) += intel-uncore-frequency.o obj-$(CONFIG_INTEL_BXTWC_PMIC_TMU) += intel_bxtwc_tmu.o obj-$(CONFIG_INTEL_CHTDC_TI_PWRBTN) += intel_chtdc_ti_pwrbtn.o obj-$(CONFIG_INTEL_MRFLD_PWRBTN) += intel_mrfld_pwrbtn.o -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 f2eef337eb98..8ca021785f67 100644 --- a/drivers/platform/x86/intel/Kconfig +++ b/drivers/platform/x86/intel/Kconfig @@ -18,5 +18,6 @@ if X86_PLATFORM_DRIVERS_INTEL source "drivers/platform/x86/intel/int33fe/Kconfig" source "drivers/platform/x86/intel/int3472/Kconfig" +source "drivers/platform/x86/intel/pmc/Kconfig" endif # X86_PLATFORM_DRIVERS_INTEL diff --git a/drivers/platform/x86/intel/Makefile b/drivers/platform/x86/intel/Makefile index 0653055942d5..49962f4dfdec 100644 --- a/drivers/platform/x86/intel/Makefile +++ b/drivers/platform/x86/intel/Makefile @@ -6,3 +6,4 @@ obj-$(CONFIG_INTEL_CHT_INT33FE) += int33fe/ obj-$(CONFIG_INTEL_SKL_INT3472) += int3472/ +obj-$(CONFIG_INTEL_PMC_CORE) += pmc/ diff --git a/drivers/platform/x86/intel/pmc/Kconfig b/drivers/platform/x86/intel/pmc/Kconfig new file mode 100644 index 000000000000..c16fc9b2611c --- /dev/null +++ b/drivers/platform/x86/intel/pmc/Kconfig @@ -0,0 +1,22 @@ +# SPDX-License-Identifier: GPL-2.0-only + +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 (Sunrise Point PCH only) + - SLPS0 Debug registers (Cannon Lake/Ice Lake PCH) + - Low Power Mode registers (Tiger Lake and beyond) + - PMC quirks as needed to enable SLPS0/S0ix diff --git a/drivers/platform/x86/intel/pmc/Makefile b/drivers/platform/x86/intel/pmc/Makefile new file mode 100644 index 000000000000..c92e66846a4a --- /dev/null +++ b/drivers/platform/x86/intel/pmc/Makefile @@ -0,0 +1,6 @@ +# SPDX-License-Identifier: GPL-2.0 +# + +obj-$(CONFIG_INTEL_PMC_CORE) += intel_pmc_core.o +intel_pmc_core-objs := core.o \ + core_platform.o diff --git a/drivers/platform/x86/intel_pmc_core.c b/drivers/platform/x86/intel/pmc/core.c similarity index 99% rename from drivers/platform/x86/intel_pmc_core.c rename to drivers/platform/x86/intel/pmc/core.c index b0e486a6bdfb..f9de78b08e5d 100644 --- a/drivers/platform/x86/intel_pmc_core.c +++ b/drivers/platform/x86/intel/pmc/core.c @@ -31,7 +31,7 @@ #include <asm/msr.h> #include <asm/tsc.h> -#include "intel_pmc_core.h" +#include "core.h" #define ACPI_S0IX_DSM_UUID "57a6512e-3979-4e9d-9708-ff13b2508972" #define ACPI_GET_LOW_MODE_REGISTERS 1 diff --git a/drivers/platform/x86/intel_pmc_core.h b/drivers/platform/x86/intel/pmc/core.h similarity index 100% rename from drivers/platform/x86/intel_pmc_core.h rename to drivers/platform/x86/intel/pmc/core.h diff --git a/drivers/platform/x86/intel_pmc_core_pltdrv.c b/drivers/platform/x86/intel/pmc/core_platform.c similarity index 100% rename from drivers/platform/x86/intel_pmc_core_pltdrv.c rename to drivers/platform/x86/intel/pmc/core_platform.c