diff mbox series

[v3,03/12] platform/x86: oxpec: Move hwmon/oxp-sensors to platform/x86

Message ID 20250309112114.1177361-4-lkml@antheas.dev
State New
Headers show
Series None | expand

Commit Message

Antheas Kapenekakis March 9, 2025, 11:21 a.m. UTC
The EC of OneXPlayer devices used to only control the fan.
This is no longer the case, with the EC of OneXPlayer gaining
additional functionality (turbo button, turbo led, battery controls).

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.

Acked-by: Guenter Roeck <linux@roeck-us.net>
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%)

Comments

Derek John Clark March 10, 2025, 11:17 p.m. UTC | #1
On Sun, Mar 9, 2025 at 4:21 AM Antheas Kapenekakis <lkml@antheas.dev> wrote:
>
> The EC of OneXPlayer devices used to only control the fan.
> This is no longer the case, with the EC of OneXPlayer gaining
> additional functionality (turbo button, turbo led, battery controls).
>
> 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.
>
> Acked-by: Guenter Roeck <linux@roeck-us.net>
> 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%)

IMO this should also be moved, it doesn't really make sense that hwmon
would continue to carry the docs after the move. Platform/x86 doesn't
seem to have a home in Documentation, perhaps misc-devices? Armin or
Ilpo may have some thoughts here.

>  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 0248c9eb39d6..a11d346a458b 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -17641,12 +17641,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.
> +

I don't think it is necessary to indicate future plans in config
options or documentation. It should just reflect the current state of
the kernel at the time of the patch. Whenever I get to submitting
ayaneo-platform I'll remove the necessary notes from Kconfigs, Docs,
etc.

>  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 f7a64fbc8f33..dc3a0871809c 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.
>   *

Same as above.

Cheers,
- Derek

>   * 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>
> --
> 2.48.1
>
Antheas Kapenekakis March 10, 2025, 11:30 p.m. UTC | #2
On Tue, 11 Mar 2025 at 00:18, Derek John Clark
<derekjohn.clark@gmail.com> wrote:
>
> On Sun, Mar 9, 2025 at 4:21 AM Antheas Kapenekakis <lkml@antheas.dev> wrote:
> >
> > The EC of OneXPlayer devices used to only control the fan.
> > This is no longer the case, with the EC of OneXPlayer gaining
> > additional functionality (turbo button, turbo led, battery controls).
> >
> > 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.
> >
> > Acked-by: Guenter Roeck <linux@roeck-us.net>
> > 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%)
>
> IMO this should also be moved, it doesn't really make sense that hwmon
> would continue to carry the docs after the move. Platform/x86 doesn't
> seem to have a home in Documentation, perhaps misc-devices? Armin or
> Ilpo may have some thoughts here.

I looked at similar drivers and I think asus-wmi was the same FYI. The
sensors for it reside in hwmon.

> >  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 0248c9eb39d6..a11d346a458b 100644
> > --- a/MAINTAINERS
> > +++ b/MAINTAINERS
> > @@ -17641,12 +17641,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.
> > +
>
> I don't think it is necessary to indicate future plans in config
> options or documentation. It should just reflect the current state of
> the kernel at the time of the patch. Whenever I get to submitting
> ayaneo-platform I'll remove the necessary notes from Kconfigs, Docs,
> etc.

Most of the functionality of this driver does not apply to Ayaneo
anymore though. I think it is good Ayaneo got mainline support for fan
curves by re-using the existing oxp-sensors hwmon driver, but in this
case we are converting it to the OneXPlayer platform driver now, so
the documentation should reflect that?

> >  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 f7a64fbc8f33..dc3a0871809c 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.
> >   *
>
> Same as above.
>
> Cheers,
> - Derek
>
> >   * 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>
> > --
> > 2.48.1
> >
diff mbox series

Patch

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 0248c9eb39d6..a11d346a458b 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -17641,12 +17641,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 f7a64fbc8f33..dc3a0871809c 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>