From: Antheas Kapenekakis <lkml@antheas.dev>
To: linux-hwmon@vger.kernel.org
Cc: linux-doc@vger.kernel.org, linux-pm@vger.kernel.org,
platform-driver-x86@vger.kernel.org,
Guenter Roeck <linux@roeck-us.net>,
Jean Delvare <jdelvare@suse.com>,
Jonathan Corbet <corbet@lwn.net>,
Joaquin Ignacio Aramendia <samsagax@gmail.com>,
Derek J Clark <derekjohn.clark@gmail.com>,
Kevin Greenberg <kdgreenberg234@protonmail.com>,
Joshua Tam <csinaction@pm.me>,
Parth Menon <parthasarathymenon@gmail.com>,
Eileen <eileen@one-netbook.com>,
Antheas Kapenekakis <lkml@antheas.dev>
Subject: [PATCH v2 11/12] platform/x86: oxpec: Move hwmon/oxp-sensors to platform/x86
Date: Sat, 22 Feb 2025 17:18:22 +0100 [thread overview]
Message-ID: <20250222161824.172511-12-lkml@antheas.dev> (raw)
In-Reply-To: <20250222161824.172511-1-lkml@antheas.dev>
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%)
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>
--
2.48.1
next prev parent reply other threads:[~2025-02-22 16:20 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-22 16:18 [PATCH v2 00/12] hwmon: (oxpsensors) Add devices, features, fix ABI and move to platform/x86 Antheas Kapenekakis
2025-02-22 16:18 ` [PATCH v2 01/12] hwmon: (oxp-sensors) Distinguish the X1 variants Antheas Kapenekakis
2025-02-22 16:18 ` [PATCH v2 02/12] hwmon: (oxp-sensors) Add all OneXFly variants Antheas Kapenekakis
2025-02-22 16:18 ` [PATCH v2 03/12] ABI: testing: sysfs-class-power: add BypassS0 charge_type Antheas Kapenekakis
2025-02-22 16:18 ` [PATCH v2 04/12] hwmon: (oxp-sensors) Add charge threshold and bypass to OneXPlayer Antheas Kapenekakis
2025-02-22 16:18 ` [PATCH v2 05/12] hwmon: (oxp-sensors) Rename ec group to tt_toggle Antheas Kapenekakis
2025-02-22 16:18 ` [PATCH v2 06/12] hwmon: (oxp-sensors) Add turbo led support to X1 devices Antheas Kapenekakis
2025-03-01 15:13 ` Derek J. Clark
2025-03-01 15:54 ` Antheas Kapenekakis
2025-03-01 16:13 ` Derek J. Clark
2025-03-01 16:52 ` Antheas Kapenekakis
2025-03-01 17:01 ` Derek J. Clark
2025-02-22 16:18 ` [PATCH v2 07/12] hwmon: (oxp-sensors) Move pwm_enable read to its own function Antheas Kapenekakis
2025-03-01 15:21 ` Derek J. Clark
2025-03-01 15:55 ` Antheas Kapenekakis
2025-02-22 16:18 ` [PATCH v2 08/12] hwmon: (oxp-sensors) Move pwm value read/write to separate functions Antheas Kapenekakis
2025-02-22 16:18 ` [PATCH v2 09/12] hwmon: (oxp-sensors) Move fan speed read to separate function Antheas Kapenekakis
2025-02-22 16:18 ` [PATCH v2 10/12] hwmon: (oxp-sensors) Adhere to sysfs-class-hwmon and enable pwm on 2 Antheas Kapenekakis
2025-02-22 16:18 ` Antheas Kapenekakis [this message]
2025-03-01 14:31 ` [PATCH v2 11/12] platform/x86: oxpec: Move hwmon/oxp-sensors to platform/x86 kernel test robot
2025-03-01 14:40 ` Antheas Kapenekakis
2025-03-03 14:06 ` Guenter Roeck
2025-03-03 17:47 ` Antheas Kapenekakis
2025-02-22 16:18 ` [PATCH v2 12/12] ABI: testing: add tt_toggle and tt_led entries Antheas Kapenekakis
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250222161824.172511-12-lkml@antheas.dev \
--to=lkml@antheas.dev \
--cc=corbet@lwn.net \
--cc=csinaction@pm.me \
--cc=derekjohn.clark@gmail.com \
--cc=eileen@one-netbook.com \
--cc=jdelvare@suse.com \
--cc=kdgreenberg234@protonmail.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-hwmon@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=linux@roeck-us.net \
--cc=parthasarathymenon@gmail.com \
--cc=platform-driver-x86@vger.kernel.org \
--cc=samsagax@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox