Message ID | 20250222161824.172511-12-lkml@antheas.dev (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | hwmon: (oxpsensors) Add devices, features, fix ABI and move to platform/x86 | expand |
Hi Antheas, kernel test robot noticed the following build errors: [auto build test ERROR on groeck-staging/hwmon-next] [also build test ERROR on sre-power-supply/for-next amd-pstate/linux-next amd-pstate/bleeding-edge rafael-pm/linux-next rafael-pm/bleeding-edge linus/master v6.14-rc4 next-20250228] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Antheas-Kapenekakis/hwmon-oxp-sensors-Distinguish-the-X1-variants/20250223-003148 base: https://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git hwmon-next patch link: https://lore.kernel.org/r/20250222161824.172511-12-lkml%40antheas.dev patch subject: [PATCH v2 11/12] platform/x86: oxpec: Move hwmon/oxp-sensors to platform/x86 config: x86_64-randconfig-078-20250301 (https://download.01.org/0day-ci/archive/20250301/202503012254.EtBZW7gW-lkp@intel.com/config) compiler: clang version 19.1.7 (https://github.com/llvm/llvm-project cd708029e0b2869e80abe31ddb175f7c35361f90) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250301/202503012254.EtBZW7gW-lkp@intel.com/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <lkp@intel.com> | Closes: https://lore.kernel.org/oe-kbuild-all/202503012254.EtBZW7gW-lkp@intel.com/ All errors (new ones prefixed by >>): >> ld.lld: error: undefined symbol: devm_hwmon_device_register_with_info >>> referenced by oxpec.c:1051 (drivers/platform/x86/oxpec.c:1051) >>> vmlinux.o:(oxp_platform_probe)
On Sat, 1 Mar 2025 at 15:32, kernel test robot <lkp@intel.com> wrote: > > Hi Antheas, > > kernel test robot noticed the following build errors: > > [auto build test ERROR on groeck-staging/hwmon-next] > [also build test ERROR on sre-power-supply/for-next amd-pstate/linux-next amd-pstate/bleeding-edge rafael-pm/linux-next rafael-pm/bleeding-edge linus/master v6.14-rc4 next-20250228] > [If your patch is applied to the wrong git tree, kindly drop us a note. > And when submitting patch, we suggest to use '--base' as documented in > https://git-scm.com/docs/git-format-patch#_base_tree_information] > > url: https://github.com/intel-lab-lkp/linux/commits/Antheas-Kapenekakis/hwmon-oxp-sensors-Distinguish-the-X1-variants/20250223-003148 > base: https://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git hwmon-next > patch link: https://lore.kernel.org/r/20250222161824.172511-12-lkml%40antheas.dev > patch subject: [PATCH v2 11/12] platform/x86: oxpec: Move hwmon/oxp-sensors to platform/x86 > config: x86_64-randconfig-078-20250301 (https://download.01.org/0day-ci/archive/20250301/202503012254.EtBZW7gW-lkp@intel.com/config) > compiler: clang version 19.1.7 (https://github.com/llvm/llvm-project cd708029e0b2869e80abe31ddb175f7c35361f90) > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250301/202503012254.EtBZW7gW-lkp@intel.com/reproduce) > > If you fix the issue in a separate patch/commit (i.e. not just a new version of > the same patch/commit), kindly add following tags > | Reported-by: kernel test robot <lkp@intel.com> > | Closes: https://lore.kernel.org/oe-kbuild-all/202503012254.EtBZW7gW-lkp@intel.com/ > > All errors (new ones prefixed by >>): > > >> ld.lld: error: undefined symbol: devm_hwmon_device_register_with_info > >>> referenced by oxpec.c:1051 (drivers/platform/x86/oxpec.c:1051) > >>> vmlinux.o:(oxp_platform_probe) > > -- > 0-DAY CI Kernel Test Service > https://github.com/intel/lkp-tests/wiki Guess it doesn't merge anymore. I have two other nits I fixed so I was planning for a V2. Question for the charge_type ABI. Should we switch to charge_behaviour since that also allows for autodiscovery? Antheas
On 2/22/25 08:18, Antheas Kapenekakis wrote: > Once upon a time, the platform EC of handheld devices only > controlled the fan. This is no longer the case, with the > EC of OneXPlayer gaining additional functionality. > > As it will be beneficial from a complexity perspective > to retain this driver as a single unit, move it out > of hwmon, and into platform/x86. > > While at it, add myself to the maintainer's file. > > Signed-off-by: Antheas Kapenekakis <lkml@antheas.dev> Acked-by: Guenter Roeck <linux@roeck-us.net> This should really have been the first patch of the series. Guenter > --- > Documentation/hwmon/index.rst | 2 +- > Documentation/hwmon/{oxp-sensors.rst => oxpec.rst} | 0 > MAINTAINERS | 7 ++++--- > drivers/hwmon/Kconfig | 11 ----------- > drivers/hwmon/Makefile | 1 - > drivers/platform/x86/Kconfig | 11 +++++++++++ > drivers/platform/x86/Makefile | 3 +++ > drivers/{hwmon/oxp-sensors.c => platform/x86/oxpec.c} | 10 ++++------ > 8 files changed, 23 insertions(+), 22 deletions(-) > rename Documentation/hwmon/{oxp-sensors.rst => oxpec.rst} (100%) > rename drivers/{hwmon/oxp-sensors.c => platform/x86/oxpec.c} (98%) > > diff --git a/Documentation/hwmon/index.rst b/Documentation/hwmon/index.rst > index 874f8fd26325..dd7a54d5f281 100644 > --- a/Documentation/hwmon/index.rst > +++ b/Documentation/hwmon/index.rst > @@ -186,7 +186,7 @@ Hardware Monitoring Kernel Drivers > nzxt-kraken3 > nzxt-smart2 > occ > - oxp-sensors > + oxpec > pc87360 > pc87427 > pcf8591 > diff --git a/Documentation/hwmon/oxp-sensors.rst b/Documentation/hwmon/oxpec.rst > similarity index 100% > rename from Documentation/hwmon/oxp-sensors.rst > rename to Documentation/hwmon/oxpec.rst > diff --git a/MAINTAINERS b/MAINTAINERS > index a5e49d57c589..35db92380f99 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -17629,12 +17629,13 @@ S: Maintained > F: drivers/mtd/nand/onenand/ > F: include/linux/mtd/onenand*.h > > -ONEXPLAYER FAN DRIVER > +ONEXPLAYER PLATFORM EC DRIVER > +M: Antheas Kapenekakis <lkml@antheas.dev> > M: Derek John Clark <derekjohn.clark@gmail.com> > M: Joaquín Ignacio Aramendía <samsagax@gmail.com> > -L: linux-hwmon@vger.kernel.org > +L: platform-driver-x86@vger.kernel.org > S: Maintained > -F: drivers/hwmon/oxp-sensors.c > +F: drivers/platform/x86/oxpec.c > > ONIE TLV NVMEM LAYOUT DRIVER > M: Miquel Raynal <miquel.raynal@bootlin.com> > diff --git a/drivers/hwmon/Kconfig b/drivers/hwmon/Kconfig > index 4cbaba15d86e..09f7aed96d15 100644 > --- a/drivers/hwmon/Kconfig > +++ b/drivers/hwmon/Kconfig > @@ -1774,17 +1774,6 @@ config SENSORS_NZXT_SMART2 > > source "drivers/hwmon/occ/Kconfig" > > -config SENSORS_OXP > - tristate "OneXPlayer EC fan control" > - depends on ACPI_EC > - depends on X86 > - help > - If you say yes here you get support for fan readings and control over > - OneXPlayer handheld devices. Only OneXPlayer mini AMD handheld variant > - boards are supported. > - > - Can also be built as a module. In that case it will be called oxp-sensors. > - > config SENSORS_PCF8591 > tristate "Philips PCF8591 ADC/DAC" > depends on I2C > diff --git a/drivers/hwmon/Makefile b/drivers/hwmon/Makefile > index b7ef0f0562d3..0edb08824b17 100644 > --- a/drivers/hwmon/Makefile > +++ b/drivers/hwmon/Makefile > @@ -181,7 +181,6 @@ obj-$(CONFIG_SENSORS_NTC_THERMISTOR) += ntc_thermistor.o > obj-$(CONFIG_SENSORS_NZXT_KRAKEN2) += nzxt-kraken2.o > obj-$(CONFIG_SENSORS_NZXT_KRAKEN3) += nzxt-kraken3.o > obj-$(CONFIG_SENSORS_NZXT_SMART2) += nzxt-smart2.o > -obj-$(CONFIG_SENSORS_OXP) += oxp-sensors.o > obj-$(CONFIG_SENSORS_PC87360) += pc87360.o > obj-$(CONFIG_SENSORS_PC87427) += pc87427.o > obj-$(CONFIG_SENSORS_PCF8591) += pcf8591.o > diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig > index 0258dd879d64..4531b20c6b30 100644 > --- a/drivers/platform/x86/Kconfig > +++ b/drivers/platform/x86/Kconfig > @@ -1186,6 +1186,17 @@ config SEL3350_PLATFORM > To compile this driver as a module, choose M here: the module > will be called sel3350-platform. > > +config OXP_EC > + tristate "OneXPlayer EC platform control" > + depends on ACPI_EC > + depends on X86 > + help > + Enables support for the platform EC of OneXPlayer and AOKZOE > + handheld devices. This includes fan speed, fan controls, and > + disabling the default TDP behavior of the device. Due to legacy > + reasons, this driver also provides hwmon functionality to Ayaneo > + devices and the OrangePi Neo. > + > endif # X86_PLATFORM_DEVICES > > config P2SB > diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile > index e1b142947067..f64a191c1162 100644 > --- a/drivers/platform/x86/Makefile > +++ b/drivers/platform/x86/Makefile > @@ -153,3 +153,6 @@ obj-$(CONFIG_WINMATE_FM07_KEYS) += winmate-fm07-keys.o > > # SEL > obj-$(CONFIG_SEL3350_PLATFORM) += sel3350-platform.o > + > +# OneXPlayer > +obj-$(CONFIG_OXP_EC) += oxpec.o > \ No newline at end of file > diff --git a/drivers/hwmon/oxp-sensors.c b/drivers/platform/x86/oxpec.c > similarity index 98% > rename from drivers/hwmon/oxp-sensors.c > rename to drivers/platform/x86/oxpec.c > index b5ba863a762a..51845aae8a44 100644 > --- a/drivers/hwmon/oxp-sensors.c > +++ b/drivers/platform/x86/oxpec.c > @@ -1,11 +1,8 @@ > // SPDX-License-Identifier: GPL-2.0+ > /* > - * Platform driver for OneXPlayer, AOKZOE, AYANEO, and OrangePi Handhelds > - * that expose fan reading and control via hwmon sysfs. > - * > - * Old OXP boards have the same DMI strings and they are told apart by > - * the boot cpu vendor (Intel/AMD). Of these older models only AMD is > - * supported. > + * Platform driver for OneXPlayer and AOKZOE devices. For the time being, > + * it also exposes fan controls for AYANEO, and OrangePi Handhelds via > + * hwmon sysfs. > * > * Fan control is provided via pwm interface in the range [0-255]. > * Old AMD boards use [0-100] as range in the EC, the written value is > @@ -16,6 +13,7 @@ > * > * Copyright (C) 2022 Joaquín I. Aramendía <samsagax@gmail.com> > * Copyright (C) 2024 Derek J. Clark <derekjohn.clark@gmail.com> > + * Copyright (C) 2025 Antheas Kapenekakis <lkml@antheas.dev> > */ > > #include <linux/acpi.h>
On Mon, 3 Mar 2025 at 15:07, Guenter Roeck <linux@roeck-us.net> wrote: > > On 2/22/25 08:18, Antheas Kapenekakis wrote: > > Once upon a time, the platform EC of handheld devices only > > controlled the fan. This is no longer the case, with the > > EC of OneXPlayer gaining additional functionality. > > > > As it will be beneficial from a complexity perspective > > to retain this driver as a single unit, move it out > > of hwmon, and into platform/x86. > > > > While at it, add myself to the maintainer's file. > > > > Signed-off-by: Antheas Kapenekakis <lkml@antheas.dev> > > Acked-by: Guenter Roeck <linux@roeck-us.net> > > This should really have been the first patch of the series. > > Guenter You are right, I will try to for the V3. Hopefully its not too hairy to rebase the patches. I will still keep the device additions first so they are possible to cherry pick to lts kernels. > > --- > > Documentation/hwmon/index.rst | 2 +- > > Documentation/hwmon/{oxp-sensors.rst => oxpec.rst} | 0 > > MAINTAINERS | 7 ++++--- > > drivers/hwmon/Kconfig | 11 ----------- > > drivers/hwmon/Makefile | 1 - > > drivers/platform/x86/Kconfig | 11 +++++++++++ > > drivers/platform/x86/Makefile | 3 +++ > > drivers/{hwmon/oxp-sensors.c => platform/x86/oxpec.c} | 10 ++++------ > > 8 files changed, 23 insertions(+), 22 deletions(-) > > rename Documentation/hwmon/{oxp-sensors.rst => oxpec.rst} (100%) > > rename drivers/{hwmon/oxp-sensors.c => platform/x86/oxpec.c} (98%) > > > > diff --git a/Documentation/hwmon/index.rst b/Documentation/hwmon/index.rst > > index 874f8fd26325..dd7a54d5f281 100644 > > --- a/Documentation/hwmon/index.rst > > +++ b/Documentation/hwmon/index.rst > > @@ -186,7 +186,7 @@ Hardware Monitoring Kernel Drivers > > nzxt-kraken3 > > nzxt-smart2 > > occ > > - oxp-sensors > > + oxpec > > pc87360 > > pc87427 > > pcf8591 > > diff --git a/Documentation/hwmon/oxp-sensors.rst b/Documentation/hwmon/oxpec.rst > > similarity index 100% > > rename from Documentation/hwmon/oxp-sensors.rst > > rename to Documentation/hwmon/oxpec.rst > > diff --git a/MAINTAINERS b/MAINTAINERS > > index a5e49d57c589..35db92380f99 100644 > > --- a/MAINTAINERS > > +++ b/MAINTAINERS > > @@ -17629,12 +17629,13 @@ S: Maintained > > F: drivers/mtd/nand/onenand/ > > F: include/linux/mtd/onenand*.h > > > > -ONEXPLAYER FAN DRIVER > > +ONEXPLAYER PLATFORM EC DRIVER > > +M: Antheas Kapenekakis <lkml@antheas.dev> > > M: Derek John Clark <derekjohn.clark@gmail.com> > > M: Joaquín Ignacio Aramendía <samsagax@gmail.com> > > -L: linux-hwmon@vger.kernel.org > > +L: platform-driver-x86@vger.kernel.org > > S: Maintained > > -F: drivers/hwmon/oxp-sensors.c > > +F: drivers/platform/x86/oxpec.c > > > > ONIE TLV NVMEM LAYOUT DRIVER > > M: Miquel Raynal <miquel.raynal@bootlin.com> > > diff --git a/drivers/hwmon/Kconfig b/drivers/hwmon/Kconfig > > index 4cbaba15d86e..09f7aed96d15 100644 > > --- a/drivers/hwmon/Kconfig > > +++ b/drivers/hwmon/Kconfig > > @@ -1774,17 +1774,6 @@ config SENSORS_NZXT_SMART2 > > > > source "drivers/hwmon/occ/Kconfig" > > > > -config SENSORS_OXP > > - tristate "OneXPlayer EC fan control" > > - depends on ACPI_EC > > - depends on X86 > > - help > > - If you say yes here you get support for fan readings and control over > > - OneXPlayer handheld devices. Only OneXPlayer mini AMD handheld variant > > - boards are supported. > > - > > - Can also be built as a module. In that case it will be called oxp-sensors. > > - > > config SENSORS_PCF8591 > > tristate "Philips PCF8591 ADC/DAC" > > depends on I2C > > diff --git a/drivers/hwmon/Makefile b/drivers/hwmon/Makefile > > index b7ef0f0562d3..0edb08824b17 100644 > > --- a/drivers/hwmon/Makefile > > +++ b/drivers/hwmon/Makefile > > @@ -181,7 +181,6 @@ obj-$(CONFIG_SENSORS_NTC_THERMISTOR) += ntc_thermistor.o > > obj-$(CONFIG_SENSORS_NZXT_KRAKEN2) += nzxt-kraken2.o > > obj-$(CONFIG_SENSORS_NZXT_KRAKEN3) += nzxt-kraken3.o > > obj-$(CONFIG_SENSORS_NZXT_SMART2) += nzxt-smart2.o > > -obj-$(CONFIG_SENSORS_OXP) += oxp-sensors.o > > obj-$(CONFIG_SENSORS_PC87360) += pc87360.o > > obj-$(CONFIG_SENSORS_PC87427) += pc87427.o > > obj-$(CONFIG_SENSORS_PCF8591) += pcf8591.o > > diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig > > index 0258dd879d64..4531b20c6b30 100644 > > --- a/drivers/platform/x86/Kconfig > > +++ b/drivers/platform/x86/Kconfig > > @@ -1186,6 +1186,17 @@ config SEL3350_PLATFORM > > To compile this driver as a module, choose M here: the module > > will be called sel3350-platform. > > > > +config OXP_EC > > + tristate "OneXPlayer EC platform control" > > + depends on ACPI_EC > > + depends on X86 > > + help > > + Enables support for the platform EC of OneXPlayer and AOKZOE > > + handheld devices. This includes fan speed, fan controls, and > > + disabling the default TDP behavior of the device. Due to legacy > > + reasons, this driver also provides hwmon functionality to Ayaneo > > + devices and the OrangePi Neo. > > + > > endif # X86_PLATFORM_DEVICES > > > > config P2SB > > diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile > > index e1b142947067..f64a191c1162 100644 > > --- a/drivers/platform/x86/Makefile > > +++ b/drivers/platform/x86/Makefile > > @@ -153,3 +153,6 @@ obj-$(CONFIG_WINMATE_FM07_KEYS) += winmate-fm07-keys.o > > > > # SEL > > obj-$(CONFIG_SEL3350_PLATFORM) += sel3350-platform.o > > + > > +# OneXPlayer > > +obj-$(CONFIG_OXP_EC) += oxpec.o > > \ No newline at end of file > > diff --git a/drivers/hwmon/oxp-sensors.c b/drivers/platform/x86/oxpec.c > > similarity index 98% > > rename from drivers/hwmon/oxp-sensors.c > > rename to drivers/platform/x86/oxpec.c > > index b5ba863a762a..51845aae8a44 100644 > > --- a/drivers/hwmon/oxp-sensors.c > > +++ b/drivers/platform/x86/oxpec.c > > @@ -1,11 +1,8 @@ > > // SPDX-License-Identifier: GPL-2.0+ > > /* > > - * Platform driver for OneXPlayer, AOKZOE, AYANEO, and OrangePi Handhelds > > - * that expose fan reading and control via hwmon sysfs. > > - * > > - * Old OXP boards have the same DMI strings and they are told apart by > > - * the boot cpu vendor (Intel/AMD). Of these older models only AMD is > > - * supported. > > + * Platform driver for OneXPlayer and AOKZOE devices. For the time being, > > + * it also exposes fan controls for AYANEO, and OrangePi Handhelds via > > + * hwmon sysfs. > > * > > * Fan control is provided via pwm interface in the range [0-255]. > > * Old AMD boards use [0-100] as range in the EC, the written value is > > @@ -16,6 +13,7 @@ > > * > > * Copyright (C) 2022 Joaquín I. Aramendía <samsagax@gmail.com> > > * Copyright (C) 2024 Derek J. Clark <derekjohn.clark@gmail.com> > > + * Copyright (C) 2025 Antheas Kapenekakis <lkml@antheas.dev> > > */ > > > > #include <linux/acpi.h> >
diff --git a/Documentation/hwmon/index.rst b/Documentation/hwmon/index.rst index 874f8fd26325..dd7a54d5f281 100644 --- a/Documentation/hwmon/index.rst +++ b/Documentation/hwmon/index.rst @@ -186,7 +186,7 @@ Hardware Monitoring Kernel Drivers nzxt-kraken3 nzxt-smart2 occ - oxp-sensors + oxpec pc87360 pc87427 pcf8591 diff --git a/Documentation/hwmon/oxp-sensors.rst b/Documentation/hwmon/oxpec.rst similarity index 100% rename from Documentation/hwmon/oxp-sensors.rst rename to Documentation/hwmon/oxpec.rst diff --git a/MAINTAINERS b/MAINTAINERS index a5e49d57c589..35db92380f99 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -17629,12 +17629,13 @@ S: Maintained F: drivers/mtd/nand/onenand/ F: include/linux/mtd/onenand*.h -ONEXPLAYER FAN DRIVER +ONEXPLAYER PLATFORM EC DRIVER +M: Antheas Kapenekakis <lkml@antheas.dev> M: Derek John Clark <derekjohn.clark@gmail.com> M: Joaquín Ignacio Aramendía <samsagax@gmail.com> -L: linux-hwmon@vger.kernel.org +L: platform-driver-x86@vger.kernel.org S: Maintained -F: drivers/hwmon/oxp-sensors.c +F: drivers/platform/x86/oxpec.c ONIE TLV NVMEM LAYOUT DRIVER M: Miquel Raynal <miquel.raynal@bootlin.com> diff --git a/drivers/hwmon/Kconfig b/drivers/hwmon/Kconfig index 4cbaba15d86e..09f7aed96d15 100644 --- a/drivers/hwmon/Kconfig +++ b/drivers/hwmon/Kconfig @@ -1774,17 +1774,6 @@ config SENSORS_NZXT_SMART2 source "drivers/hwmon/occ/Kconfig" -config SENSORS_OXP - tristate "OneXPlayer EC fan control" - depends on ACPI_EC - depends on X86 - help - If you say yes here you get support for fan readings and control over - OneXPlayer handheld devices. Only OneXPlayer mini AMD handheld variant - boards are supported. - - Can also be built as a module. In that case it will be called oxp-sensors. - config SENSORS_PCF8591 tristate "Philips PCF8591 ADC/DAC" depends on I2C diff --git a/drivers/hwmon/Makefile b/drivers/hwmon/Makefile index b7ef0f0562d3..0edb08824b17 100644 --- a/drivers/hwmon/Makefile +++ b/drivers/hwmon/Makefile @@ -181,7 +181,6 @@ obj-$(CONFIG_SENSORS_NTC_THERMISTOR) += ntc_thermistor.o obj-$(CONFIG_SENSORS_NZXT_KRAKEN2) += nzxt-kraken2.o obj-$(CONFIG_SENSORS_NZXT_KRAKEN3) += nzxt-kraken3.o obj-$(CONFIG_SENSORS_NZXT_SMART2) += nzxt-smart2.o -obj-$(CONFIG_SENSORS_OXP) += oxp-sensors.o obj-$(CONFIG_SENSORS_PC87360) += pc87360.o obj-$(CONFIG_SENSORS_PC87427) += pc87427.o obj-$(CONFIG_SENSORS_PCF8591) += pcf8591.o diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig index 0258dd879d64..4531b20c6b30 100644 --- a/drivers/platform/x86/Kconfig +++ b/drivers/platform/x86/Kconfig @@ -1186,6 +1186,17 @@ config SEL3350_PLATFORM To compile this driver as a module, choose M here: the module will be called sel3350-platform. +config OXP_EC + tristate "OneXPlayer EC platform control" + depends on ACPI_EC + depends on X86 + help + Enables support for the platform EC of OneXPlayer and AOKZOE + handheld devices. This includes fan speed, fan controls, and + disabling the default TDP behavior of the device. Due to legacy + reasons, this driver also provides hwmon functionality to Ayaneo + devices and the OrangePi Neo. + endif # X86_PLATFORM_DEVICES config P2SB diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile index e1b142947067..f64a191c1162 100644 --- a/drivers/platform/x86/Makefile +++ b/drivers/platform/x86/Makefile @@ -153,3 +153,6 @@ obj-$(CONFIG_WINMATE_FM07_KEYS) += winmate-fm07-keys.o # SEL obj-$(CONFIG_SEL3350_PLATFORM) += sel3350-platform.o + +# OneXPlayer +obj-$(CONFIG_OXP_EC) += oxpec.o \ No newline at end of file diff --git a/drivers/hwmon/oxp-sensors.c b/drivers/platform/x86/oxpec.c similarity index 98% rename from drivers/hwmon/oxp-sensors.c rename to drivers/platform/x86/oxpec.c index b5ba863a762a..51845aae8a44 100644 --- a/drivers/hwmon/oxp-sensors.c +++ b/drivers/platform/x86/oxpec.c @@ -1,11 +1,8 @@ // SPDX-License-Identifier: GPL-2.0+ /* - * Platform driver for OneXPlayer, AOKZOE, AYANEO, and OrangePi Handhelds - * that expose fan reading and control via hwmon sysfs. - * - * Old OXP boards have the same DMI strings and they are told apart by - * the boot cpu vendor (Intel/AMD). Of these older models only AMD is - * supported. + * Platform driver for OneXPlayer and AOKZOE devices. For the time being, + * it also exposes fan controls for AYANEO, and OrangePi Handhelds via + * hwmon sysfs. * * Fan control is provided via pwm interface in the range [0-255]. * Old AMD boards use [0-100] as range in the EC, the written value is @@ -16,6 +13,7 @@ * * Copyright (C) 2022 Joaquín I. Aramendía <samsagax@gmail.com> * Copyright (C) 2024 Derek J. Clark <derekjohn.clark@gmail.com> + * Copyright (C) 2025 Antheas Kapenekakis <lkml@antheas.dev> */ #include <linux/acpi.h>
Once upon a time, the platform EC of handheld devices only controlled the fan. This is no longer the case, with the EC of OneXPlayer gaining additional functionality. As it will be beneficial from a complexity perspective to retain this driver as a single unit, move it out of hwmon, and into platform/x86. While at it, add myself to the maintainer's file. Signed-off-by: Antheas Kapenekakis <lkml@antheas.dev> --- Documentation/hwmon/index.rst | 2 +- Documentation/hwmon/{oxp-sensors.rst => oxpec.rst} | 0 MAINTAINERS | 7 ++++--- drivers/hwmon/Kconfig | 11 ----------- drivers/hwmon/Makefile | 1 - drivers/platform/x86/Kconfig | 11 +++++++++++ drivers/platform/x86/Makefile | 3 +++ drivers/{hwmon/oxp-sensors.c => platform/x86/oxpec.c} | 10 ++++------ 8 files changed, 23 insertions(+), 22 deletions(-) rename Documentation/hwmon/{oxp-sensors.rst => oxpec.rst} (100%) rename drivers/{hwmon/oxp-sensors.c => platform/x86/oxpec.c} (98%)