The Linux Kernel Mailing List
 help / color / mirror / Atom feed
* [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus
  2026-09-18  7:38 [PATCH 0/2] platform: Enable ACPI WMI and ASUS WMI driver for ARM64 Hans de Goede
@ 2026-09-22  3:21 ` chipang_kao
  2026-09-22 19:54   ` Armin Wolf
                     ` (2 more replies)
  0 siblings, 3 replies; 18+ messages in thread
From: chipang_kao @ 2026-09-22  3:21 UTC (permalink / raw)
  To: hansg, ilpo.jarvinen, W_Armin
  Cc: corentin.chary, luke, denis.benato, scardracs,
	platform-driver-x86, linux-kernel, chipang_kao

ASUS WMI and related platform drivers currently reside under
drivers/platform/x86/. However, with ARM64 devices utilizing ACPI WMI
interfaces, maintaining these drivers exclusively under x86 creates
unnecessary architectural restrictions and Kconfig duplications.

To allow ARM64 architectures to build and utilize ASUS WMI drivers
cleanly:
1. Relocate all ASUS WMI-based drivers and headers from
   drivers/platform/x86/ to drivers/platform/wmi/asus/.
2. Create dedicated Kconfig and Makefile under
   drivers/platform/wmi/asus/ and source them in
   drivers/platform/wmi/Kconfig and Makefile.
3. Update drivers/platform/x86/Kconfig to remove duplicated entries
   and source the unified WMI-based ASUS configuration.

No functional code logic changes are introduced in this patch; this is
a pure code relocation and build infrastructure refactoring.

Signed-off-by: chipang_kao <chipang_kao@asus.com>
---

Changes in v3:
- Refined the file relocation scope to target ONLY pure WMI-based
  platform drivers (asus-wmi, asus-nb-wmi, and asus-armoury).
- Retained non-WMI x86 platform drivers (such as asus-laptop,
  asus-wireless, and asus-tf103c-dock) under drivers/platform/x86/.
- Updated drivers/platform/wmi/asus/Kconfig and Makefile to only build
  and export the relocated WMI components.
- Dropped patch 1/2 from the original series as CONFIG_ACPI_WMI
  dependency updates are handled by Armin's WMI refactoring series.

Changes in v2:
- Relocated ASUS platform drivers from drivers/platform/x86/ to
  drivers/platform/wmi/asus/ to eliminate Kconfig duplication and
  architectural restrictions for ARM64 platforms.
- Updated MAINTAINERS file to reflect the new path.

 MAINTAINERS                                   |  1 +
 drivers/platform/wmi/Kconfig                  |  1 +
 drivers/platform/wmi/Makefile                 |  1 +
 drivers/platform/wmi/asus/Kconfig             | 64 +++++++++++++++++++
 drivers/platform/wmi/asus/Makefile            |  9 +++
 .../platform/{x86 => wmi/asus}/asus-armoury.c |  0
 .../platform/{x86 => wmi/asus}/asus-armoury.h |  0
 .../platform/{x86 => wmi/asus}/asus-nb-wmi.c  |  0
 drivers/platform/{x86 => wmi/asus}/asus-wmi.c |  0
 drivers/platform/{x86 => wmi/asus}/asus-wmi.h |  0
 drivers/platform/x86/Kconfig                  | 58 -----------------
 drivers/platform/x86/Makefile                 |  3 -
 12 files changed, 76 insertions(+), 61 deletions(-)
 create mode 100644 drivers/platform/wmi/asus/Kconfig
 create mode 100644 drivers/platform/wmi/asus/Makefile
 rename drivers/platform/{x86 => wmi/asus}/asus-armoury.c (100%)
 rename drivers/platform/{x86 => wmi/asus}/asus-armoury.h (100%)
 rename drivers/platform/{x86 => wmi/asus}/asus-nb-wmi.c (100%)
 rename drivers/platform/{x86 => wmi/asus}/asus-wmi.c (100%)
 rename drivers/platform/{x86 => wmi/asus}/asus-wmi.h (100%)

diff --git a/MAINTAINERS b/MAINTAINERS
index cc3cae2e378b..2e4fa6812093 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -4124,6 +4124,7 @@ M:	Denis Benato <denis.benato@linux.dev>
 L:	platform-driver-x86@vger.kernel.org
 S:	Maintained
 W:	https://asus-linux.org/
+F:	drivers/platform/wmi/asus/asus*.c
 F:	drivers/platform/x86/asus*.c
 F:	drivers/platform/x86/eeepc*.c
 
diff --git a/drivers/platform/wmi/Kconfig b/drivers/platform/wmi/Kconfig
index d62f51ff3b7f..acce8e9b7264 100644
--- a/drivers/platform/wmi/Kconfig
+++ b/drivers/platform/wmi/Kconfig
@@ -33,5 +33,6 @@ config ACPI_WMI_LEGACY_DEVICE_NAMES
 	  the same GUID to fail in some corner cases.
 
 source "drivers/platform/wmi/tests/Kconfig"
+source "drivers/platform/wmi/asus/Kconfig"
 
 endif # ACPI_WMI
diff --git a/drivers/platform/wmi/Makefile b/drivers/platform/wmi/Makefile
index 2feff94a5594..305f4688324f 100644
--- a/drivers/platform/wmi/Makefile
+++ b/drivers/platform/wmi/Makefile
@@ -6,6 +6,7 @@
 
 wmi-y			:= core.o marshalling.o string.o
 obj-$(CONFIG_ACPI_WMI)	+= wmi.o
+obj-$(CONFIG_ASUS_WMI) += asus/
 
 # Unit tests
 obj-y			+= tests/
diff --git a/drivers/platform/wmi/asus/Kconfig b/drivers/platform/wmi/asus/Kconfig
new file mode 100644
index 000000000000..75b6dd45af66
--- /dev/null
+++ b/drivers/platform/wmi/asus/Kconfig
@@ -0,0 +1,64 @@
+# SPDX-License-Identifier: GPL-2.0-only
+#
+# Asus Platform Specific Drivers
+#
+
+config ASUS_ARMOURY
+	tristate "ASUS Armoury driver"
+	depends on ASUS_WMI
+	select FW_ATTR_CLASS
+	help
+	  Say Y here if you have a WMI aware Asus machine and would like to use the
+	  firmware_attributes API to control various settings typically exposed in
+	  the ASUS Armoury Crate application available on Windows.
+
+	  To compile this driver as a module, choose M here: the module will
+	  be called asus-armoury.
+
+config ASUS_WMI
+	tristate "ASUS WMI Driver"
+	depends on ACPI_WMI
+	depends on ACPI_BATTERY
+	depends on INPUT
+	depends on HWMON
+	depends on BACKLIGHT_CLASS_DEVICE
+	depends on RFKILL || RFKILL = n
+	depends on HOTPLUG_PCI
+	depends on ACPI_VIDEO || ACPI_VIDEO = n
+	depends on SERIO_I8042 || SERIO_I8042 = n
+	select INPUT_SPARSEKMAP
+	select LEDS_CLASS
+	select NEW_LEDS
+	select ACPI_PLATFORM_PROFILE
+	help
+	  Say Y here if you have a WMI aware Asus laptop (like Eee PCs or new
+	  Asus Notebooks).
+
+	  To compile this driver as a module, choose M here: the module will
+	  be called asus-wmi.
+
+config ASUS_WMI_DEPRECATED_ATTRS
+	bool "BIOS option support in WMI platform (DEPRECATED)"
+	depends on ASUS_WMI
+	default y
+	help
+	  Say Y to expose the configurable BIOS options through the asus-wmi
+	  driver.
+
+	  This can be used with or without the asus-armoury driver which
+	  has the same attributes, but more, and better features.
+
+config ASUS_NB_WMI
+	tristate "Asus Notebook WMI Driver"
+	depends on ASUS_WMI
+	help
+	  This is a driver for newer Asus notebooks. It adds extra features
+	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
+
+	  For more information, see
+	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
+
+	  If you have an ACPI-WMI compatible Asus Notebook, say Y or M
+	  here.
+
+
diff --git a/drivers/platform/wmi/asus/Makefile b/drivers/platform/wmi/asus/Makefile
new file mode 100644
index 000000000000..8daa5ebff89f
--- /dev/null
+++ b/drivers/platform/wmi/asus/Makefile
@@ -0,0 +1,9 @@
+# SPDX-License-Identifier: GPL-2.0
+#
+# Makefile for linux/drivers/platform/wmi/asus
+# Asus Platform-Specific Drivers
+#
+
+obj-$(CONFIG_ASUS_ARMOURY)	+= asus-armoury.o
+obj-$(CONFIG_ASUS_WMI)		+= asus-wmi.o
+obj-$(CONFIG_ASUS_NB_WMI)	+= asus-nb-wmi.o
diff --git a/drivers/platform/x86/asus-armoury.c b/drivers/platform/wmi/asus/asus-armoury.c
similarity index 100%
rename from drivers/platform/x86/asus-armoury.c
rename to drivers/platform/wmi/asus/asus-armoury.c
diff --git a/drivers/platform/x86/asus-armoury.h b/drivers/platform/wmi/asus/asus-armoury.h
similarity index 100%
rename from drivers/platform/x86/asus-armoury.h
rename to drivers/platform/wmi/asus/asus-armoury.h
diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/wmi/asus/asus-nb-wmi.c
similarity index 100%
rename from drivers/platform/x86/asus-nb-wmi.c
rename to drivers/platform/wmi/asus/asus-nb-wmi.c
diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/wmi/asus/asus-wmi.c
similarity index 100%
rename from drivers/platform/x86/asus-wmi.c
rename to drivers/platform/wmi/asus/asus-wmi.c
diff --git a/drivers/platform/x86/asus-wmi.h b/drivers/platform/wmi/asus/asus-wmi.h
similarity index 100%
rename from drivers/platform/x86/asus-wmi.h
rename to drivers/platform/wmi/asus/asus-wmi.h
diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
index 957034f39e4e..68cf99de415d 100644
--- a/drivers/platform/x86/Kconfig
+++ b/drivers/platform/x86/Kconfig
@@ -253,64 +253,6 @@ config ASUS_WIRELESS
 	  If you choose to compile this driver as a module the module will be
 	  called asus-wireless.
 
-config ASUS_ARMOURY
-	tristate "ASUS Armoury driver"
-	depends on ASUS_WMI
-	select FW_ATTR_CLASS
-	help
-	  Say Y here if you have a WMI aware Asus machine and would like to use the
-	  firmware_attributes API to control various settings typically exposed in
-	  the ASUS Armoury Crate application available on Windows.
-
-	  To compile this driver as a module, choose M here: the module will
-	  be called asus-armoury.
-
-config ASUS_WMI
-	tristate "ASUS WMI Driver"
-	depends on ACPI_WMI
-	depends on ACPI_BATTERY
-	depends on INPUT
-	depends on HWMON
-	depends on BACKLIGHT_CLASS_DEVICE
-	depends on RFKILL || RFKILL = n
-	depends on HOTPLUG_PCI
-	depends on ACPI_VIDEO || ACPI_VIDEO = n
-	depends on SERIO_I8042 || SERIO_I8042 = n
-	select INPUT_SPARSEKMAP
-	select LEDS_CLASS
-	select NEW_LEDS
-	select ACPI_PLATFORM_PROFILE
-	help
-	  Say Y here if you have a WMI aware Asus laptop (like Eee PCs or new
-	  Asus Notebooks).
-
-	  To compile this driver as a module, choose M here: the module will
-	  be called asus-wmi.
-
-config ASUS_WMI_DEPRECATED_ATTRS
-	bool "BIOS option support in WMI platform (DEPRECATED)"
-	depends on ASUS_WMI
-	default y
-	help
-	  Say Y to expose the configurable BIOS options through the asus-wmi
-	  driver.
-
-	  This can be used with or without the asus-armoury driver which
-	  has the same attributes, but more, and better features.
-
-config ASUS_NB_WMI
-	tristate "Asus Notebook WMI Driver"
-	depends on ASUS_WMI
-	help
-	  This is a driver for newer Asus notebooks. It adds extra features
-	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
-
-	  For more information, see
-	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
-
-	  If you have an ACPI-WMI compatible Asus Notebook, say Y or M
-	  here.
-
 config ASUS_TF103C_DOCK
 	tristate "Asus TF103C 2-in-1 keyboard dock"
 	depends on ACPI
diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile
index 872ac3842391..0bacd55f2fce 100644
--- a/drivers/platform/x86/Makefile
+++ b/drivers/platform/x86/Makefile
@@ -33,9 +33,6 @@ obj-$(CONFIG_APPLE_GMUX)	+= apple-gmux.o
 # ASUS
 obj-$(CONFIG_ASUS_LAPTOP)	+= asus-laptop.o
 obj-$(CONFIG_ASUS_WIRELESS)	+= asus-wireless.o
-obj-$(CONFIG_ASUS_ARMOURY)	+= asus-armoury.o
-obj-$(CONFIG_ASUS_WMI)		+= asus-wmi.o
-obj-$(CONFIG_ASUS_NB_WMI)	+= asus-nb-wmi.o
 obj-$(CONFIG_ASUS_TF103C_DOCK)	+= asus-tf103c-dock.o
 obj-$(CONFIG_EEEPC_LAPTOP)	+= eeepc-laptop.o
 obj-$(CONFIG_EEEPC_WMI)		+= eeepc-wmi.o
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* Re: [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus
  2026-09-22  3:21 ` [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus chipang_kao
@ 2026-09-22 19:54   ` Armin Wolf
  2026-09-24  1:58   ` kernel test robot
  2026-09-24  2:32   ` kernel test robot
  2 siblings, 0 replies; 18+ messages in thread
From: Armin Wolf @ 2026-09-22 19:54 UTC (permalink / raw)
  To: chipang_kao, hansg, ilpo.jarvinen
  Cc: corentin.chary, luke, denis.benato, scardracs,
	platform-driver-x86, linux-kernel, chipang_kao

Am 22.09.26 um 05:21 schrieb chipang_kao:

> ASUS WMI and related platform drivers currently reside under
> drivers/platform/x86/. However, with ARM64 devices utilizing ACPI WMI
> interfaces, maintaining these drivers exclusively under x86 creates
> unnecessary architectural restrictions and Kconfig duplications.
>
> To allow ARM64 architectures to build and utilize ASUS WMI drivers
> cleanly:
> 1. Relocate all ASUS WMI-based drivers and headers from
>     drivers/platform/x86/ to drivers/platform/wmi/asus/.
> 2. Create dedicated Kconfig and Makefile under
>     drivers/platform/wmi/asus/ and source them in
>     drivers/platform/wmi/Kconfig and Makefile.
> 3. Update drivers/platform/x86/Kconfig to remove duplicated entries
>     and source the unified WMI-based ASUS configuration.
>
> No functional code logic changes are introduced in this patch; this is
> a pure code relocation and build infrastructure refactoring.

Hi,

i am two minds about moving the Asus WMI drivers to drivers/platform/wmi/asus,
because in my mind drivers/platform/wmi contains only code necessary for providing
access to ACPI-WMI objects. AFAIK the Asus WMI drivers are client drivers using the
WMI APIs to access WMI objects, not host drivers providing WMI objects.

Maybe moving the drivers to drivers/platform/asus would be better?

Thanks,
Armin Wolf

> Signed-off-by: chipang_kao <chipang_kao@asus.com>
> ---
>
> Changes in v3:
> - Refined the file relocation scope to target ONLY pure WMI-based
>    platform drivers (asus-wmi, asus-nb-wmi, and asus-armoury).
> - Retained non-WMI x86 platform drivers (such as asus-laptop,
>    asus-wireless, and asus-tf103c-dock) under drivers/platform/x86/.
> - Updated drivers/platform/wmi/asus/Kconfig and Makefile to only build
>    and export the relocated WMI components.
> - Dropped patch 1/2 from the original series as CONFIG_ACPI_WMI
>    dependency updates are handled by Armin's WMI refactoring series.
>
> Changes in v2:
> - Relocated ASUS platform drivers from drivers/platform/x86/ to
>    drivers/platform/wmi/asus/ to eliminate Kconfig duplication and
>    architectural restrictions for ARM64 platforms.
> - Updated MAINTAINERS file to reflect the new path.
>
>   MAINTAINERS                                   |  1 +
>   drivers/platform/wmi/Kconfig                  |  1 +
>   drivers/platform/wmi/Makefile                 |  1 +
>   drivers/platform/wmi/asus/Kconfig             | 64 +++++++++++++++++++
>   drivers/platform/wmi/asus/Makefile            |  9 +++
>   .../platform/{x86 => wmi/asus}/asus-armoury.c |  0
>   .../platform/{x86 => wmi/asus}/asus-armoury.h |  0
>   .../platform/{x86 => wmi/asus}/asus-nb-wmi.c  |  0
>   drivers/platform/{x86 => wmi/asus}/asus-wmi.c |  0
>   drivers/platform/{x86 => wmi/asus}/asus-wmi.h |  0
>   drivers/platform/x86/Kconfig                  | 58 -----------------
>   drivers/platform/x86/Makefile                 |  3 -
>   12 files changed, 76 insertions(+), 61 deletions(-)
>   create mode 100644 drivers/platform/wmi/asus/Kconfig
>   create mode 100644 drivers/platform/wmi/asus/Makefile
>   rename drivers/platform/{x86 => wmi/asus}/asus-armoury.c (100%)
>   rename drivers/platform/{x86 => wmi/asus}/asus-armoury.h (100%)
>   rename drivers/platform/{x86 => wmi/asus}/asus-nb-wmi.c (100%)
>   rename drivers/platform/{x86 => wmi/asus}/asus-wmi.c (100%)
>   rename drivers/platform/{x86 => wmi/asus}/asus-wmi.h (100%)
>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index cc3cae2e378b..2e4fa6812093 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -4124,6 +4124,7 @@ M:	Denis Benato <denis.benato@linux.dev>
>   L:	platform-driver-x86@vger.kernel.org
>   S:	Maintained
>   W:	https://asus-linux.org/
> +F:	drivers/platform/wmi/asus/asus*.c
>   F:	drivers/platform/x86/asus*.c
>   F:	drivers/platform/x86/eeepc*.c
>   
> diff --git a/drivers/platform/wmi/Kconfig b/drivers/platform/wmi/Kconfig
> index d62f51ff3b7f..acce8e9b7264 100644
> --- a/drivers/platform/wmi/Kconfig
> +++ b/drivers/platform/wmi/Kconfig
> @@ -33,5 +33,6 @@ config ACPI_WMI_LEGACY_DEVICE_NAMES
>   	  the same GUID to fail in some corner cases.
>   
>   source "drivers/platform/wmi/tests/Kconfig"
> +source "drivers/platform/wmi/asus/Kconfig"
>   
>   endif # ACPI_WMI
> diff --git a/drivers/platform/wmi/Makefile b/drivers/platform/wmi/Makefile
> index 2feff94a5594..305f4688324f 100644
> --- a/drivers/platform/wmi/Makefile
> +++ b/drivers/platform/wmi/Makefile
> @@ -6,6 +6,7 @@
>   
>   wmi-y			:= core.o marshalling.o string.o
>   obj-$(CONFIG_ACPI_WMI)	+= wmi.o
> +obj-$(CONFIG_ASUS_WMI) += asus/
>   
>   # Unit tests
>   obj-y			+= tests/
> diff --git a/drivers/platform/wmi/asus/Kconfig b/drivers/platform/wmi/asus/Kconfig
> new file mode 100644
> index 000000000000..75b6dd45af66
> --- /dev/null
> +++ b/drivers/platform/wmi/asus/Kconfig
> @@ -0,0 +1,64 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +#
> +# Asus Platform Specific Drivers
> +#
> +
> +config ASUS_ARMOURY
> +	tristate "ASUS Armoury driver"
> +	depends on ASUS_WMI
> +	select FW_ATTR_CLASS
> +	help
> +	  Say Y here if you have a WMI aware Asus machine and would like to use the
> +	  firmware_attributes API to control various settings typically exposed in
> +	  the ASUS Armoury Crate application available on Windows.
> +
> +	  To compile this driver as a module, choose M here: the module will
> +	  be called asus-armoury.
> +
> +config ASUS_WMI
> +	tristate "ASUS WMI Driver"
> +	depends on ACPI_WMI
> +	depends on ACPI_BATTERY
> +	depends on INPUT
> +	depends on HWMON
> +	depends on BACKLIGHT_CLASS_DEVICE
> +	depends on RFKILL || RFKILL = n
> +	depends on HOTPLUG_PCI
> +	depends on ACPI_VIDEO || ACPI_VIDEO = n
> +	depends on SERIO_I8042 || SERIO_I8042 = n
> +	select INPUT_SPARSEKMAP
> +	select LEDS_CLASS
> +	select NEW_LEDS
> +	select ACPI_PLATFORM_PROFILE
> +	help
> +	  Say Y here if you have a WMI aware Asus laptop (like Eee PCs or new
> +	  Asus Notebooks).
> +
> +	  To compile this driver as a module, choose M here: the module will
> +	  be called asus-wmi.
> +
> +config ASUS_WMI_DEPRECATED_ATTRS
> +	bool "BIOS option support in WMI platform (DEPRECATED)"
> +	depends on ASUS_WMI
> +	default y
> +	help
> +	  Say Y to expose the configurable BIOS options through the asus-wmi
> +	  driver.
> +
> +	  This can be used with or without the asus-armoury driver which
> +	  has the same attributes, but more, and better features.
> +
> +config ASUS_NB_WMI
> +	tristate "Asus Notebook WMI Driver"
> +	depends on ASUS_WMI
> +	help
> +	  This is a driver for newer Asus notebooks. It adds extra features
> +	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
> +
> +	  For more information, see
> +	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
> +
> +	  If you have an ACPI-WMI compatible Asus Notebook, say Y or M
> +	  here.
> +
> +
> diff --git a/drivers/platform/wmi/asus/Makefile b/drivers/platform/wmi/asus/Makefile
> new file mode 100644
> index 000000000000..8daa5ebff89f
> --- /dev/null
> +++ b/drivers/platform/wmi/asus/Makefile
> @@ -0,0 +1,9 @@
> +# SPDX-License-Identifier: GPL-2.0
> +#
> +# Makefile for linux/drivers/platform/wmi/asus
> +# Asus Platform-Specific Drivers
> +#
> +
> +obj-$(CONFIG_ASUS_ARMOURY)	+= asus-armoury.o
> +obj-$(CONFIG_ASUS_WMI)		+= asus-wmi.o
> +obj-$(CONFIG_ASUS_NB_WMI)	+= asus-nb-wmi.o
> diff --git a/drivers/platform/x86/asus-armoury.c b/drivers/platform/wmi/asus/asus-armoury.c
> similarity index 100%
> rename from drivers/platform/x86/asus-armoury.c
> rename to drivers/platform/wmi/asus/asus-armoury.c
> diff --git a/drivers/platform/x86/asus-armoury.h b/drivers/platform/wmi/asus/asus-armoury.h
> similarity index 100%
> rename from drivers/platform/x86/asus-armoury.h
> rename to drivers/platform/wmi/asus/asus-armoury.h
> diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/wmi/asus/asus-nb-wmi.c
> similarity index 100%
> rename from drivers/platform/x86/asus-nb-wmi.c
> rename to drivers/platform/wmi/asus/asus-nb-wmi.c
> diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/wmi/asus/asus-wmi.c
> similarity index 100%
> rename from drivers/platform/x86/asus-wmi.c
> rename to drivers/platform/wmi/asus/asus-wmi.c
> diff --git a/drivers/platform/x86/asus-wmi.h b/drivers/platform/wmi/asus/asus-wmi.h
> similarity index 100%
> rename from drivers/platform/x86/asus-wmi.h
> rename to drivers/platform/wmi/asus/asus-wmi.h
> diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
> index 957034f39e4e..68cf99de415d 100644
> --- a/drivers/platform/x86/Kconfig
> +++ b/drivers/platform/x86/Kconfig
> @@ -253,64 +253,6 @@ config ASUS_WIRELESS
>   	  If you choose to compile this driver as a module the module will be
>   	  called asus-wireless.
>   
> -config ASUS_ARMOURY
> -	tristate "ASUS Armoury driver"
> -	depends on ASUS_WMI
> -	select FW_ATTR_CLASS
> -	help
> -	  Say Y here if you have a WMI aware Asus machine and would like to use the
> -	  firmware_attributes API to control various settings typically exposed in
> -	  the ASUS Armoury Crate application available on Windows.
> -
> -	  To compile this driver as a module, choose M here: the module will
> -	  be called asus-armoury.
> -
> -config ASUS_WMI
> -	tristate "ASUS WMI Driver"
> -	depends on ACPI_WMI
> -	depends on ACPI_BATTERY
> -	depends on INPUT
> -	depends on HWMON
> -	depends on BACKLIGHT_CLASS_DEVICE
> -	depends on RFKILL || RFKILL = n
> -	depends on HOTPLUG_PCI
> -	depends on ACPI_VIDEO || ACPI_VIDEO = n
> -	depends on SERIO_I8042 || SERIO_I8042 = n
> -	select INPUT_SPARSEKMAP
> -	select LEDS_CLASS
> -	select NEW_LEDS
> -	select ACPI_PLATFORM_PROFILE
> -	help
> -	  Say Y here if you have a WMI aware Asus laptop (like Eee PCs or new
> -	  Asus Notebooks).
> -
> -	  To compile this driver as a module, choose M here: the module will
> -	  be called asus-wmi.
> -
> -config ASUS_WMI_DEPRECATED_ATTRS
> -	bool "BIOS option support in WMI platform (DEPRECATED)"
> -	depends on ASUS_WMI
> -	default y
> -	help
> -	  Say Y to expose the configurable BIOS options through the asus-wmi
> -	  driver.
> -
> -	  This can be used with or without the asus-armoury driver which
> -	  has the same attributes, but more, and better features.
> -
> -config ASUS_NB_WMI
> -	tristate "Asus Notebook WMI Driver"
> -	depends on ASUS_WMI
> -	help
> -	  This is a driver for newer Asus notebooks. It adds extra features
> -	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
> -
> -	  For more information, see
> -	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
> -
> -	  If you have an ACPI-WMI compatible Asus Notebook, say Y or M
> -	  here.
> -
>   config ASUS_TF103C_DOCK
>   	tristate "Asus TF103C 2-in-1 keyboard dock"
>   	depends on ACPI
> diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile
> index 872ac3842391..0bacd55f2fce 100644
> --- a/drivers/platform/x86/Makefile
> +++ b/drivers/platform/x86/Makefile
> @@ -33,9 +33,6 @@ obj-$(CONFIG_APPLE_GMUX)	+= apple-gmux.o
>   # ASUS
>   obj-$(CONFIG_ASUS_LAPTOP)	+= asus-laptop.o
>   obj-$(CONFIG_ASUS_WIRELESS)	+= asus-wireless.o
> -obj-$(CONFIG_ASUS_ARMOURY)	+= asus-armoury.o
> -obj-$(CONFIG_ASUS_WMI)		+= asus-wmi.o
> -obj-$(CONFIG_ASUS_NB_WMI)	+= asus-nb-wmi.o
>   obj-$(CONFIG_ASUS_TF103C_DOCK)	+= asus-tf103c-dock.o
>   obj-$(CONFIG_EEEPC_LAPTOP)	+= eeepc-laptop.o
>   obj-$(CONFIG_EEEPC_WMI)		+= eeepc-wmi.o

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus
       [not found] <202609221954.123456@gmx.de>
@ 2026-09-23  8:29 ` chipang_kao
  2026-09-23  8:42   ` Hans de Goede
  2026-09-23 12:22   ` [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus Denis Benato
  0 siblings, 2 replies; 18+ messages in thread
From: chipang_kao @ 2026-09-23  8:29 UTC (permalink / raw)
  To: W_Armin, hansg, ilpo.jarvinen
  Cc: corentin.chary, luke, denis.benato, scardracs,
	platform-driver-x86, linux-kernel

Hi Armin, Hans, and all,

Thank you for the feedback, Armin!

I completely agree that separating WMI core infrastructure from WMI client
drivers makes logical sense. The reason v3 relocated the drivers to
drivers/platform/wmi/asus/ was based on Hans's earlier suggestion to use the
WMI subsystem hierarchy. However, Armin's point about keeping client drivers in
a brand-specific directory like drivers/platform/asus/ also provides a very
clean, cross-architecture solution for all ASUS platform drivers.

Regarding the background: yes, the RTX Spark is indeed our target platform.
ASUS plans to provide user-space applications on Ubuntu to control platform
features via the WMI interface. During our bring-up on ARM64, we found that no
ASUS WMI modules were currently available for this architecture due to the
existing x86 Kconfig restriction. This patch series aims to enable
cross-architecture WMI support to address this gap.

I am happy to go with either path (wmi/asus/ vs. platform/asus/). Hans, Armin,
what would be the preferred target directory before I prepare [PATCH v4]?

Best regards,
Chipang Kao

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus
  2026-09-23  8:29 ` [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus chipang_kao
@ 2026-09-23  8:42   ` Hans de Goede
  2026-09-23 12:18     ` Denis Benato
  2026-10-16  6:34     ` chipang_kao
  2026-09-23 12:22   ` [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus Denis Benato
  1 sibling, 2 replies; 18+ messages in thread
From: Hans de Goede @ 2026-09-23  8:42 UTC (permalink / raw)
  To: chipang_kao, W_Armin, ilpo.jarvinen
  Cc: corentin.chary, luke, denis.benato, scardracs,
	platform-driver-x86, linux-kernel

Hi,

On 23-Sep-26 10:29, chipang_kao wrote:
> Hi Armin, Hans, and all,
> 
> Thank you for the feedback, Armin!
> 
> I completely agree that separating WMI core infrastructure from WMI client
> drivers makes logical sense. The reason v3 relocated the drivers to
> drivers/platform/wmi/asus/ was based on Hans's earlier suggestion to use the
> WMI subsystem hierarchy. However, Armin's point about keeping client drivers in
> a brand-specific directory like drivers/platform/asus/ also provides a very
> clean, cross-architecture solution for all ASUS platform drivers.
> 
> Regarding the background: yes, the RTX Spark is indeed our target platform.
> ASUS plans to provide user-space applications on Ubuntu to control platform
> features via the WMI interface. During our bring-up on ARM64, we found that no
> ASUS WMI modules were currently available for this architecture due to the
> existing x86 Kconfig restriction. This patch series aims to enable
> cross-architecture WMI support to address this gap.
> 
> I am happy to go with either path (wmi/asus/ vs. platform/asus/). Hans, Armin,
> what would be the preferred target directory before I prepare [PATCH v4]?

If I understand things correctly then Armin prefers drivers/platform/asus
that is completely fine with me, so lets go with drivers/platform/asus .

Having that will also be useful to share any platform specific drivers
which directly use ACPI calls rather then WMI.

E.g. I can see a drivers/platform/lenovo show up to use thinkpad_acpi
on ThinkPad ARM64 laptops.

Regards,

Hans




^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus
  2026-09-23  8:42   ` Hans de Goede
@ 2026-09-23 12:18     ` Denis Benato
  2026-10-16  6:34     ` chipang_kao
  1 sibling, 0 replies; 18+ messages in thread
From: Denis Benato @ 2026-09-23 12:18 UTC (permalink / raw)
  To: Hans de Goede, chipang_kao, W_Armin, ilpo.jarvinen
  Cc: corentin.chary, luke, scardracs, platform-driver-x86,
	linux-kernel


On 9/23/26 10:42, Hans de Goede wrote:
> Hi,
>
> On 23-Sep-26 10:29, chipang_kao wrote:
>> Hi Armin, Hans, and all,
>>
>> Thank you for the feedback, Armin!
>>
>> I completely agree that separating WMI core infrastructure from WMI client
>> drivers makes logical sense. The reason v3 relocated the drivers to
>> drivers/platform/wmi/asus/ was based on Hans's earlier suggestion to use the
>> WMI subsystem hierarchy. However, Armin's point about keeping client drivers in
>> a brand-specific directory like drivers/platform/asus/ also provides a very
>> clean, cross-architecture solution for all ASUS platform drivers.
>>
>> Regarding the background: yes, the RTX Spark is indeed our target platform.
>> ASUS plans to provide user-space applications on Ubuntu to control platform
>> features via the WMI interface. During our bring-up on ARM64, we found that no
>> ASUS WMI modules were currently available for this architecture due to the
>> existing x86 Kconfig restriction. This patch series aims to enable
>> cross-architecture WMI support to address this gap.
>>
>> I am happy to go with either path (wmi/asus/ vs. platform/asus/). Hans, Armin,
>> what would be the preferred target directory before I prepare [PATCH v4]?
> If I understand things correctly then Armin prefers drivers/platform/asus
> that is completely fine with me, so lets go with drivers/platform/asus .

Hi Hans,

Yeah it's my understanding that drivers/platform/asus is the only path
that so far nobody has stated any reason to exclude so I agree on moving
asus-related stuff there.

> Having that will also be useful to share any platform specific drivers
> which directly use ACPI calls rather then WMI.
>
> E.g. I can see a drivers/platform/lenovo show up to use thinkpad_acpi
> on ThinkPad ARM64 laptops.
>
> Regards,
>
> Hans
>
>
>
Best regards,
Denis

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus
  2026-09-23  8:29 ` [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus chipang_kao
  2026-09-23  8:42   ` Hans de Goede
@ 2026-09-23 12:22   ` Denis Benato
  1 sibling, 0 replies; 18+ messages in thread
From: Denis Benato @ 2026-09-23 12:22 UTC (permalink / raw)
  To: chipang_kao, W_Armin, hansg, ilpo.jarvinen
  Cc: corentin.chary, luke, scardracs, platform-driver-x86,
	linux-kernel


On 9/23/26 10:29, chipang_kao wrote:
> Hi Armin, Hans, and all,
>
> Thank you for the feedback, Armin!
>
> I completely agree that separating WMI core infrastructure from WMI client
> drivers makes logical sense. The reason v3 relocated the drivers to
> drivers/platform/wmi/asus/ was based on Hans's earlier suggestion to use the
> WMI subsystem hierarchy. However, Armin's point about keeping client drivers in
> a brand-specific directory like drivers/platform/asus/ also provides a very
> clean, cross-architecture solution for all ASUS platform drivers.
>
> Regarding the background: yes, the RTX Spark is indeed our target platform.
> ASUS plans to provide user-space applications on Ubuntu to control platform
> features via the WMI interface. During our bring-up on ARM64, we found that no
> ASUS WMI modules were currently available for this architecture due to the
> existing x86 Kconfig restriction. This patch series aims to enable
> cross-architecture WMI support to address this gap.

So my intuition about RTX Spark having those was spot on...

Very good to know. Once those drivers are compiled for arm64
we should be able to reuse the whole asusctl software to get
the driver control every hardware that is there.

> I am happy to go with either path (wmi/asus/ vs. platform/asus/). Hans, Armin,
> what would be the preferred target directory before I prepare [PATCH v4]?
>
> Best regards,
> Chipang Kao

Thanks for taking care of this move: it was planned but with no
product in my hands I decided to postpone this.

Best regards,
Denis

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus
  2026-09-22  3:21 ` [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus chipang_kao
  2026-09-22 19:54   ` Armin Wolf
@ 2026-09-24  1:58   ` kernel test robot
  2026-09-24  2:32   ` kernel test robot
  2 siblings, 0 replies; 18+ messages in thread
From: kernel test robot @ 2026-09-24  1:58 UTC (permalink / raw)
  To: chipang_kao, hansg, ilpo.jarvinen, W_Armin
  Cc: oe-kbuild-all, corentin.chary, luke, denis.benato, scardracs,
	platform-driver-x86, linux-kernel, chipang_kao

Hi chipang_kao,

kernel test robot noticed the following build errors:

[auto build test ERROR on linus/master]
[also build test ERROR on v7.3-rc4 next-20260922]
[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/chipang_kao/platform-wmi-Move-ASUS-platform-drivers-from-x86-to-wmi-asus/20260922-112157
base:   linus/master
patch link:    https://lore.kernel.org/r/20260922032157.120188-1-chipang_kao%40asus.com
patch subject: [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus
config: x86_64-rhel-9.4 (https://download.01.org/0day-ci/archive/20260924/202609240939.vOix0FZl-lkp@intel.com/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260924/202609240939.vOix0FZl-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/202609240939.vOix0FZl-lkp@intel.com/

All errors (new ones prefixed by >>):

>> drivers/platform/x86/eeepc-wmi.c:25:10: fatal error: asus-wmi.h: No such file or directory
      25 | #include "asus-wmi.h"
         |          ^~~~~~~~~~~~
   compilation terminated.


vim +25 drivers/platform/x86/eeepc-wmi.c

e12e6d94db24e9 Corentin Chary 2011-02-26  24  
e12e6d94db24e9 Corentin Chary 2011-02-26 @25  #include "asus-wmi.h"
e12e6d94db24e9 Corentin Chary 2011-02-26  26  

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus
  2026-09-22  3:21 ` [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus chipang_kao
  2026-09-22 19:54   ` Armin Wolf
  2026-09-24  1:58   ` kernel test robot
@ 2026-09-24  2:32   ` kernel test robot
  2 siblings, 0 replies; 18+ messages in thread
From: kernel test robot @ 2026-09-24  2:32 UTC (permalink / raw)
  To: chipang_kao, hansg, ilpo.jarvinen, W_Armin
  Cc: llvm, oe-kbuild-all, corentin.chary, luke, denis.benato,
	scardracs, platform-driver-x86, linux-kernel, chipang_kao

Hi chipang_kao,

kernel test robot noticed the following build errors:

[auto build test ERROR on linus/master]
[also build test ERROR on v7.3-rc4 next-20260922]
[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/chipang_kao/platform-wmi-Move-ASUS-platform-drivers-from-x86-to-wmi-asus/20260922-112157
base:   linus/master
patch link:    https://lore.kernel.org/r/20260922032157.120188-1-chipang_kao%40asus.com
patch subject: [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus
config: x86_64-rhel-9.4-rust (https://download.01.org/0day-ci/archive/20260924/202609241003.pdNIa1YN-lkp@intel.com/config)
compiler: clang version 22.1.3 (https://github.com/llvm/llvm-project e9846648fd6183ee6d8cbdb4502213fcf902a211)
rustc: rustc 1.96.0 (ac68faa20 2026-05-25)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260924/202609241003.pdNIa1YN-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/202609241003.pdNIa1YN-lkp@intel.com/

All errors (new ones prefixed by >>):

>> drivers/platform/x86/eeepc-wmi.c:25:10: fatal error: 'asus-wmi.h' file not found
      25 | #include "asus-wmi.h"
         |          ^~~~~~~~~~~~
   1 error generated.


vim +25 drivers/platform/x86/eeepc-wmi.c

e12e6d94db24e90 Corentin Chary 2011-02-26  24  
e12e6d94db24e90 Corentin Chary 2011-02-26 @25  #include "asus-wmi.h"
e12e6d94db24e90 Corentin Chary 2011-02-26  26  

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus
  2026-09-23  8:42   ` Hans de Goede
  2026-09-23 12:18     ` Denis Benato
@ 2026-10-16  6:34     ` chipang_kao
  2026-10-27 10:08       ` Ilpo Järvinen
  1 sibling, 1 reply; 18+ messages in thread
From: chipang_kao @ 2026-10-16  6:34 UTC (permalink / raw)
  To: hansg
  Cc: W_Armin, ilpo.jarvinen, corentin.chary, luke, denis.benato,
	scardracs, platform-driver-x86, linux-kernel

Hi Armin, Hans, and all,

I tried moving the ASUS-related platform drivers from
drivers/platform/x86 to a dedicated drivers/platform/asus/
directory. Most drivers compile successfully after this
restructuring, except for asus-armoury.c, which depends on
firmware_attributes_class currently defined in
drivers/platform/x86/firmware_attributes_class.c.

I found that Sean Rhodes has submitted a similar change to
move the firmware attributes class:
https://lore.kernel.org/lkml/ar0DNFlI7MEA8zp2@tzungbi-laptop/

The patch has been applied to the Chrome Platform tree's
for-firmware-next branch, but I haven't found a corresponding
pull request to Linus' tree.

Is this change expected to be sent to mainline for an
upcoming merge window?

Best regards,
Chipang Kao

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus
  2026-10-16  6:34     ` chipang_kao
@ 2026-10-27 10:08       ` Ilpo Järvinen
  2026-11-06  3:35         ` [PATCH v4] platform/asus: Move ASUS platform drivers out of drivers/platform/x86 chipang_kao
  0 siblings, 1 reply; 18+ messages in thread
From: Ilpo Järvinen @ 2026-10-27 10:08 UTC (permalink / raw)
  To: chipang_kao
  Cc: Hans de Goede, W_Armin, corentin.chary, luke, denis.benato,
	scardracs, platform-driver-x86, LKML

On Fri, 16 Oct 2026, chipang_kao wrote:

> Hi Armin, Hans, and all,
> 
> I tried moving the ASUS-related platform drivers from
> drivers/platform/x86 to a dedicated drivers/platform/asus/
> directory. Most drivers compile successfully after this
> restructuring, except for asus-armoury.c, which depends on
> firmware_attributes_class currently defined in
> drivers/platform/x86/firmware_attributes_class.c.
> 
> I found that Sean Rhodes has submitted a similar change to
> move the firmware attributes class:
> https://lore.kernel.org/lkml/ar0DNFlI7MEA8zp2@tzungbi-laptop/
> 
> The patch has been applied to the Chrome Platform tree's
> for-firmware-next branch, but I haven't found a corresponding
> pull request to Linus' tree.

As per the the usual process, PRs for branches containing new 
features/refactors are only made during merge window (i.e., around now).

> Is this change expected to be sent to mainline for an
> upcoming merge window?

It is now in Linus' tree.

I'll try to get platform drivers PR done today as well.

-- 
 i.


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [PATCH v4] platform/asus: Move ASUS platform drivers out of drivers/platform/x86
  2026-10-27 10:08       ` Ilpo Järvinen
@ 2026-11-06  3:35         ` chipang_kao
  2026-11-08 14:16           ` Denis Benato
  2026-11-09 12:21           ` Ilpo Järvinen
  0 siblings, 2 replies; 18+ messages in thread
From: chipang_kao @ 2026-11-06  3:35 UTC (permalink / raw)
  To: ilpo.jarvinen
  Cc: W_Armin, corentin.chary, denis.benato, hansg, linux-kernel, luke,
	platform-driver-x86, prozac2734, scardracs, chipang_kao

ASUS WMI and related platform drivers currently reside under
drivers/platform/x86/. However, with the emergence of ARM64 devices
utilizing ACPI WMI interfaces, maintaining these drivers exclusively
under x86 creates unnecessary architectural restrictions and Kconfig
duplications.

To allow non-x86 architectures (such as ARM64) to select and build
the applicable ASUS platform drivers:
1. Relocate all ASUS platform drivers and headers from
   drivers/platform/x86/ to drivers/platform/asus/.
2. Create dedicated Kconfig and Makefile under drivers/platform/asus/.
3. Update drivers/platform/x86/Kconfig to remove duplicated entries.

Signed-off-by: chipang_kao <chipang_kao@asus.com>
---
Changes in v4:
- Move all ASUS platform drivers and headers from
  drivers/platform/x86/ to drivers/platform/asus/.
- Add a dedicated Kconfig and Makefile under drivers/platform/asus/.
- Keep x86-specific drivers under the X86_PLATFORM_DEVICES
  dependency.
- Move ASUS_WMI, ASUS_NB_WMI, and ASUS_ARMOURY outside the
  X86_PLATFORM_DEVICES dependency to allow them to be selected on
  non-x86 architectures such as ARM64.
- Update drivers/platform/Kconfig, drivers/platform/Makefile, and
  MAINTAINERS for the new location.

 MAINTAINERS                                   |   8 +-
 drivers/platform/Kconfig                      |   2 +
 drivers/platform/Makefile                     |   1 +
 drivers/platform/asus/Kconfig                 | 163 ++++++++++++++++++
 drivers/platform/asus/Makefile                |  15 ++
 drivers/platform/{x86 => asus}/asus-armoury.c |   0
 drivers/platform/{x86 => asus}/asus-armoury.h |   0
 drivers/platform/{x86 => asus}/asus-laptop.c  |   0
 drivers/platform/{x86 => asus}/asus-nb-wmi.c  |   0
 .../platform/{x86 => asus}/asus-tf103c-dock.c |   0
 .../platform/{x86 => asus}/asus-wireless.c    |   0
 drivers/platform/{x86 => asus}/asus-wmi.c     |   0
 drivers/platform/{x86 => asus}/asus-wmi.h     |   0
 drivers/platform/{x86 => asus}/eeepc-laptop.c |   0
 drivers/platform/{x86 => asus}/eeepc-wmi.c    |   0
 drivers/platform/x86/Kconfig                  | 152 ----------------
 drivers/platform/x86/Makefile                 |  10 --
 17 files changed, 185 insertions(+), 166 deletions(-)
 create mode 100644 drivers/platform/asus/Kconfig
 create mode 100644 drivers/platform/asus/Makefile
 rename drivers/platform/{x86 => asus}/asus-armoury.c (100%)
 rename drivers/platform/{x86 => asus}/asus-armoury.h (100%)
 rename drivers/platform/{x86 => asus}/asus-laptop.c (100%)
 rename drivers/platform/{x86 => asus}/asus-nb-wmi.c (100%)
 rename drivers/platform/{x86 => asus}/asus-tf103c-dock.c (100%)
 rename drivers/platform/{x86 => asus}/asus-wireless.c (100%)
 rename drivers/platform/{x86 => asus}/asus-wmi.c (100%)
 rename drivers/platform/{x86 => asus}/asus-wmi.h (100%)
 rename drivers/platform/{x86 => asus}/eeepc-laptop.c (100%)
 rename drivers/platform/{x86 => asus}/eeepc-wmi.c (100%)

diff --git a/MAINTAINERS b/MAINTAINERS
index 93abbb315065..832d2528be10 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -4226,15 +4226,15 @@ M:	Denis Benato <denis.benato@linux.dev>
 L:	platform-driver-x86@vger.kernel.org
 S:	Maintained
 W:	https://asus-linux.org/
-F:	drivers/platform/x86/asus*.c
-F:	drivers/platform/x86/eeepc*.c
+F:	drivers/platform/asus/asus*.c
+F:	drivers/platform/asus/eeepc*.c
 
 ASUS TF103C DOCK DRIVER
 M:	Hans de Goede <hansg@kernel.org>
 L:	platform-driver-x86@vger.kernel.org
 S:	Maintained
 T:	git git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git
-F:	drivers/platform/x86/asus-tf103c-dock.c
+F:	drivers/platform/asus/asus-tf103c-dock.c
 
 ASUS ROG RYUJIN AIO HARDWARE MONITOR DRIVER
 M:	Aleksa Savic <savicaleksa83@gmail.com>
@@ -4246,7 +4246,7 @@ ASUS WIRELESS RADIO CONTROL DRIVER
 M:	João Paulo Rechi Vita <jprvita@gmail.com>
 L:	platform-driver-x86@vger.kernel.org
 S:	Maintained
-F:	drivers/platform/x86/asus-wireless.c
+F:	drivers/platform/asus/asus-wireless.c
 
 ASUS WMI HARDWARE MONITOR DRIVER
 M:	Ed Brindley <kernel@maidavale.org>
diff --git a/drivers/platform/Kconfig b/drivers/platform/Kconfig
index 312788f249c9..aa004b0e4406 100644
--- a/drivers/platform/Kconfig
+++ b/drivers/platform/Kconfig
@@ -22,3 +22,5 @@ source "drivers/platform/arm64/Kconfig"
 source "drivers/platform/raspberrypi/Kconfig"
 
 source "drivers/platform/wmi/Kconfig"
+
+source "drivers/platform/asus/Kconfig"
diff --git a/drivers/platform/Makefile b/drivers/platform/Makefile
index fa322e7f8716..34e694e6da14 100644
--- a/drivers/platform/Makefile
+++ b/drivers/platform/Makefile
@@ -15,3 +15,4 @@ obj-$(CONFIG_SURFACE_PLATFORMS)	+= surface/
 obj-$(CONFIG_ARM64_PLATFORM_DEVICES)	+= arm64/
 obj-$(CONFIG_BCM2835_VCHIQ)	+= raspberrypi/
 obj-$(CONFIG_ACPI_WMI)		+= wmi/
+obj-y				+= asus/
diff --git a/drivers/platform/asus/Kconfig b/drivers/platform/asus/Kconfig
new file mode 100644
index 000000000000..984f25ee84f5
--- /dev/null
+++ b/drivers/platform/asus/Kconfig
@@ -0,0 +1,163 @@
+# SPDX-License-Identifier: GPL-2.0-only
+#
+# Asus Platform Specific Drivers
+#
+
+if X86_PLATFORM_DEVICES
+
+config ASUS_LAPTOP
+	tristate "Asus Laptop Extras"
+	depends on ACPI
+	select LEDS_CLASS
+	select NEW_LEDS
+	depends on BACKLIGHT_CLASS_DEVICE
+	depends on INPUT
+	depends on RFKILL || RFKILL = n
+	depends on ACPI_VIDEO || ACPI_VIDEO = n
+	select INPUT_SPARSEKMAP
+	help
+	  This is a driver for Asus laptops, Lenovo SL and the Pegatron
+	  Lucid tablet. It may also support some MEDION, JVC or VICTOR
+	  laptops. It makes all the extra buttons generate standard
+	  ACPI events and input events, and on the Lucid the built-in
+	  accelerometer appears as an input device.  It also adds
+	  support for video output switching, LCD backlight control,
+	  Bluetooth and Wlan control, and most importantly, allows you
+	  to blink those fancy LEDs.
+
+	  For more information see <http://acpi4asus.sf.net>.
+
+	  If you have an ACPI-compatible ASUS laptop, say Y or M here.
+
+config ASUS_WIRELESS
+	tristate "Asus Wireless Radio Control Driver"
+	depends on ACPI
+	depends on INPUT
+	select NEW_LEDS
+	select LEDS_CLASS
+	help
+	  The Asus Wireless Radio Control handles the airplane mode hotkey
+	  present on some Asus laptops.
+
+	  Say Y or M here if you have an ASUS notebook with an airplane mode
+	  hotkey.
+
+	  If you choose to compile this driver as a module the module will be
+	  called asus-wireless.
+
+config ASUS_TF103C_DOCK
+	tristate "Asus TF103C 2-in-1 keyboard dock"
+	depends on ACPI
+	depends on I2C
+	depends on INPUT
+	depends on HID
+	depends on GPIOLIB
+	help
+	  This is a driver for the keyboard, touchpad and USB port of the
+	  keyboard dock for the Asus TF103C 2-in-1 tablet.
+
+	  This keyboard dock has its own I2C attached embedded controller
+	  and the keyboard and touchpad are also connected over I2C,
+	  instead of using the usual USB connection. This means that the
+	  keyboard dock requires this special driver to function.
+
+	  If you have an Asus TF103C tablet say Y or M here, for a generic x86
+	  distro config say M here.
+
+config EEEPC_WMI
+	tristate "Eee PC WMI Driver"
+	depends on ASUS_WMI
+	help
+	  This is a driver for newer Eee PC laptops. It adds extra features
+	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
+
+	  For more information, see
+	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
+
+	  If you have an ACPI-WMI compatible Eee PC laptop (>= 1000), say Y or M
+	  here.
+
+config EEEPC_LAPTOP
+	tristate "Eee PC Hotkey Driver"
+	depends on ACPI_EC
+	depends on INPUT
+	depends on RFKILL || RFKILL = n
+	depends on ACPI_VIDEO || ACPI_VIDEO = n
+	depends on HOTPLUG_PCI
+	depends on BACKLIGHT_CLASS_DEVICE
+	select HWMON
+	select LEDS_CLASS
+	select NEW_LEDS
+	select INPUT_SPARSEKMAP
+	help
+	  This driver supports the Fn-Fx keys on Eee PC laptops.
+
+	  It  also gives access to some extra laptop functionalities like
+	  Bluetooth, backlight and allows powering on/off some other
+	  devices.
+
+	  If you have an Eee PC laptop, say Y or M here. If this driver
+	  doesn't work on your Eee PC, try eeepc-wmi instead.
+
+endif # X86_PLATFORM_DEVICES
+
+config ASUS_ARMOURY
+	tristate "ASUS Armoury driver"
+	depends on ASUS_WMI
+	select FW_ATTR_CLASS
+	help
+	  Say Y here if you have a WMI aware Asus machine and would like to use the
+	  firmware_attributes API to control various settings typically exposed in
+	  the ASUS Armoury Crate application available on Windows.
+
+	  To compile this driver as a module, choose M here: the module will
+	  be called asus-armoury.
+
+config ASUS_WMI
+	tristate "ASUS WMI Driver"
+	depends on ACPI_WMI
+	depends on ACPI_BATTERY
+	depends on INPUT
+	depends on HWMON
+	depends on BACKLIGHT_CLASS_DEVICE
+	depends on RFKILL || RFKILL = n
+	depends on HOTPLUG_PCI
+	depends on ACPI_VIDEO || ACPI_VIDEO = n
+	depends on SERIO_I8042 || SERIO_I8042 = n
+	select INPUT_SPARSEKMAP
+	select LEDS_CLASS
+	select NEW_LEDS
+	select ACPI_PLATFORM_PROFILE
+	help
+	  Say Y here if you have a WMI aware Asus laptop (like Eee PCs or new
+	  Asus Notebooks).
+
+	  To compile this driver as a module, choose M here: the module will
+	  be called asus-wmi.
+
+config ASUS_WMI_DEPRECATED_ATTRS
+	bool "BIOS option support in WMI platform (DEPRECATED)"
+	depends on ASUS_WMI
+	default y
+	help
+	  Say Y to expose the configurable BIOS options through the asus-wmi
+	  driver.
+
+	  This can be used with or without the asus-armoury driver which
+	  has the same attributes, but more, and better features.
+
+config ASUS_NB_WMI
+	tristate "Asus Notebook WMI Driver"
+	depends on ASUS_WMI
+	help
+	  This is a driver for newer Asus notebooks. It adds extra features
+	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
+
+	  For more information, see
+	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
+
+	  If you have an ACPI-WMI compatible Asus Notebook, say Y or M
+	  here.
+
+
+
diff --git a/drivers/platform/asus/Makefile b/drivers/platform/asus/Makefile
new file mode 100644
index 000000000000..d3b5c4fc2ca6
--- /dev/null
+++ b/drivers/platform/asus/Makefile
@@ -0,0 +1,15 @@
+# SPDX-License-Identifier: GPL-2.0
+#
+# Makefile for linux/drivers/platform/asus
+# Asus Platform-Specific Drivers
+#
+
+obj-$(CONFIG_ASUS_LAPTOP)	+= asus-laptop.o
+obj-$(CONFIG_ASUS_WIRELESS)	+= asus-wireless.o
+obj-$(CONFIG_ASUS_ARMOURY)	+= asus-armoury.o
+obj-$(CONFIG_ASUS_WMI)		+= asus-wmi.o
+obj-$(CONFIG_ASUS_NB_WMI)	+= asus-nb-wmi.o
+obj-$(CONFIG_ASUS_TF103C_DOCK)	+= asus-tf103c-dock.o
+obj-$(CONFIG_EEEPC_LAPTOP)	+= eeepc-laptop.o
+obj-$(CONFIG_EEEPC_WMI)		+= eeepc-wmi.o
+
diff --git a/drivers/platform/x86/asus-armoury.c b/drivers/platform/asus/asus-armoury.c
similarity index 100%
rename from drivers/platform/x86/asus-armoury.c
rename to drivers/platform/asus/asus-armoury.c
diff --git a/drivers/platform/x86/asus-armoury.h b/drivers/platform/asus/asus-armoury.h
similarity index 100%
rename from drivers/platform/x86/asus-armoury.h
rename to drivers/platform/asus/asus-armoury.h
diff --git a/drivers/platform/x86/asus-laptop.c b/drivers/platform/asus/asus-laptop.c
similarity index 100%
rename from drivers/platform/x86/asus-laptop.c
rename to drivers/platform/asus/asus-laptop.c
diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/asus/asus-nb-wmi.c
similarity index 100%
rename from drivers/platform/x86/asus-nb-wmi.c
rename to drivers/platform/asus/asus-nb-wmi.c
diff --git a/drivers/platform/x86/asus-tf103c-dock.c b/drivers/platform/asus/asus-tf103c-dock.c
similarity index 100%
rename from drivers/platform/x86/asus-tf103c-dock.c
rename to drivers/platform/asus/asus-tf103c-dock.c
diff --git a/drivers/platform/x86/asus-wireless.c b/drivers/platform/asus/asus-wireless.c
similarity index 100%
rename from drivers/platform/x86/asus-wireless.c
rename to drivers/platform/asus/asus-wireless.c
diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/asus/asus-wmi.c
similarity index 100%
rename from drivers/platform/x86/asus-wmi.c
rename to drivers/platform/asus/asus-wmi.c
diff --git a/drivers/platform/x86/asus-wmi.h b/drivers/platform/asus/asus-wmi.h
similarity index 100%
rename from drivers/platform/x86/asus-wmi.h
rename to drivers/platform/asus/asus-wmi.h
diff --git a/drivers/platform/x86/eeepc-laptop.c b/drivers/platform/asus/eeepc-laptop.c
similarity index 100%
rename from drivers/platform/x86/eeepc-laptop.c
rename to drivers/platform/asus/eeepc-laptop.c
diff --git a/drivers/platform/x86/eeepc-wmi.c b/drivers/platform/asus/eeepc-wmi.c
similarity index 100%
rename from drivers/platform/x86/eeepc-wmi.c
rename to drivers/platform/asus/eeepc-wmi.c
diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
index 9ce384e0475e..b2c6cc923694 100644
--- a/drivers/platform/x86/Kconfig
+++ b/drivers/platform/x86/Kconfig
@@ -213,123 +213,6 @@ config APPLE_GMUX
 	  graphics as well as the backlight. Currently only backlight
 	  control is supported by the driver.
 
-config ASUS_LAPTOP
-	tristate "Asus Laptop Extras"
-	depends on ACPI
-	select LEDS_CLASS
-	select NEW_LEDS
-	depends on BACKLIGHT_CLASS_DEVICE
-	depends on INPUT
-	depends on RFKILL || RFKILL = n
-	depends on ACPI_VIDEO || ACPI_VIDEO = n
-	select INPUT_SPARSEKMAP
-	help
-	  This is a driver for Asus laptops, Lenovo SL and the Pegatron
-	  Lucid tablet. It may also support some MEDION, JVC or VICTOR
-	  laptops. It makes all the extra buttons generate standard
-	  ACPI events and input events, and on the Lucid the built-in
-	  accelerometer appears as an input device.  It also adds
-	  support for video output switching, LCD backlight control,
-	  Bluetooth and Wlan control, and most importantly, allows you
-	  to blink those fancy LEDs.
-
-	  For more information see <http://acpi4asus.sf.net>.
-
-	  If you have an ACPI-compatible ASUS laptop, say Y or M here.
-
-config ASUS_WIRELESS
-	tristate "Asus Wireless Radio Control Driver"
-	depends on ACPI
-	depends on INPUT
-	select NEW_LEDS
-	select LEDS_CLASS
-	help
-	  The Asus Wireless Radio Control handles the airplane mode hotkey
-	  present on some Asus laptops.
-
-	  Say Y or M here if you have an ASUS notebook with an airplane mode
-	  hotkey.
-
-	  If you choose to compile this driver as a module the module will be
-	  called asus-wireless.
-
-config ASUS_ARMOURY
-	tristate "ASUS Armoury driver"
-	depends on ASUS_WMI
-	select FW_ATTR_CLASS
-	help
-	  Say Y here if you have a WMI aware Asus machine and would like to use the
-	  firmware_attributes API to control various settings typically exposed in
-	  the ASUS Armoury Crate application available on Windows.
-
-	  To compile this driver as a module, choose M here: the module will
-	  be called asus-armoury.
-
-config ASUS_WMI
-	tristate "ASUS WMI Driver"
-	depends on ACPI_WMI
-	depends on ACPI_BATTERY
-	depends on INPUT
-	depends on HWMON
-	depends on BACKLIGHT_CLASS_DEVICE
-	depends on RFKILL || RFKILL = n
-	depends on HOTPLUG_PCI
-	depends on ACPI_VIDEO || ACPI_VIDEO = n
-	depends on SERIO_I8042 || SERIO_I8042 = n
-	select INPUT_SPARSEKMAP
-	select LEDS_CLASS
-	select NEW_LEDS
-	select ACPI_PLATFORM_PROFILE
-	help
-	  Say Y here if you have a WMI aware Asus laptop (like Eee PCs or new
-	  Asus Notebooks).
-
-	  To compile this driver as a module, choose M here: the module will
-	  be called asus-wmi.
-
-config ASUS_WMI_DEPRECATED_ATTRS
-	bool "BIOS option support in WMI platform (DEPRECATED)"
-	depends on ASUS_WMI
-	default y
-	help
-	  Say Y to expose the configurable BIOS options through the asus-wmi
-	  driver.
-
-	  This can be used with or without the asus-armoury driver which
-	  has the same attributes, but more, and better features.
-
-config ASUS_NB_WMI
-	tristate "Asus Notebook WMI Driver"
-	depends on ASUS_WMI
-	help
-	  This is a driver for newer Asus notebooks. It adds extra features
-	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
-
-	  For more information, see
-	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
-
-	  If you have an ACPI-WMI compatible Asus Notebook, say Y or M
-	  here.
-
-config ASUS_TF103C_DOCK
-	tristate "Asus TF103C 2-in-1 keyboard dock"
-	depends on ACPI
-	depends on I2C
-	depends on INPUT
-	depends on HID
-	depends on GPIOLIB
-	help
-	  This is a driver for the keyboard, touchpad and USB port of the
-	  keyboard dock for the Asus TF103C 2-in-1 tablet.
-
-	  This keyboard dock has its own I2C attached embedded controller
-	  and the keyboard and touchpad are also connected over I2C,
-	  instead of using the usual USB connection. This means that the
-	  keyboard dock requires this special driver to function.
-
-	  If you have an Asus TF103C tablet say Y or M here, for a generic x86
-	  distro config say M here.
-
 config AYANEO_EC
 	tristate "Ayaneo EC platform control"
 	depends on DMI
@@ -357,41 +240,6 @@ config MERAKI_MX100
 	  To compile this driver as a module, choose M here: the module
 	  will be called meraki-mx100.
 
-config EEEPC_LAPTOP
-	tristate "Eee PC Hotkey Driver"
-	depends on ACPI_EC
-	depends on INPUT
-	depends on RFKILL || RFKILL = n
-	depends on ACPI_VIDEO || ACPI_VIDEO = n
-	depends on HOTPLUG_PCI
-	depends on BACKLIGHT_CLASS_DEVICE
-	select HWMON
-	select LEDS_CLASS
-	select NEW_LEDS
-	select INPUT_SPARSEKMAP
-	help
-	  This driver supports the Fn-Fx keys on Eee PC laptops.
-
-	  It  also gives access to some extra laptop functionalities like
-	  Bluetooth, backlight and allows powering on/off some other
-	  devices.
-
-	  If you have an Eee PC laptop, say Y or M here. If this driver
-	  doesn't work on your Eee PC, try eeepc-wmi instead.
-
-config EEEPC_WMI
-	tristate "Eee PC WMI Driver"
-	depends on ASUS_WMI
-	help
-	  This is a driver for newer Eee PC laptops. It adds extra features
-	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
-
-	  For more information, see
-	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
-
-	  If you have an ACPI-WMI compatible Eee PC laptop (>= 1000), say Y or M
-	  here.
-
 source "drivers/platform/x86/dell/Kconfig"
 
 config AMILO_RFKILL
diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile
index 229057234d00..88f45e03ee19 100644
--- a/drivers/platform/x86/Makefile
+++ b/drivers/platform/x86/Makefile
@@ -28,16 +28,6 @@ obj-$(CONFIG_ADV_SWBUTTON)	+= adv_swbutton.o
 # Apple
 obj-$(CONFIG_APPLE_GMUX)	+= apple-gmux.o
 
-# ASUS
-obj-$(CONFIG_ASUS_LAPTOP)	+= asus-laptop.o
-obj-$(CONFIG_ASUS_WIRELESS)	+= asus-wireless.o
-obj-$(CONFIG_ASUS_ARMOURY)	+= asus-armoury.o
-obj-$(CONFIG_ASUS_WMI)		+= asus-wmi.o
-obj-$(CONFIG_ASUS_NB_WMI)	+= asus-nb-wmi.o
-obj-$(CONFIG_ASUS_TF103C_DOCK)	+= asus-tf103c-dock.o
-obj-$(CONFIG_EEEPC_LAPTOP)	+= eeepc-laptop.o
-obj-$(CONFIG_EEEPC_WMI)		+= eeepc-wmi.o
-
 # Ayaneo
 obj-$(CONFIG_AYANEO_EC)		+= ayaneo-ec.o
 
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* Re: [PATCH v4] platform/asus: Move ASUS platform drivers out of drivers/platform/x86
  2026-11-06  3:35         ` [PATCH v4] platform/asus: Move ASUS platform drivers out of drivers/platform/x86 chipang_kao
@ 2026-11-08 14:16           ` Denis Benato
  2026-11-09 12:21           ` Ilpo Järvinen
  1 sibling, 0 replies; 18+ messages in thread
From: Denis Benato @ 2026-11-08 14:16 UTC (permalink / raw)
  To: chipang_kao, ilpo.jarvinen
  Cc: W_Armin, corentin.chary, hansg, linux-kernel, luke,
	platform-driver-x86, scardracs, chipang_kao


On 11/6/26 04:35, chipang_kao wrote:
> ASUS WMI and related platform drivers currently reside under
> drivers/platform/x86/. However, with the emergence of ARM64 devices
> utilizing ACPI WMI interfaces, maintaining these drivers exclusively
> under x86 creates unnecessary architectural restrictions and Kconfig
> duplications.
>
> To allow non-x86 architectures (such as ARM64) to select and build
> the applicable ASUS platform drivers:
> 1. Relocate all ASUS platform drivers and headers from
>    drivers/platform/x86/ to drivers/platform/asus/.
> 2. Create dedicated Kconfig and Makefile under drivers/platform/asus/.
> 3. Update drivers/platform/x86/Kconfig to remove duplicated entries.

Hi Chipang,

Thanks for this!

Reviewed-by: Denis Benato <denis.benato@linux.dev>

> Signed-off-by: chipang_kao <chipang_kao@asus.com>
> ---
> Changes in v4:
> - Move all ASUS platform drivers and headers from
>   drivers/platform/x86/ to drivers/platform/asus/.
> - Add a dedicated Kconfig and Makefile under drivers/platform/asus/.
> - Keep x86-specific drivers under the X86_PLATFORM_DEVICES
>   dependency.
> - Move ASUS_WMI, ASUS_NB_WMI, and ASUS_ARMOURY outside the
>   X86_PLATFORM_DEVICES dependency to allow them to be selected on
>   non-x86 architectures such as ARM64.
> - Update drivers/platform/Kconfig, drivers/platform/Makefile, and
>   MAINTAINERS for the new location.
>
>  MAINTAINERS                                   |   8 +-
>  drivers/platform/Kconfig                      |   2 +
>  drivers/platform/Makefile                     |   1 +
>  drivers/platform/asus/Kconfig                 | 163 ++++++++++++++++++
>  drivers/platform/asus/Makefile                |  15 ++
>  drivers/platform/{x86 => asus}/asus-armoury.c |   0
>  drivers/platform/{x86 => asus}/asus-armoury.h |   0
>  drivers/platform/{x86 => asus}/asus-laptop.c  |   0
>  drivers/platform/{x86 => asus}/asus-nb-wmi.c  |   0
>  .../platform/{x86 => asus}/asus-tf103c-dock.c |   0
>  .../platform/{x86 => asus}/asus-wireless.c    |   0
>  drivers/platform/{x86 => asus}/asus-wmi.c     |   0
>  drivers/platform/{x86 => asus}/asus-wmi.h     |   0
>  drivers/platform/{x86 => asus}/eeepc-laptop.c |   0
>  drivers/platform/{x86 => asus}/eeepc-wmi.c    |   0
>  drivers/platform/x86/Kconfig                  | 152 ----------------
>  drivers/platform/x86/Makefile                 |  10 --
>  17 files changed, 185 insertions(+), 166 deletions(-)
>  create mode 100644 drivers/platform/asus/Kconfig
>  create mode 100644 drivers/platform/asus/Makefile
>  rename drivers/platform/{x86 => asus}/asus-armoury.c (100%)
>  rename drivers/platform/{x86 => asus}/asus-armoury.h (100%)
>  rename drivers/platform/{x86 => asus}/asus-laptop.c (100%)
>  rename drivers/platform/{x86 => asus}/asus-nb-wmi.c (100%)
>  rename drivers/platform/{x86 => asus}/asus-tf103c-dock.c (100%)
>  rename drivers/platform/{x86 => asus}/asus-wireless.c (100%)
>  rename drivers/platform/{x86 => asus}/asus-wmi.c (100%)
>  rename drivers/platform/{x86 => asus}/asus-wmi.h (100%)
>  rename drivers/platform/{x86 => asus}/eeepc-laptop.c (100%)
>  rename drivers/platform/{x86 => asus}/eeepc-wmi.c (100%)
>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 93abbb315065..832d2528be10 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -4226,15 +4226,15 @@ M:	Denis Benato <denis.benato@linux.dev>
>  L:	platform-driver-x86@vger.kernel.org
>  S:	Maintained
>  W:	https://asus-linux.org/
> -F:	drivers/platform/x86/asus*.c
> -F:	drivers/platform/x86/eeepc*.c
> +F:	drivers/platform/asus/asus*.c
> +F:	drivers/platform/asus/eeepc*.c
>  
>  ASUS TF103C DOCK DRIVER
>  M:	Hans de Goede <hansg@kernel.org>
>  L:	platform-driver-x86@vger.kernel.org
>  S:	Maintained
>  T:	git git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git
> -F:	drivers/platform/x86/asus-tf103c-dock.c
> +F:	drivers/platform/asus/asus-tf103c-dock.c
>  
>  ASUS ROG RYUJIN AIO HARDWARE MONITOR DRIVER
>  M:	Aleksa Savic <savicaleksa83@gmail.com>
> @@ -4246,7 +4246,7 @@ ASUS WIRELESS RADIO CONTROL DRIVER
>  M:	João Paulo Rechi Vita <jprvita@gmail.com>
>  L:	platform-driver-x86@vger.kernel.org
>  S:	Maintained
> -F:	drivers/platform/x86/asus-wireless.c
> +F:	drivers/platform/asus/asus-wireless.c
>  
>  ASUS WMI HARDWARE MONITOR DRIVER
>  M:	Ed Brindley <kernel@maidavale.org>
> diff --git a/drivers/platform/Kconfig b/drivers/platform/Kconfig
> index 312788f249c9..aa004b0e4406 100644
> --- a/drivers/platform/Kconfig
> +++ b/drivers/platform/Kconfig
> @@ -22,3 +22,5 @@ source "drivers/platform/arm64/Kconfig"
>  source "drivers/platform/raspberrypi/Kconfig"
>  
>  source "drivers/platform/wmi/Kconfig"
> +
> +source "drivers/platform/asus/Kconfig"
> diff --git a/drivers/platform/Makefile b/drivers/platform/Makefile
> index fa322e7f8716..34e694e6da14 100644
> --- a/drivers/platform/Makefile
> +++ b/drivers/platform/Makefile
> @@ -15,3 +15,4 @@ obj-$(CONFIG_SURFACE_PLATFORMS)	+= surface/
>  obj-$(CONFIG_ARM64_PLATFORM_DEVICES)	+= arm64/
>  obj-$(CONFIG_BCM2835_VCHIQ)	+= raspberrypi/
>  obj-$(CONFIG_ACPI_WMI)		+= wmi/
> +obj-y				+= asus/
> diff --git a/drivers/platform/asus/Kconfig b/drivers/platform/asus/Kconfig
> new file mode 100644
> index 000000000000..984f25ee84f5
> --- /dev/null
> +++ b/drivers/platform/asus/Kconfig
> @@ -0,0 +1,163 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +#
> +# Asus Platform Specific Drivers
> +#
> +
> +if X86_PLATFORM_DEVICES
> +
> +config ASUS_LAPTOP
> +	tristate "Asus Laptop Extras"
> +	depends on ACPI
> +	select LEDS_CLASS
> +	select NEW_LEDS
> +	depends on BACKLIGHT_CLASS_DEVICE
> +	depends on INPUT
> +	depends on RFKILL || RFKILL = n
> +	depends on ACPI_VIDEO || ACPI_VIDEO = n
> +	select INPUT_SPARSEKMAP
> +	help
> +	  This is a driver for Asus laptops, Lenovo SL and the Pegatron
> +	  Lucid tablet. It may also support some MEDION, JVC or VICTOR
> +	  laptops. It makes all the extra buttons generate standard
> +	  ACPI events and input events, and on the Lucid the built-in
> +	  accelerometer appears as an input device.  It also adds
> +	  support for video output switching, LCD backlight control,
> +	  Bluetooth and Wlan control, and most importantly, allows you
> +	  to blink those fancy LEDs.
> +
> +	  For more information see <http://acpi4asus.sf.net>.
> +
> +	  If you have an ACPI-compatible ASUS laptop, say Y or M here.
> +
> +config ASUS_WIRELESS
> +	tristate "Asus Wireless Radio Control Driver"
> +	depends on ACPI
> +	depends on INPUT
> +	select NEW_LEDS
> +	select LEDS_CLASS
> +	help
> +	  The Asus Wireless Radio Control handles the airplane mode hotkey
> +	  present on some Asus laptops.
> +
> +	  Say Y or M here if you have an ASUS notebook with an airplane mode
> +	  hotkey.
> +
> +	  If you choose to compile this driver as a module the module will be
> +	  called asus-wireless.
> +
> +config ASUS_TF103C_DOCK
> +	tristate "Asus TF103C 2-in-1 keyboard dock"
> +	depends on ACPI
> +	depends on I2C
> +	depends on INPUT
> +	depends on HID
> +	depends on GPIOLIB
> +	help
> +	  This is a driver for the keyboard, touchpad and USB port of the
> +	  keyboard dock for the Asus TF103C 2-in-1 tablet.
> +
> +	  This keyboard dock has its own I2C attached embedded controller
> +	  and the keyboard and touchpad are also connected over I2C,
> +	  instead of using the usual USB connection. This means that the
> +	  keyboard dock requires this special driver to function.
> +
> +	  If you have an Asus TF103C tablet say Y or M here, for a generic x86
> +	  distro config say M here.
> +
> +config EEEPC_WMI
> +	tristate "Eee PC WMI Driver"
> +	depends on ASUS_WMI
> +	help
> +	  This is a driver for newer Eee PC laptops. It adds extra features
> +	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
> +
> +	  For more information, see
> +	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
> +
> +	  If you have an ACPI-WMI compatible Eee PC laptop (>= 1000), say Y or M
> +	  here.
> +
> +config EEEPC_LAPTOP
> +	tristate "Eee PC Hotkey Driver"
> +	depends on ACPI_EC
> +	depends on INPUT
> +	depends on RFKILL || RFKILL = n
> +	depends on ACPI_VIDEO || ACPI_VIDEO = n
> +	depends on HOTPLUG_PCI
> +	depends on BACKLIGHT_CLASS_DEVICE
> +	select HWMON
> +	select LEDS_CLASS
> +	select NEW_LEDS
> +	select INPUT_SPARSEKMAP
> +	help
> +	  This driver supports the Fn-Fx keys on Eee PC laptops.
> +
> +	  It  also gives access to some extra laptop functionalities like
> +	  Bluetooth, backlight and allows powering on/off some other
> +	  devices.
> +
> +	  If you have an Eee PC laptop, say Y or M here. If this driver
> +	  doesn't work on your Eee PC, try eeepc-wmi instead.
> +
> +endif # X86_PLATFORM_DEVICES
> +
> +config ASUS_ARMOURY
> +	tristate "ASUS Armoury driver"
> +	depends on ASUS_WMI
> +	select FW_ATTR_CLASS
> +	help
> +	  Say Y here if you have a WMI aware Asus machine and would like to use the
> +	  firmware_attributes API to control various settings typically exposed in
> +	  the ASUS Armoury Crate application available on Windows.
> +
> +	  To compile this driver as a module, choose M here: the module will
> +	  be called asus-armoury.
> +
> +config ASUS_WMI
> +	tristate "ASUS WMI Driver"
> +	depends on ACPI_WMI
> +	depends on ACPI_BATTERY
> +	depends on INPUT
> +	depends on HWMON
> +	depends on BACKLIGHT_CLASS_DEVICE
> +	depends on RFKILL || RFKILL = n
> +	depends on HOTPLUG_PCI
> +	depends on ACPI_VIDEO || ACPI_VIDEO = n
> +	depends on SERIO_I8042 || SERIO_I8042 = n
> +	select INPUT_SPARSEKMAP
> +	select LEDS_CLASS
> +	select NEW_LEDS
> +	select ACPI_PLATFORM_PROFILE
> +	help
> +	  Say Y here if you have a WMI aware Asus laptop (like Eee PCs or new
> +	  Asus Notebooks).
> +
> +	  To compile this driver as a module, choose M here: the module will
> +	  be called asus-wmi.
> +
> +config ASUS_WMI_DEPRECATED_ATTRS
> +	bool "BIOS option support in WMI platform (DEPRECATED)"
> +	depends on ASUS_WMI
> +	default y
> +	help
> +	  Say Y to expose the configurable BIOS options through the asus-wmi
> +	  driver.
> +
> +	  This can be used with or without the asus-armoury driver which
> +	  has the same attributes, but more, and better features.
> +
> +config ASUS_NB_WMI
> +	tristate "Asus Notebook WMI Driver"
> +	depends on ASUS_WMI
> +	help
> +	  This is a driver for newer Asus notebooks. It adds extra features
> +	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
> +
> +	  For more information, see
> +	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
> +
> +	  If you have an ACPI-WMI compatible Asus Notebook, say Y or M
> +	  here.
> +
> +
> +
> diff --git a/drivers/platform/asus/Makefile b/drivers/platform/asus/Makefile
> new file mode 100644
> index 000000000000..d3b5c4fc2ca6
> --- /dev/null
> +++ b/drivers/platform/asus/Makefile
> @@ -0,0 +1,15 @@
> +# SPDX-License-Identifier: GPL-2.0
> +#
> +# Makefile for linux/drivers/platform/asus
> +# Asus Platform-Specific Drivers
> +#
> +
> +obj-$(CONFIG_ASUS_LAPTOP)	+= asus-laptop.o
> +obj-$(CONFIG_ASUS_WIRELESS)	+= asus-wireless.o
> +obj-$(CONFIG_ASUS_ARMOURY)	+= asus-armoury.o
> +obj-$(CONFIG_ASUS_WMI)		+= asus-wmi.o
> +obj-$(CONFIG_ASUS_NB_WMI)	+= asus-nb-wmi.o
> +obj-$(CONFIG_ASUS_TF103C_DOCK)	+= asus-tf103c-dock.o
> +obj-$(CONFIG_EEEPC_LAPTOP)	+= eeepc-laptop.o
> +obj-$(CONFIG_EEEPC_WMI)		+= eeepc-wmi.o
> +
> diff --git a/drivers/platform/x86/asus-armoury.c b/drivers/platform/asus/asus-armoury.c
> similarity index 100%
> rename from drivers/platform/x86/asus-armoury.c
> rename to drivers/platform/asus/asus-armoury.c
> diff --git a/drivers/platform/x86/asus-armoury.h b/drivers/platform/asus/asus-armoury.h
> similarity index 100%
> rename from drivers/platform/x86/asus-armoury.h
> rename to drivers/platform/asus/asus-armoury.h
> diff --git a/drivers/platform/x86/asus-laptop.c b/drivers/platform/asus/asus-laptop.c
> similarity index 100%
> rename from drivers/platform/x86/asus-laptop.c
> rename to drivers/platform/asus/asus-laptop.c
> diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/asus/asus-nb-wmi.c
> similarity index 100%
> rename from drivers/platform/x86/asus-nb-wmi.c
> rename to drivers/platform/asus/asus-nb-wmi.c
> diff --git a/drivers/platform/x86/asus-tf103c-dock.c b/drivers/platform/asus/asus-tf103c-dock.c
> similarity index 100%
> rename from drivers/platform/x86/asus-tf103c-dock.c
> rename to drivers/platform/asus/asus-tf103c-dock.c
> diff --git a/drivers/platform/x86/asus-wireless.c b/drivers/platform/asus/asus-wireless.c
> similarity index 100%
> rename from drivers/platform/x86/asus-wireless.c
> rename to drivers/platform/asus/asus-wireless.c
> diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/asus/asus-wmi.c
> similarity index 100%
> rename from drivers/platform/x86/asus-wmi.c
> rename to drivers/platform/asus/asus-wmi.c
> diff --git a/drivers/platform/x86/asus-wmi.h b/drivers/platform/asus/asus-wmi.h
> similarity index 100%
> rename from drivers/platform/x86/asus-wmi.h
> rename to drivers/platform/asus/asus-wmi.h
> diff --git a/drivers/platform/x86/eeepc-laptop.c b/drivers/platform/asus/eeepc-laptop.c
> similarity index 100%
> rename from drivers/platform/x86/eeepc-laptop.c
> rename to drivers/platform/asus/eeepc-laptop.c
> diff --git a/drivers/platform/x86/eeepc-wmi.c b/drivers/platform/asus/eeepc-wmi.c
> similarity index 100%
> rename from drivers/platform/x86/eeepc-wmi.c
> rename to drivers/platform/asus/eeepc-wmi.c
> diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
> index 9ce384e0475e..b2c6cc923694 100644
> --- a/drivers/platform/x86/Kconfig
> +++ b/drivers/platform/x86/Kconfig
> @@ -213,123 +213,6 @@ config APPLE_GMUX
>  	  graphics as well as the backlight. Currently only backlight
>  	  control is supported by the driver.
>  
> -config ASUS_LAPTOP
> -	tristate "Asus Laptop Extras"
> -	depends on ACPI
> -	select LEDS_CLASS
> -	select NEW_LEDS
> -	depends on BACKLIGHT_CLASS_DEVICE
> -	depends on INPUT
> -	depends on RFKILL || RFKILL = n
> -	depends on ACPI_VIDEO || ACPI_VIDEO = n
> -	select INPUT_SPARSEKMAP
> -	help
> -	  This is a driver for Asus laptops, Lenovo SL and the Pegatron
> -	  Lucid tablet. It may also support some MEDION, JVC or VICTOR
> -	  laptops. It makes all the extra buttons generate standard
> -	  ACPI events and input events, and on the Lucid the built-in
> -	  accelerometer appears as an input device.  It also adds
> -	  support for video output switching, LCD backlight control,
> -	  Bluetooth and Wlan control, and most importantly, allows you
> -	  to blink those fancy LEDs.
> -
> -	  For more information see <http://acpi4asus.sf.net>.
> -
> -	  If you have an ACPI-compatible ASUS laptop, say Y or M here.
> -
> -config ASUS_WIRELESS
> -	tristate "Asus Wireless Radio Control Driver"
> -	depends on ACPI
> -	depends on INPUT
> -	select NEW_LEDS
> -	select LEDS_CLASS
> -	help
> -	  The Asus Wireless Radio Control handles the airplane mode hotkey
> -	  present on some Asus laptops.
> -
> -	  Say Y or M here if you have an ASUS notebook with an airplane mode
> -	  hotkey.
> -
> -	  If you choose to compile this driver as a module the module will be
> -	  called asus-wireless.
> -
> -config ASUS_ARMOURY
> -	tristate "ASUS Armoury driver"
> -	depends on ASUS_WMI
> -	select FW_ATTR_CLASS
> -	help
> -	  Say Y here if you have a WMI aware Asus machine and would like to use the
> -	  firmware_attributes API to control various settings typically exposed in
> -	  the ASUS Armoury Crate application available on Windows.
> -
> -	  To compile this driver as a module, choose M here: the module will
> -	  be called asus-armoury.
> -
> -config ASUS_WMI
> -	tristate "ASUS WMI Driver"
> -	depends on ACPI_WMI
> -	depends on ACPI_BATTERY
> -	depends on INPUT
> -	depends on HWMON
> -	depends on BACKLIGHT_CLASS_DEVICE
> -	depends on RFKILL || RFKILL = n
> -	depends on HOTPLUG_PCI
> -	depends on ACPI_VIDEO || ACPI_VIDEO = n
> -	depends on SERIO_I8042 || SERIO_I8042 = n
> -	select INPUT_SPARSEKMAP
> -	select LEDS_CLASS
> -	select NEW_LEDS
> -	select ACPI_PLATFORM_PROFILE
> -	help
> -	  Say Y here if you have a WMI aware Asus laptop (like Eee PCs or new
> -	  Asus Notebooks).
> -
> -	  To compile this driver as a module, choose M here: the module will
> -	  be called asus-wmi.
> -
> -config ASUS_WMI_DEPRECATED_ATTRS
> -	bool "BIOS option support in WMI platform (DEPRECATED)"
> -	depends on ASUS_WMI
> -	default y
> -	help
> -	  Say Y to expose the configurable BIOS options through the asus-wmi
> -	  driver.
> -
> -	  This can be used with or without the asus-armoury driver which
> -	  has the same attributes, but more, and better features.
> -
> -config ASUS_NB_WMI
> -	tristate "Asus Notebook WMI Driver"
> -	depends on ASUS_WMI
> -	help
> -	  This is a driver for newer Asus notebooks. It adds extra features
> -	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
> -
> -	  For more information, see
> -	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
> -
> -	  If you have an ACPI-WMI compatible Asus Notebook, say Y or M
> -	  here.
> -
> -config ASUS_TF103C_DOCK
> -	tristate "Asus TF103C 2-in-1 keyboard dock"
> -	depends on ACPI
> -	depends on I2C
> -	depends on INPUT
> -	depends on HID
> -	depends on GPIOLIB
> -	help
> -	  This is a driver for the keyboard, touchpad and USB port of the
> -	  keyboard dock for the Asus TF103C 2-in-1 tablet.
> -
> -	  This keyboard dock has its own I2C attached embedded controller
> -	  and the keyboard and touchpad are also connected over I2C,
> -	  instead of using the usual USB connection. This means that the
> -	  keyboard dock requires this special driver to function.
> -
> -	  If you have an Asus TF103C tablet say Y or M here, for a generic x86
> -	  distro config say M here.
> -
>  config AYANEO_EC
>  	tristate "Ayaneo EC platform control"
>  	depends on DMI
> @@ -357,41 +240,6 @@ config MERAKI_MX100
>  	  To compile this driver as a module, choose M here: the module
>  	  will be called meraki-mx100.
>  
> -config EEEPC_LAPTOP
> -	tristate "Eee PC Hotkey Driver"
> -	depends on ACPI_EC
> -	depends on INPUT
> -	depends on RFKILL || RFKILL = n
> -	depends on ACPI_VIDEO || ACPI_VIDEO = n
> -	depends on HOTPLUG_PCI
> -	depends on BACKLIGHT_CLASS_DEVICE
> -	select HWMON
> -	select LEDS_CLASS
> -	select NEW_LEDS
> -	select INPUT_SPARSEKMAP
> -	help
> -	  This driver supports the Fn-Fx keys on Eee PC laptops.
> -
> -	  It  also gives access to some extra laptop functionalities like
> -	  Bluetooth, backlight and allows powering on/off some other
> -	  devices.
> -
> -	  If you have an Eee PC laptop, say Y or M here. If this driver
> -	  doesn't work on your Eee PC, try eeepc-wmi instead.
> -
> -config EEEPC_WMI
> -	tristate "Eee PC WMI Driver"
> -	depends on ASUS_WMI
> -	help
> -	  This is a driver for newer Eee PC laptops. It adds extra features
> -	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
> -
> -	  For more information, see
> -	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
> -
> -	  If you have an ACPI-WMI compatible Eee PC laptop (>= 1000), say Y or M
> -	  here.
> -
>  source "drivers/platform/x86/dell/Kconfig"
>  
>  config AMILO_RFKILL
> diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile
> index 229057234d00..88f45e03ee19 100644
> --- a/drivers/platform/x86/Makefile
> +++ b/drivers/platform/x86/Makefile
> @@ -28,16 +28,6 @@ obj-$(CONFIG_ADV_SWBUTTON)	+= adv_swbutton.o
>  # Apple
>  obj-$(CONFIG_APPLE_GMUX)	+= apple-gmux.o
>  
> -# ASUS
> -obj-$(CONFIG_ASUS_LAPTOP)	+= asus-laptop.o
> -obj-$(CONFIG_ASUS_WIRELESS)	+= asus-wireless.o
> -obj-$(CONFIG_ASUS_ARMOURY)	+= asus-armoury.o
> -obj-$(CONFIG_ASUS_WMI)		+= asus-wmi.o
> -obj-$(CONFIG_ASUS_NB_WMI)	+= asus-nb-wmi.o
> -obj-$(CONFIG_ASUS_TF103C_DOCK)	+= asus-tf103c-dock.o
> -obj-$(CONFIG_EEEPC_LAPTOP)	+= eeepc-laptop.o
> -obj-$(CONFIG_EEEPC_WMI)		+= eeepc-wmi.o
> -
>  # Ayaneo
>  obj-$(CONFIG_AYANEO_EC)		+= ayaneo-ec.o
>  

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH v4] platform/asus: Move ASUS platform drivers out of drivers/platform/x86
  2026-11-06  3:35         ` [PATCH v4] platform/asus: Move ASUS platform drivers out of drivers/platform/x86 chipang_kao
  2026-11-08 14:16           ` Denis Benato
@ 2026-11-09 12:21           ` Ilpo Järvinen
  2026-11-10  6:31             ` [PATCH v5] " Chipang Kao
  2026-11-10  6:56             ` [PATCH v6] " Chipang Kao
  1 sibling, 2 replies; 18+ messages in thread
From: Ilpo Järvinen @ 2026-11-09 12:21 UTC (permalink / raw)
  To: chipang_kao
  Cc: W_Armin, corentin.chary, denis.benato, Hans de Goede, LKML, luke,
	platform-driver-x86, scardracs, chipang_kao

[-- Attachment #1: Type: text/plain, Size: 21371 bytes --]

On Fri, 6 Nov 2026, chipang_kao wrote:

> ASUS WMI and related platform drivers currently reside under
> drivers/platform/x86/. However, with the emergence of ARM64 devices
> utilizing ACPI WMI interfaces, maintaining these drivers exclusively
> under x86 creates unnecessary architectural restrictions and Kconfig
> duplications.
> 
> To allow non-x86 architectures (such as ARM64) to select and build
> the applicable ASUS platform drivers:
> 1. Relocate all ASUS platform drivers and headers from
>    drivers/platform/x86/ to drivers/platform/asus/.
> 2. Create dedicated Kconfig and Makefile under drivers/platform/asus/.
> 3. Update drivers/platform/x86/Kconfig to remove duplicated entries.
> 
> Signed-off-by: chipang_kao <chipang_kao@asus.com>

Hi,

Thanks but please use your real name to sign off the patches. I'm quite 
sure you don't sign any contracts, etc. with an underscore in your
name. ;-)

Basically, use the name you'd use to sign contract, etc. for Signed-off-by 
tags too. Also non-ascii characters are perfectly fine if you prefer using 
them for signing off as long as the email encoding is properly set so the 
tools can reproduce the name correctly.

To understand what signing off a patch means, check 
Documentation/process/submitting-patches.rst .

It would also be preferrable for From and Signed-off-by identities match, 
if you want to have the patch discussions into some other address besides 
the one used in SoB, you can always use Cc tag for those addresses.

If you're sending from a different address than SoB uses, you can add 
extra From: into the start of the body so the tools will pick that from 
there instead of the email's From.

--
 i.

> ---
> Changes in v4:
> - Move all ASUS platform drivers and headers from
>   drivers/platform/x86/ to drivers/platform/asus/.
> - Add a dedicated Kconfig and Makefile under drivers/platform/asus/.
> - Keep x86-specific drivers under the X86_PLATFORM_DEVICES
>   dependency.
> - Move ASUS_WMI, ASUS_NB_WMI, and ASUS_ARMOURY outside the
>   X86_PLATFORM_DEVICES dependency to allow them to be selected on
>   non-x86 architectures such as ARM64.
> - Update drivers/platform/Kconfig, drivers/platform/Makefile, and
>   MAINTAINERS for the new location.
> 
>  MAINTAINERS                                   |   8 +-
>  drivers/platform/Kconfig                      |   2 +
>  drivers/platform/Makefile                     |   1 +
>  drivers/platform/asus/Kconfig                 | 163 ++++++++++++++++++
>  drivers/platform/asus/Makefile                |  15 ++
>  drivers/platform/{x86 => asus}/asus-armoury.c |   0
>  drivers/platform/{x86 => asus}/asus-armoury.h |   0
>  drivers/platform/{x86 => asus}/asus-laptop.c  |   0
>  drivers/platform/{x86 => asus}/asus-nb-wmi.c  |   0
>  .../platform/{x86 => asus}/asus-tf103c-dock.c |   0
>  .../platform/{x86 => asus}/asus-wireless.c    |   0
>  drivers/platform/{x86 => asus}/asus-wmi.c     |   0
>  drivers/platform/{x86 => asus}/asus-wmi.h     |   0
>  drivers/platform/{x86 => asus}/eeepc-laptop.c |   0
>  drivers/platform/{x86 => asus}/eeepc-wmi.c    |   0
>  drivers/platform/x86/Kconfig                  | 152 ----------------
>  drivers/platform/x86/Makefile                 |  10 --
>  17 files changed, 185 insertions(+), 166 deletions(-)
>  create mode 100644 drivers/platform/asus/Kconfig
>  create mode 100644 drivers/platform/asus/Makefile
>  rename drivers/platform/{x86 => asus}/asus-armoury.c (100%)
>  rename drivers/platform/{x86 => asus}/asus-armoury.h (100%)
>  rename drivers/platform/{x86 => asus}/asus-laptop.c (100%)
>  rename drivers/platform/{x86 => asus}/asus-nb-wmi.c (100%)
>  rename drivers/platform/{x86 => asus}/asus-tf103c-dock.c (100%)
>  rename drivers/platform/{x86 => asus}/asus-wireless.c (100%)
>  rename drivers/platform/{x86 => asus}/asus-wmi.c (100%)
>  rename drivers/platform/{x86 => asus}/asus-wmi.h (100%)
>  rename drivers/platform/{x86 => asus}/eeepc-laptop.c (100%)
>  rename drivers/platform/{x86 => asus}/eeepc-wmi.c (100%)
> 
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 93abbb315065..832d2528be10 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -4226,15 +4226,15 @@ M:	Denis Benato <denis.benato@linux.dev>
>  L:	platform-driver-x86@vger.kernel.org
>  S:	Maintained
>  W:	https://asus-linux.org/
> -F:	drivers/platform/x86/asus*.c
> -F:	drivers/platform/x86/eeepc*.c
> +F:	drivers/platform/asus/asus*.c
> +F:	drivers/platform/asus/eeepc*.c
>  
>  ASUS TF103C DOCK DRIVER
>  M:	Hans de Goede <hansg@kernel.org>
>  L:	platform-driver-x86@vger.kernel.org
>  S:	Maintained
>  T:	git git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git
> -F:	drivers/platform/x86/asus-tf103c-dock.c
> +F:	drivers/platform/asus/asus-tf103c-dock.c
>  
>  ASUS ROG RYUJIN AIO HARDWARE MONITOR DRIVER
>  M:	Aleksa Savic <savicaleksa83@gmail.com>
> @@ -4246,7 +4246,7 @@ ASUS WIRELESS RADIO CONTROL DRIVER
>  M:	João Paulo Rechi Vita <jprvita@gmail.com>
>  L:	platform-driver-x86@vger.kernel.org
>  S:	Maintained
> -F:	drivers/platform/x86/asus-wireless.c
> +F:	drivers/platform/asus/asus-wireless.c
>  
>  ASUS WMI HARDWARE MONITOR DRIVER
>  M:	Ed Brindley <kernel@maidavale.org>
> diff --git a/drivers/platform/Kconfig b/drivers/platform/Kconfig
> index 312788f249c9..aa004b0e4406 100644
> --- a/drivers/platform/Kconfig
> +++ b/drivers/platform/Kconfig
> @@ -22,3 +22,5 @@ source "drivers/platform/arm64/Kconfig"
>  source "drivers/platform/raspberrypi/Kconfig"
>  
>  source "drivers/platform/wmi/Kconfig"
> +
> +source "drivers/platform/asus/Kconfig"
> diff --git a/drivers/platform/Makefile b/drivers/platform/Makefile
> index fa322e7f8716..34e694e6da14 100644
> --- a/drivers/platform/Makefile
> +++ b/drivers/platform/Makefile
> @@ -15,3 +15,4 @@ obj-$(CONFIG_SURFACE_PLATFORMS)	+= surface/
>  obj-$(CONFIG_ARM64_PLATFORM_DEVICES)	+= arm64/
>  obj-$(CONFIG_BCM2835_VCHIQ)	+= raspberrypi/
>  obj-$(CONFIG_ACPI_WMI)		+= wmi/
> +obj-y				+= asus/
> diff --git a/drivers/platform/asus/Kconfig b/drivers/platform/asus/Kconfig
> new file mode 100644
> index 000000000000..984f25ee84f5
> --- /dev/null
> +++ b/drivers/platform/asus/Kconfig
> @@ -0,0 +1,163 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +#
> +# Asus Platform Specific Drivers
> +#
> +
> +if X86_PLATFORM_DEVICES
> +
> +config ASUS_LAPTOP
> +	tristate "Asus Laptop Extras"
> +	depends on ACPI
> +	select LEDS_CLASS
> +	select NEW_LEDS
> +	depends on BACKLIGHT_CLASS_DEVICE
> +	depends on INPUT
> +	depends on RFKILL || RFKILL = n
> +	depends on ACPI_VIDEO || ACPI_VIDEO = n
> +	select INPUT_SPARSEKMAP
> +	help
> +	  This is a driver for Asus laptops, Lenovo SL and the Pegatron
> +	  Lucid tablet. It may also support some MEDION, JVC or VICTOR
> +	  laptops. It makes all the extra buttons generate standard
> +	  ACPI events and input events, and on the Lucid the built-in
> +	  accelerometer appears as an input device.  It also adds
> +	  support for video output switching, LCD backlight control,
> +	  Bluetooth and Wlan control, and most importantly, allows you
> +	  to blink those fancy LEDs.
> +
> +	  For more information see <http://acpi4asus.sf.net>.
> +
> +	  If you have an ACPI-compatible ASUS laptop, say Y or M here.
> +
> +config ASUS_WIRELESS
> +	tristate "Asus Wireless Radio Control Driver"
> +	depends on ACPI
> +	depends on INPUT
> +	select NEW_LEDS
> +	select LEDS_CLASS
> +	help
> +	  The Asus Wireless Radio Control handles the airplane mode hotkey
> +	  present on some Asus laptops.
> +
> +	  Say Y or M here if you have an ASUS notebook with an airplane mode
> +	  hotkey.
> +
> +	  If you choose to compile this driver as a module the module will be
> +	  called asus-wireless.
> +
> +config ASUS_TF103C_DOCK
> +	tristate "Asus TF103C 2-in-1 keyboard dock"
> +	depends on ACPI
> +	depends on I2C
> +	depends on INPUT
> +	depends on HID
> +	depends on GPIOLIB
> +	help
> +	  This is a driver for the keyboard, touchpad and USB port of the
> +	  keyboard dock for the Asus TF103C 2-in-1 tablet.
> +
> +	  This keyboard dock has its own I2C attached embedded controller
> +	  and the keyboard and touchpad are also connected over I2C,
> +	  instead of using the usual USB connection. This means that the
> +	  keyboard dock requires this special driver to function.
> +
> +	  If you have an Asus TF103C tablet say Y or M here, for a generic x86
> +	  distro config say M here.
> +
> +config EEEPC_WMI
> +	tristate "Eee PC WMI Driver"
> +	depends on ASUS_WMI
> +	help
> +	  This is a driver for newer Eee PC laptops. It adds extra features
> +	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
> +
> +	  For more information, see
> +	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
> +
> +	  If you have an ACPI-WMI compatible Eee PC laptop (>= 1000), say Y or M
> +	  here.
> +
> +config EEEPC_LAPTOP
> +	tristate "Eee PC Hotkey Driver"
> +	depends on ACPI_EC
> +	depends on INPUT
> +	depends on RFKILL || RFKILL = n
> +	depends on ACPI_VIDEO || ACPI_VIDEO = n
> +	depends on HOTPLUG_PCI
> +	depends on BACKLIGHT_CLASS_DEVICE
> +	select HWMON
> +	select LEDS_CLASS
> +	select NEW_LEDS
> +	select INPUT_SPARSEKMAP
> +	help
> +	  This driver supports the Fn-Fx keys on Eee PC laptops.
> +
> +	  It  also gives access to some extra laptop functionalities like
> +	  Bluetooth, backlight and allows powering on/off some other
> +	  devices.
> +
> +	  If you have an Eee PC laptop, say Y or M here. If this driver
> +	  doesn't work on your Eee PC, try eeepc-wmi instead.
> +
> +endif # X86_PLATFORM_DEVICES
> +
> +config ASUS_ARMOURY
> +	tristate "ASUS Armoury driver"
> +	depends on ASUS_WMI
> +	select FW_ATTR_CLASS
> +	help
> +	  Say Y here if you have a WMI aware Asus machine and would like to use the
> +	  firmware_attributes API to control various settings typically exposed in
> +	  the ASUS Armoury Crate application available on Windows.
> +
> +	  To compile this driver as a module, choose M here: the module will
> +	  be called asus-armoury.
> +
> +config ASUS_WMI
> +	tristate "ASUS WMI Driver"
> +	depends on ACPI_WMI
> +	depends on ACPI_BATTERY
> +	depends on INPUT
> +	depends on HWMON
> +	depends on BACKLIGHT_CLASS_DEVICE
> +	depends on RFKILL || RFKILL = n
> +	depends on HOTPLUG_PCI
> +	depends on ACPI_VIDEO || ACPI_VIDEO = n
> +	depends on SERIO_I8042 || SERIO_I8042 = n
> +	select INPUT_SPARSEKMAP
> +	select LEDS_CLASS
> +	select NEW_LEDS
> +	select ACPI_PLATFORM_PROFILE
> +	help
> +	  Say Y here if you have a WMI aware Asus laptop (like Eee PCs or new
> +	  Asus Notebooks).
> +
> +	  To compile this driver as a module, choose M here: the module will
> +	  be called asus-wmi.
> +
> +config ASUS_WMI_DEPRECATED_ATTRS
> +	bool "BIOS option support in WMI platform (DEPRECATED)"
> +	depends on ASUS_WMI
> +	default y
> +	help
> +	  Say Y to expose the configurable BIOS options through the asus-wmi
> +	  driver.
> +
> +	  This can be used with or without the asus-armoury driver which
> +	  has the same attributes, but more, and better features.
> +
> +config ASUS_NB_WMI
> +	tristate "Asus Notebook WMI Driver"
> +	depends on ASUS_WMI
> +	help
> +	  This is a driver for newer Asus notebooks. It adds extra features
> +	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
> +
> +	  For more information, see
> +	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
> +
> +	  If you have an ACPI-WMI compatible Asus Notebook, say Y or M
> +	  here.
> +
> +
> +
> diff --git a/drivers/platform/asus/Makefile b/drivers/platform/asus/Makefile
> new file mode 100644
> index 000000000000..d3b5c4fc2ca6
> --- /dev/null
> +++ b/drivers/platform/asus/Makefile
> @@ -0,0 +1,15 @@
> +# SPDX-License-Identifier: GPL-2.0
> +#
> +# Makefile for linux/drivers/platform/asus
> +# Asus Platform-Specific Drivers
> +#
> +
> +obj-$(CONFIG_ASUS_LAPTOP)	+= asus-laptop.o
> +obj-$(CONFIG_ASUS_WIRELESS)	+= asus-wireless.o
> +obj-$(CONFIG_ASUS_ARMOURY)	+= asus-armoury.o
> +obj-$(CONFIG_ASUS_WMI)		+= asus-wmi.o
> +obj-$(CONFIG_ASUS_NB_WMI)	+= asus-nb-wmi.o
> +obj-$(CONFIG_ASUS_TF103C_DOCK)	+= asus-tf103c-dock.o
> +obj-$(CONFIG_EEEPC_LAPTOP)	+= eeepc-laptop.o
> +obj-$(CONFIG_EEEPC_WMI)		+= eeepc-wmi.o
> +
> diff --git a/drivers/platform/x86/asus-armoury.c b/drivers/platform/asus/asus-armoury.c
> similarity index 100%
> rename from drivers/platform/x86/asus-armoury.c
> rename to drivers/platform/asus/asus-armoury.c
> diff --git a/drivers/platform/x86/asus-armoury.h b/drivers/platform/asus/asus-armoury.h
> similarity index 100%
> rename from drivers/platform/x86/asus-armoury.h
> rename to drivers/platform/asus/asus-armoury.h
> diff --git a/drivers/platform/x86/asus-laptop.c b/drivers/platform/asus/asus-laptop.c
> similarity index 100%
> rename from drivers/platform/x86/asus-laptop.c
> rename to drivers/platform/asus/asus-laptop.c
> diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/asus/asus-nb-wmi.c
> similarity index 100%
> rename from drivers/platform/x86/asus-nb-wmi.c
> rename to drivers/platform/asus/asus-nb-wmi.c
> diff --git a/drivers/platform/x86/asus-tf103c-dock.c b/drivers/platform/asus/asus-tf103c-dock.c
> similarity index 100%
> rename from drivers/platform/x86/asus-tf103c-dock.c
> rename to drivers/platform/asus/asus-tf103c-dock.c
> diff --git a/drivers/platform/x86/asus-wireless.c b/drivers/platform/asus/asus-wireless.c
> similarity index 100%
> rename from drivers/platform/x86/asus-wireless.c
> rename to drivers/platform/asus/asus-wireless.c
> diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/asus/asus-wmi.c
> similarity index 100%
> rename from drivers/platform/x86/asus-wmi.c
> rename to drivers/platform/asus/asus-wmi.c
> diff --git a/drivers/platform/x86/asus-wmi.h b/drivers/platform/asus/asus-wmi.h
> similarity index 100%
> rename from drivers/platform/x86/asus-wmi.h
> rename to drivers/platform/asus/asus-wmi.h
> diff --git a/drivers/platform/x86/eeepc-laptop.c b/drivers/platform/asus/eeepc-laptop.c
> similarity index 100%
> rename from drivers/platform/x86/eeepc-laptop.c
> rename to drivers/platform/asus/eeepc-laptop.c
> diff --git a/drivers/platform/x86/eeepc-wmi.c b/drivers/platform/asus/eeepc-wmi.c
> similarity index 100%
> rename from drivers/platform/x86/eeepc-wmi.c
> rename to drivers/platform/asus/eeepc-wmi.c
> diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
> index 9ce384e0475e..b2c6cc923694 100644
> --- a/drivers/platform/x86/Kconfig
> +++ b/drivers/platform/x86/Kconfig
> @@ -213,123 +213,6 @@ config APPLE_GMUX
>  	  graphics as well as the backlight. Currently only backlight
>  	  control is supported by the driver.
>  
> -config ASUS_LAPTOP
> -	tristate "Asus Laptop Extras"
> -	depends on ACPI
> -	select LEDS_CLASS
> -	select NEW_LEDS
> -	depends on BACKLIGHT_CLASS_DEVICE
> -	depends on INPUT
> -	depends on RFKILL || RFKILL = n
> -	depends on ACPI_VIDEO || ACPI_VIDEO = n
> -	select INPUT_SPARSEKMAP
> -	help
> -	  This is a driver for Asus laptops, Lenovo SL and the Pegatron
> -	  Lucid tablet. It may also support some MEDION, JVC or VICTOR
> -	  laptops. It makes all the extra buttons generate standard
> -	  ACPI events and input events, and on the Lucid the built-in
> -	  accelerometer appears as an input device.  It also adds
> -	  support for video output switching, LCD backlight control,
> -	  Bluetooth and Wlan control, and most importantly, allows you
> -	  to blink those fancy LEDs.
> -
> -	  For more information see <http://acpi4asus.sf.net>.
> -
> -	  If you have an ACPI-compatible ASUS laptop, say Y or M here.
> -
> -config ASUS_WIRELESS
> -	tristate "Asus Wireless Radio Control Driver"
> -	depends on ACPI
> -	depends on INPUT
> -	select NEW_LEDS
> -	select LEDS_CLASS
> -	help
> -	  The Asus Wireless Radio Control handles the airplane mode hotkey
> -	  present on some Asus laptops.
> -
> -	  Say Y or M here if you have an ASUS notebook with an airplane mode
> -	  hotkey.
> -
> -	  If you choose to compile this driver as a module the module will be
> -	  called asus-wireless.
> -
> -config ASUS_ARMOURY
> -	tristate "ASUS Armoury driver"
> -	depends on ASUS_WMI
> -	select FW_ATTR_CLASS
> -	help
> -	  Say Y here if you have a WMI aware Asus machine and would like to use the
> -	  firmware_attributes API to control various settings typically exposed in
> -	  the ASUS Armoury Crate application available on Windows.
> -
> -	  To compile this driver as a module, choose M here: the module will
> -	  be called asus-armoury.
> -
> -config ASUS_WMI
> -	tristate "ASUS WMI Driver"
> -	depends on ACPI_WMI
> -	depends on ACPI_BATTERY
> -	depends on INPUT
> -	depends on HWMON
> -	depends on BACKLIGHT_CLASS_DEVICE
> -	depends on RFKILL || RFKILL = n
> -	depends on HOTPLUG_PCI
> -	depends on ACPI_VIDEO || ACPI_VIDEO = n
> -	depends on SERIO_I8042 || SERIO_I8042 = n
> -	select INPUT_SPARSEKMAP
> -	select LEDS_CLASS
> -	select NEW_LEDS
> -	select ACPI_PLATFORM_PROFILE
> -	help
> -	  Say Y here if you have a WMI aware Asus laptop (like Eee PCs or new
> -	  Asus Notebooks).
> -
> -	  To compile this driver as a module, choose M here: the module will
> -	  be called asus-wmi.
> -
> -config ASUS_WMI_DEPRECATED_ATTRS
> -	bool "BIOS option support in WMI platform (DEPRECATED)"
> -	depends on ASUS_WMI
> -	default y
> -	help
> -	  Say Y to expose the configurable BIOS options through the asus-wmi
> -	  driver.
> -
> -	  This can be used with or without the asus-armoury driver which
> -	  has the same attributes, but more, and better features.
> -
> -config ASUS_NB_WMI
> -	tristate "Asus Notebook WMI Driver"
> -	depends on ASUS_WMI
> -	help
> -	  This is a driver for newer Asus notebooks. It adds extra features
> -	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
> -
> -	  For more information, see
> -	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
> -
> -	  If you have an ACPI-WMI compatible Asus Notebook, say Y or M
> -	  here.
> -
> -config ASUS_TF103C_DOCK
> -	tristate "Asus TF103C 2-in-1 keyboard dock"
> -	depends on ACPI
> -	depends on I2C
> -	depends on INPUT
> -	depends on HID
> -	depends on GPIOLIB
> -	help
> -	  This is a driver for the keyboard, touchpad and USB port of the
> -	  keyboard dock for the Asus TF103C 2-in-1 tablet.
> -
> -	  This keyboard dock has its own I2C attached embedded controller
> -	  and the keyboard and touchpad are also connected over I2C,
> -	  instead of using the usual USB connection. This means that the
> -	  keyboard dock requires this special driver to function.
> -
> -	  If you have an Asus TF103C tablet say Y or M here, for a generic x86
> -	  distro config say M here.
> -
>  config AYANEO_EC
>  	tristate "Ayaneo EC platform control"
>  	depends on DMI
> @@ -357,41 +240,6 @@ config MERAKI_MX100
>  	  To compile this driver as a module, choose M here: the module
>  	  will be called meraki-mx100.
>  
> -config EEEPC_LAPTOP
> -	tristate "Eee PC Hotkey Driver"
> -	depends on ACPI_EC
> -	depends on INPUT
> -	depends on RFKILL || RFKILL = n
> -	depends on ACPI_VIDEO || ACPI_VIDEO = n
> -	depends on HOTPLUG_PCI
> -	depends on BACKLIGHT_CLASS_DEVICE
> -	select HWMON
> -	select LEDS_CLASS
> -	select NEW_LEDS
> -	select INPUT_SPARSEKMAP
> -	help
> -	  This driver supports the Fn-Fx keys on Eee PC laptops.
> -
> -	  It  also gives access to some extra laptop functionalities like
> -	  Bluetooth, backlight and allows powering on/off some other
> -	  devices.
> -
> -	  If you have an Eee PC laptop, say Y or M here. If this driver
> -	  doesn't work on your Eee PC, try eeepc-wmi instead.
> -
> -config EEEPC_WMI
> -	tristate "Eee PC WMI Driver"
> -	depends on ASUS_WMI
> -	help
> -	  This is a driver for newer Eee PC laptops. It adds extra features
> -	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
> -
> -	  For more information, see
> -	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
> -
> -	  If you have an ACPI-WMI compatible Eee PC laptop (>= 1000), say Y or M
> -	  here.
> -
>  source "drivers/platform/x86/dell/Kconfig"
>  
>  config AMILO_RFKILL
> diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile
> index 229057234d00..88f45e03ee19 100644
> --- a/drivers/platform/x86/Makefile
> +++ b/drivers/platform/x86/Makefile
> @@ -28,16 +28,6 @@ obj-$(CONFIG_ADV_SWBUTTON)	+= adv_swbutton.o
>  # Apple
>  obj-$(CONFIG_APPLE_GMUX)	+= apple-gmux.o
>  
> -# ASUS
> -obj-$(CONFIG_ASUS_LAPTOP)	+= asus-laptop.o
> -obj-$(CONFIG_ASUS_WIRELESS)	+= asus-wireless.o
> -obj-$(CONFIG_ASUS_ARMOURY)	+= asus-armoury.o
> -obj-$(CONFIG_ASUS_WMI)		+= asus-wmi.o
> -obj-$(CONFIG_ASUS_NB_WMI)	+= asus-nb-wmi.o
> -obj-$(CONFIG_ASUS_TF103C_DOCK)	+= asus-tf103c-dock.o
> -obj-$(CONFIG_EEEPC_LAPTOP)	+= eeepc-laptop.o
> -obj-$(CONFIG_EEEPC_WMI)		+= eeepc-wmi.o
> -
>  # Ayaneo
>  obj-$(CONFIG_AYANEO_EC)		+= ayaneo-ec.o
>  
> 

-- 
 i.

^ permalink raw reply	[flat|nested] 18+ messages in thread

* [PATCH v5] platform/asus: Move ASUS platform drivers out of drivers/platform/x86
  2026-11-09 12:21           ` Ilpo Järvinen
@ 2026-11-10  6:31             ` Chipang Kao
  2026-11-10  6:56             ` [PATCH v6] " Chipang Kao
  1 sibling, 0 replies; 18+ messages in thread
From: Chipang Kao @ 2026-11-10  6:31 UTC (permalink / raw)
  To: ilpo.jarvinen
  Cc: W_Armin, chipang_kao, corentin.chary, denis.benato, hansg,
	linux-kernel, luke, platform-driver-x86, prozac2734, scardracs

ASUS WMI and related platform drivers currently reside under
drivers/platform/x86/. However, with the emergence of ARM64 devices
utilizing ACPI WMI interfaces, maintaining these drivers exclusively
under x86 creates unnecessary architectural restrictions and Kconfig
duplications.

To allow non-x86 architectures (such as ARM64) to select and build
the applicable ASUS platform drivers:
1. Relocate all ASUS platform drivers and headers from
   drivers/platform/x86/ to drivers/platform/asus/.
2. Create dedicated Kconfig and Makefile under drivers/platform/asus/.
3. Update drivers/platform/x86/Kconfig to remove duplicated entries.

Signed-off-by: Chipang Kao <chipang_kao@asus.com>
---
Changes in v5:
- Modify author name

 MAINTAINERS                                   |   8 +-
 drivers/platform/Kconfig                      |   2 +
 drivers/platform/Makefile                     |   1 +
 drivers/platform/asus/Kconfig                 | 160 ++++++++++++++++++
 drivers/platform/asus/Makefile                |  14 ++
 drivers/platform/{x86 => asus}/asus-armoury.c |   0
 drivers/platform/{x86 => asus}/asus-armoury.h |   0
 drivers/platform/{x86 => asus}/asus-laptop.c  |   0
 drivers/platform/{x86 => asus}/asus-nb-wmi.c  |   0
 .../platform/{x86 => asus}/asus-tf103c-dock.c |   0
 .../platform/{x86 => asus}/asus-wireless.c    |   0
 drivers/platform/{x86 => asus}/asus-wmi.c     |   0
 drivers/platform/{x86 => asus}/asus-wmi.h     |   0
 drivers/platform/{x86 => asus}/eeepc-laptop.c |   0
 drivers/platform/{x86 => asus}/eeepc-wmi.c    |   0
 drivers/platform/x86/Kconfig                  | 152 -----------------
 drivers/platform/x86/Makefile                 |  10 --
 17 files changed, 181 insertions(+), 166 deletions(-)
 create mode 100644 drivers/platform/asus/Kconfig
 create mode 100644 drivers/platform/asus/Makefile
 rename drivers/platform/{x86 => asus}/asus-armoury.c (100%)
 rename drivers/platform/{x86 => asus}/asus-armoury.h (100%)
 rename drivers/platform/{x86 => asus}/asus-laptop.c (100%)
 rename drivers/platform/{x86 => asus}/asus-nb-wmi.c (100%)
 rename drivers/platform/{x86 => asus}/asus-tf103c-dock.c (100%)
 rename drivers/platform/{x86 => asus}/asus-wireless.c (100%)
 rename drivers/platform/{x86 => asus}/asus-wmi.c (100%)
 rename drivers/platform/{x86 => asus}/asus-wmi.h (100%)
 rename drivers/platform/{x86 => asus}/eeepc-laptop.c (100%)
 rename drivers/platform/{x86 => asus}/eeepc-wmi.c (100%)

diff --git a/MAINTAINERS b/MAINTAINERS
index 222b7fc2c3aa..981eb3fdbef4 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -4226,15 +4226,15 @@ M:	Denis Benato <denis.benato@linux.dev>
 L:	platform-driver-x86@vger.kernel.org
 S:	Maintained
 W:	https://asus-linux.org/
-F:	drivers/platform/x86/asus*.c
-F:	drivers/platform/x86/eeepc*.c
+F:	drivers/platform/asus/asus*.c
+F:	drivers/platform/asus/eeepc*.c
 
 ASUS TF103C DOCK DRIVER
 M:	Hans de Goede <hansg@kernel.org>
 L:	platform-driver-x86@vger.kernel.org
 S:	Maintained
 T:	git git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git
-F:	drivers/platform/x86/asus-tf103c-dock.c
+F:	drivers/platform/asus/asus-tf103c-dock.c
 
 ASUS ROG RYUJIN AIO HARDWARE MONITOR DRIVER
 M:	Aleksa Savic <savicaleksa83@gmail.com>
@@ -4246,7 +4246,7 @@ ASUS WIRELESS RADIO CONTROL DRIVER
 M:	João Paulo Rechi Vita <jprvita@gmail.com>
 L:	platform-driver-x86@vger.kernel.org
 S:	Maintained
-F:	drivers/platform/x86/asus-wireless.c
+F:	drivers/platform/asus/asus-wireless.c
 
 ASUS WMI HARDWARE MONITOR DRIVER
 M:	Ed Brindley <kernel@maidavale.org>
diff --git a/drivers/platform/Kconfig b/drivers/platform/Kconfig
index 312788f249c9..aa004b0e4406 100644
--- a/drivers/platform/Kconfig
+++ b/drivers/platform/Kconfig
@@ -22,3 +22,5 @@ source "drivers/platform/arm64/Kconfig"
 source "drivers/platform/raspberrypi/Kconfig"
 
 source "drivers/platform/wmi/Kconfig"
+
+source "drivers/platform/asus/Kconfig"
diff --git a/drivers/platform/Makefile b/drivers/platform/Makefile
index fa322e7f8716..34e694e6da14 100644
--- a/drivers/platform/Makefile
+++ b/drivers/platform/Makefile
@@ -15,3 +15,4 @@ obj-$(CONFIG_SURFACE_PLATFORMS)	+= surface/
 obj-$(CONFIG_ARM64_PLATFORM_DEVICES)	+= arm64/
 obj-$(CONFIG_BCM2835_VCHIQ)	+= raspberrypi/
 obj-$(CONFIG_ACPI_WMI)		+= wmi/
+obj-y				+= asus/
diff --git a/drivers/platform/asus/Kconfig b/drivers/platform/asus/Kconfig
new file mode 100644
index 000000000000..4b79957f045f
--- /dev/null
+++ b/drivers/platform/asus/Kconfig
@@ -0,0 +1,160 @@
+# SPDX-License-Identifier: GPL-2.0-only
+#
+# Asus Platform Specific Drivers
+#
+
+if X86_PLATFORM_DEVICES
+
+config ASUS_LAPTOP
+	tristate "Asus Laptop Extras"
+	depends on ACPI
+	select LEDS_CLASS
+	select NEW_LEDS
+	depends on BACKLIGHT_CLASS_DEVICE
+	depends on INPUT
+	depends on RFKILL || RFKILL = n
+	depends on ACPI_VIDEO || ACPI_VIDEO = n
+	select INPUT_SPARSEKMAP
+	help
+	  This is a driver for Asus laptops, Lenovo SL and the Pegatron
+	  Lucid tablet. It may also support some MEDION, JVC or VICTOR
+	  laptops. It makes all the extra buttons generate standard
+	  ACPI events and input events, and on the Lucid the built-in
+	  accelerometer appears as an input device.  It also adds
+	  support for video output switching, LCD backlight control,
+	  Bluetooth and Wlan control, and most importantly, allows you
+	  to blink those fancy LEDs.
+
+	  For more information see <http://acpi4asus.sf.net>.
+
+	  If you have an ACPI-compatible ASUS laptop, say Y or M here.
+
+config ASUS_WIRELESS
+	tristate "Asus Wireless Radio Control Driver"
+	depends on ACPI
+	depends on INPUT
+	select NEW_LEDS
+	select LEDS_CLASS
+	help
+	  The Asus Wireless Radio Control handles the airplane mode hotkey
+	  present on some Asus laptops.
+
+	  Say Y or M here if you have an ASUS notebook with an airplane mode
+	  hotkey.
+
+	  If you choose to compile this driver as a module the module will be
+	  called asus-wireless.
+
+config ASUS_TF103C_DOCK
+	tristate "Asus TF103C 2-in-1 keyboard dock"
+	depends on ACPI
+	depends on I2C
+	depends on INPUT
+	depends on HID
+	depends on GPIOLIB
+	help
+	  This is a driver for the keyboard, touchpad and USB port of the
+	  keyboard dock for the Asus TF103C 2-in-1 tablet.
+
+	  This keyboard dock has its own I2C attached embedded controller
+	  and the keyboard and touchpad are also connected over I2C,
+	  instead of using the usual USB connection. This means that the
+	  keyboard dock requires this special driver to function.
+
+	  If you have an Asus TF103C tablet say Y or M here, for a generic x86
+	  distro config say M here.
+
+config EEEPC_WMI
+	tristate "Eee PC WMI Driver"
+	depends on ASUS_WMI
+	help
+	  This is a driver for newer Eee PC laptops. It adds extra features
+	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
+
+	  For more information, see
+	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
+
+	  If you have an ACPI-WMI compatible Eee PC laptop (>= 1000), say Y or M
+	  here.
+
+config EEEPC_LAPTOP
+	tristate "Eee PC Hotkey Driver"
+	depends on ACPI_EC
+	depends on INPUT
+	depends on RFKILL || RFKILL = n
+	depends on ACPI_VIDEO || ACPI_VIDEO = n
+	depends on HOTPLUG_PCI
+	depends on BACKLIGHT_CLASS_DEVICE
+	select HWMON
+	select LEDS_CLASS
+	select NEW_LEDS
+	select INPUT_SPARSEKMAP
+	help
+	  This driver supports the Fn-Fx keys on Eee PC laptops.
+
+	  It  also gives access to some extra laptop functionalities like
+	  Bluetooth, backlight and allows powering on/off some other
+	  devices.
+
+	  If you have an Eee PC laptop, say Y or M here. If this driver
+	  doesn't work on your Eee PC, try eeepc-wmi instead.
+
+endif # X86_PLATFORM_DEVICES
+
+config ASUS_ARMOURY
+	tristate "ASUS Armoury driver"
+	depends on ASUS_WMI
+	select FW_ATTR_CLASS
+	help
+	  Say Y here if you have a WMI aware Asus machine and would like to use the
+	  firmware_attributes API to control various settings typically exposed in
+	  the ASUS Armoury Crate application available on Windows.
+
+	  To compile this driver as a module, choose M here: the module will
+	  be called asus-armoury.
+
+config ASUS_WMI
+	tristate "ASUS WMI Driver"
+	depends on ACPI_WMI
+	depends on ACPI_BATTERY
+	depends on INPUT
+	depends on HWMON
+	depends on BACKLIGHT_CLASS_DEVICE
+	depends on RFKILL || RFKILL = n
+	depends on HOTPLUG_PCI
+	depends on ACPI_VIDEO || ACPI_VIDEO = n
+	depends on SERIO_I8042 || SERIO_I8042 = n
+	select INPUT_SPARSEKMAP
+	select LEDS_CLASS
+	select NEW_LEDS
+	select ACPI_PLATFORM_PROFILE
+	help
+	  Say Y here if you have a WMI aware Asus laptop (like Eee PCs or new
+	  Asus Notebooks).
+
+	  To compile this driver as a module, choose M here: the module will
+	  be called asus-wmi.
+
+config ASUS_WMI_DEPRECATED_ATTRS
+	bool "BIOS option support in WMI platform (DEPRECATED)"
+	depends on ASUS_WMI
+	default y
+	help
+	  Say Y to expose the configurable BIOS options through the asus-wmi
+	  driver.
+
+	  This can be used with or without the asus-armoury driver which
+	  has the same attributes, but more, and better features.
+
+config ASUS_NB_WMI
+	tristate "Asus Notebook WMI Driver"
+	depends on ASUS_WMI
+	help
+	  This is a driver for newer Asus notebooks. It adds extra features
+	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
+
+	  For more information, see
+	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
+
+	  If you have an ACPI-WMI compatible Asus Notebook, say Y or M
+	  here.
diff --git a/drivers/platform/asus/Makefile b/drivers/platform/asus/Makefile
new file mode 100644
index 000000000000..7bb25cba4853
--- /dev/null
+++ b/drivers/platform/asus/Makefile
@@ -0,0 +1,14 @@
+# SPDX-License-Identifier: GPL-2.0
+#
+# Makefile for linux/drivers/platform/asus
+# Asus Platform-Specific Drivers
+#
+
+obj-$(CONFIG_ASUS_LAPTOP)	+= asus-laptop.o
+obj-$(CONFIG_ASUS_WIRELESS)	+= asus-wireless.o
+obj-$(CONFIG_ASUS_ARMOURY)	+= asus-armoury.o
+obj-$(CONFIG_ASUS_WMI)		+= asus-wmi.o
+obj-$(CONFIG_ASUS_NB_WMI)	+= asus-nb-wmi.o
+obj-$(CONFIG_ASUS_TF103C_DOCK)	+= asus-tf103c-dock.o
+obj-$(CONFIG_EEEPC_LAPTOP)	+= eeepc-laptop.o
+obj-$(CONFIG_EEEPC_WMI)		+= eeepc-wmi.o
diff --git a/drivers/platform/x86/asus-armoury.c b/drivers/platform/asus/asus-armoury.c
similarity index 100%
rename from drivers/platform/x86/asus-armoury.c
rename to drivers/platform/asus/asus-armoury.c
diff --git a/drivers/platform/x86/asus-armoury.h b/drivers/platform/asus/asus-armoury.h
similarity index 100%
rename from drivers/platform/x86/asus-armoury.h
rename to drivers/platform/asus/asus-armoury.h
diff --git a/drivers/platform/x86/asus-laptop.c b/drivers/platform/asus/asus-laptop.c
similarity index 100%
rename from drivers/platform/x86/asus-laptop.c
rename to drivers/platform/asus/asus-laptop.c
diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/asus/asus-nb-wmi.c
similarity index 100%
rename from drivers/platform/x86/asus-nb-wmi.c
rename to drivers/platform/asus/asus-nb-wmi.c
diff --git a/drivers/platform/x86/asus-tf103c-dock.c b/drivers/platform/asus/asus-tf103c-dock.c
similarity index 100%
rename from drivers/platform/x86/asus-tf103c-dock.c
rename to drivers/platform/asus/asus-tf103c-dock.c
diff --git a/drivers/platform/x86/asus-wireless.c b/drivers/platform/asus/asus-wireless.c
similarity index 100%
rename from drivers/platform/x86/asus-wireless.c
rename to drivers/platform/asus/asus-wireless.c
diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/asus/asus-wmi.c
similarity index 100%
rename from drivers/platform/x86/asus-wmi.c
rename to drivers/platform/asus/asus-wmi.c
diff --git a/drivers/platform/x86/asus-wmi.h b/drivers/platform/asus/asus-wmi.h
similarity index 100%
rename from drivers/platform/x86/asus-wmi.h
rename to drivers/platform/asus/asus-wmi.h
diff --git a/drivers/platform/x86/eeepc-laptop.c b/drivers/platform/asus/eeepc-laptop.c
similarity index 100%
rename from drivers/platform/x86/eeepc-laptop.c
rename to drivers/platform/asus/eeepc-laptop.c
diff --git a/drivers/platform/x86/eeepc-wmi.c b/drivers/platform/asus/eeepc-wmi.c
similarity index 100%
rename from drivers/platform/x86/eeepc-wmi.c
rename to drivers/platform/asus/eeepc-wmi.c
diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
index 9ce384e0475e..b2c6cc923694 100644
--- a/drivers/platform/x86/Kconfig
+++ b/drivers/platform/x86/Kconfig
@@ -213,123 +213,6 @@ config APPLE_GMUX
 	  graphics as well as the backlight. Currently only backlight
 	  control is supported by the driver.
 
-config ASUS_LAPTOP
-	tristate "Asus Laptop Extras"
-	depends on ACPI
-	select LEDS_CLASS
-	select NEW_LEDS
-	depends on BACKLIGHT_CLASS_DEVICE
-	depends on INPUT
-	depends on RFKILL || RFKILL = n
-	depends on ACPI_VIDEO || ACPI_VIDEO = n
-	select INPUT_SPARSEKMAP
-	help
-	  This is a driver for Asus laptops, Lenovo SL and the Pegatron
-	  Lucid tablet. It may also support some MEDION, JVC or VICTOR
-	  laptops. It makes all the extra buttons generate standard
-	  ACPI events and input events, and on the Lucid the built-in
-	  accelerometer appears as an input device.  It also adds
-	  support for video output switching, LCD backlight control,
-	  Bluetooth and Wlan control, and most importantly, allows you
-	  to blink those fancy LEDs.
-
-	  For more information see <http://acpi4asus.sf.net>.
-
-	  If you have an ACPI-compatible ASUS laptop, say Y or M here.
-
-config ASUS_WIRELESS
-	tristate "Asus Wireless Radio Control Driver"
-	depends on ACPI
-	depends on INPUT
-	select NEW_LEDS
-	select LEDS_CLASS
-	help
-	  The Asus Wireless Radio Control handles the airplane mode hotkey
-	  present on some Asus laptops.
-
-	  Say Y or M here if you have an ASUS notebook with an airplane mode
-	  hotkey.
-
-	  If you choose to compile this driver as a module the module will be
-	  called asus-wireless.
-
-config ASUS_ARMOURY
-	tristate "ASUS Armoury driver"
-	depends on ASUS_WMI
-	select FW_ATTR_CLASS
-	help
-	  Say Y here if you have a WMI aware Asus machine and would like to use the
-	  firmware_attributes API to control various settings typically exposed in
-	  the ASUS Armoury Crate application available on Windows.
-
-	  To compile this driver as a module, choose M here: the module will
-	  be called asus-armoury.
-
-config ASUS_WMI
-	tristate "ASUS WMI Driver"
-	depends on ACPI_WMI
-	depends on ACPI_BATTERY
-	depends on INPUT
-	depends on HWMON
-	depends on BACKLIGHT_CLASS_DEVICE
-	depends on RFKILL || RFKILL = n
-	depends on HOTPLUG_PCI
-	depends on ACPI_VIDEO || ACPI_VIDEO = n
-	depends on SERIO_I8042 || SERIO_I8042 = n
-	select INPUT_SPARSEKMAP
-	select LEDS_CLASS
-	select NEW_LEDS
-	select ACPI_PLATFORM_PROFILE
-	help
-	  Say Y here if you have a WMI aware Asus laptop (like Eee PCs or new
-	  Asus Notebooks).
-
-	  To compile this driver as a module, choose M here: the module will
-	  be called asus-wmi.
-
-config ASUS_WMI_DEPRECATED_ATTRS
-	bool "BIOS option support in WMI platform (DEPRECATED)"
-	depends on ASUS_WMI
-	default y
-	help
-	  Say Y to expose the configurable BIOS options through the asus-wmi
-	  driver.
-
-	  This can be used with or without the asus-armoury driver which
-	  has the same attributes, but more, and better features.
-
-config ASUS_NB_WMI
-	tristate "Asus Notebook WMI Driver"
-	depends on ASUS_WMI
-	help
-	  This is a driver for newer Asus notebooks. It adds extra features
-	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
-
-	  For more information, see
-	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
-
-	  If you have an ACPI-WMI compatible Asus Notebook, say Y or M
-	  here.
-
-config ASUS_TF103C_DOCK
-	tristate "Asus TF103C 2-in-1 keyboard dock"
-	depends on ACPI
-	depends on I2C
-	depends on INPUT
-	depends on HID
-	depends on GPIOLIB
-	help
-	  This is a driver for the keyboard, touchpad and USB port of the
-	  keyboard dock for the Asus TF103C 2-in-1 tablet.
-
-	  This keyboard dock has its own I2C attached embedded controller
-	  and the keyboard and touchpad are also connected over I2C,
-	  instead of using the usual USB connection. This means that the
-	  keyboard dock requires this special driver to function.
-
-	  If you have an Asus TF103C tablet say Y or M here, for a generic x86
-	  distro config say M here.
-
 config AYANEO_EC
 	tristate "Ayaneo EC platform control"
 	depends on DMI
@@ -357,41 +240,6 @@ config MERAKI_MX100
 	  To compile this driver as a module, choose M here: the module
 	  will be called meraki-mx100.
 
-config EEEPC_LAPTOP
-	tristate "Eee PC Hotkey Driver"
-	depends on ACPI_EC
-	depends on INPUT
-	depends on RFKILL || RFKILL = n
-	depends on ACPI_VIDEO || ACPI_VIDEO = n
-	depends on HOTPLUG_PCI
-	depends on BACKLIGHT_CLASS_DEVICE
-	select HWMON
-	select LEDS_CLASS
-	select NEW_LEDS
-	select INPUT_SPARSEKMAP
-	help
-	  This driver supports the Fn-Fx keys on Eee PC laptops.
-
-	  It  also gives access to some extra laptop functionalities like
-	  Bluetooth, backlight and allows powering on/off some other
-	  devices.
-
-	  If you have an Eee PC laptop, say Y or M here. If this driver
-	  doesn't work on your Eee PC, try eeepc-wmi instead.
-
-config EEEPC_WMI
-	tristate "Eee PC WMI Driver"
-	depends on ASUS_WMI
-	help
-	  This is a driver for newer Eee PC laptops. It adds extra features
-	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
-
-	  For more information, see
-	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
-
-	  If you have an ACPI-WMI compatible Eee PC laptop (>= 1000), say Y or M
-	  here.
-
 source "drivers/platform/x86/dell/Kconfig"
 
 config AMILO_RFKILL
diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile
index 229057234d00..88f45e03ee19 100644
--- a/drivers/platform/x86/Makefile
+++ b/drivers/platform/x86/Makefile
@@ -28,16 +28,6 @@ obj-$(CONFIG_ADV_SWBUTTON)	+= adv_swbutton.o
 # Apple
 obj-$(CONFIG_APPLE_GMUX)	+= apple-gmux.o
 
-# ASUS
-obj-$(CONFIG_ASUS_LAPTOP)	+= asus-laptop.o
-obj-$(CONFIG_ASUS_WIRELESS)	+= asus-wireless.o
-obj-$(CONFIG_ASUS_ARMOURY)	+= asus-armoury.o
-obj-$(CONFIG_ASUS_WMI)		+= asus-wmi.o
-obj-$(CONFIG_ASUS_NB_WMI)	+= asus-nb-wmi.o
-obj-$(CONFIG_ASUS_TF103C_DOCK)	+= asus-tf103c-dock.o
-obj-$(CONFIG_EEEPC_LAPTOP)	+= eeepc-laptop.o
-obj-$(CONFIG_EEEPC_WMI)		+= eeepc-wmi.o
-
 # Ayaneo
 obj-$(CONFIG_AYANEO_EC)		+= ayaneo-ec.o
 
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH v6] platform/asus: Move ASUS platform drivers out of drivers/platform/x86
  2026-11-09 12:21           ` Ilpo Järvinen
  2026-11-10  6:31             ` [PATCH v5] " Chipang Kao
@ 2026-11-10  6:56             ` Chipang Kao
  2026-11-10 14:47               ` Ilpo Järvinen
  1 sibling, 1 reply; 18+ messages in thread
From: Chipang Kao @ 2026-11-10  6:56 UTC (permalink / raw)
  To: ilpo.jarvinen
  Cc: W_Armin, chipang_kao, corentin.chary, denis.benato, hansg,
	linux-kernel, luke, platform-driver-x86, prozac2734, scardracs

From: Chipang Kao <chipang_kao@asus.com>

ASUS WMI and related platform drivers currently reside under
drivers/platform/x86/. However, with the emergence of ARM64 devices
utilizing ACPI WMI interfaces, maintaining these drivers exclusively
under x86 creates unnecessary architectural restrictions and Kconfig
duplications.

To allow non-x86 architectures (such as ARM64) to select and build
the applicable ASUS platform drivers:
1. Relocate all ASUS platform drivers and headers from
   drivers/platform/x86/ to drivers/platform/asus/.
2. Create dedicated Kconfig and Makefile under drivers/platform/asus/.
3. Update drivers/platform/x86/Kconfig to remove duplicated entries.

Signed-off-by: Chipang Kao <chipang_kao@asus.com>
---
Changes in v6:
- Modify author name

 MAINTAINERS                                   |   8 +-
 drivers/platform/Kconfig                      |   2 +
 drivers/platform/Makefile                     |   1 +
 drivers/platform/asus/Kconfig                 | 160 ++++++++++++++++++
 drivers/platform/asus/Makefile                |  14 ++
 drivers/platform/{x86 => asus}/asus-armoury.c |   0
 drivers/platform/{x86 => asus}/asus-armoury.h |   0
 drivers/platform/{x86 => asus}/asus-laptop.c  |   0
 drivers/platform/{x86 => asus}/asus-nb-wmi.c  |   0
 .../platform/{x86 => asus}/asus-tf103c-dock.c |   0
 .../platform/{x86 => asus}/asus-wireless.c    |   0
 drivers/platform/{x86 => asus}/asus-wmi.c     |   0
 drivers/platform/{x86 => asus}/asus-wmi.h     |   0
 drivers/platform/{x86 => asus}/eeepc-laptop.c |   0
 drivers/platform/{x86 => asus}/eeepc-wmi.c    |   0
 drivers/platform/x86/Kconfig                  | 152 -----------------
 drivers/platform/x86/Makefile                 |  10 --
 17 files changed, 181 insertions(+), 166 deletions(-)
 create mode 100644 drivers/platform/asus/Kconfig
 create mode 100644 drivers/platform/asus/Makefile
 rename drivers/platform/{x86 => asus}/asus-armoury.c (100%)
 rename drivers/platform/{x86 => asus}/asus-armoury.h (100%)
 rename drivers/platform/{x86 => asus}/asus-laptop.c (100%)
 rename drivers/platform/{x86 => asus}/asus-nb-wmi.c (100%)
 rename drivers/platform/{x86 => asus}/asus-tf103c-dock.c (100%)
 rename drivers/platform/{x86 => asus}/asus-wireless.c (100%)
 rename drivers/platform/{x86 => asus}/asus-wmi.c (100%)
 rename drivers/platform/{x86 => asus}/asus-wmi.h (100%)
 rename drivers/platform/{x86 => asus}/eeepc-laptop.c (100%)
 rename drivers/platform/{x86 => asus}/eeepc-wmi.c (100%)

diff --git a/MAINTAINERS b/MAINTAINERS
index 222b7fc2c3aa..981eb3fdbef4 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -4226,15 +4226,15 @@ M:	Denis Benato <denis.benato@linux.dev>
 L:	platform-driver-x86@vger.kernel.org
 S:	Maintained
 W:	https://asus-linux.org/
-F:	drivers/platform/x86/asus*.c
-F:	drivers/platform/x86/eeepc*.c
+F:	drivers/platform/asus/asus*.c
+F:	drivers/platform/asus/eeepc*.c
 
 ASUS TF103C DOCK DRIVER
 M:	Hans de Goede <hansg@kernel.org>
 L:	platform-driver-x86@vger.kernel.org
 S:	Maintained
 T:	git git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git
-F:	drivers/platform/x86/asus-tf103c-dock.c
+F:	drivers/platform/asus/asus-tf103c-dock.c
 
 ASUS ROG RYUJIN AIO HARDWARE MONITOR DRIVER
 M:	Aleksa Savic <savicaleksa83@gmail.com>
@@ -4246,7 +4246,7 @@ ASUS WIRELESS RADIO CONTROL DRIVER
 M:	João Paulo Rechi Vita <jprvita@gmail.com>
 L:	platform-driver-x86@vger.kernel.org
 S:	Maintained
-F:	drivers/platform/x86/asus-wireless.c
+F:	drivers/platform/asus/asus-wireless.c
 
 ASUS WMI HARDWARE MONITOR DRIVER
 M:	Ed Brindley <kernel@maidavale.org>
diff --git a/drivers/platform/Kconfig b/drivers/platform/Kconfig
index 312788f249c9..aa004b0e4406 100644
--- a/drivers/platform/Kconfig
+++ b/drivers/platform/Kconfig
@@ -22,3 +22,5 @@ source "drivers/platform/arm64/Kconfig"
 source "drivers/platform/raspberrypi/Kconfig"
 
 source "drivers/platform/wmi/Kconfig"
+
+source "drivers/platform/asus/Kconfig"
diff --git a/drivers/platform/Makefile b/drivers/platform/Makefile
index fa322e7f8716..34e694e6da14 100644
--- a/drivers/platform/Makefile
+++ b/drivers/platform/Makefile
@@ -15,3 +15,4 @@ obj-$(CONFIG_SURFACE_PLATFORMS)	+= surface/
 obj-$(CONFIG_ARM64_PLATFORM_DEVICES)	+= arm64/
 obj-$(CONFIG_BCM2835_VCHIQ)	+= raspberrypi/
 obj-$(CONFIG_ACPI_WMI)		+= wmi/
+obj-y				+= asus/
diff --git a/drivers/platform/asus/Kconfig b/drivers/platform/asus/Kconfig
new file mode 100644
index 000000000000..4b79957f045f
--- /dev/null
+++ b/drivers/platform/asus/Kconfig
@@ -0,0 +1,160 @@
+# SPDX-License-Identifier: GPL-2.0-only
+#
+# Asus Platform Specific Drivers
+#
+
+if X86_PLATFORM_DEVICES
+
+config ASUS_LAPTOP
+	tristate "Asus Laptop Extras"
+	depends on ACPI
+	select LEDS_CLASS
+	select NEW_LEDS
+	depends on BACKLIGHT_CLASS_DEVICE
+	depends on INPUT
+	depends on RFKILL || RFKILL = n
+	depends on ACPI_VIDEO || ACPI_VIDEO = n
+	select INPUT_SPARSEKMAP
+	help
+	  This is a driver for Asus laptops, Lenovo SL and the Pegatron
+	  Lucid tablet. It may also support some MEDION, JVC or VICTOR
+	  laptops. It makes all the extra buttons generate standard
+	  ACPI events and input events, and on the Lucid the built-in
+	  accelerometer appears as an input device.  It also adds
+	  support for video output switching, LCD backlight control,
+	  Bluetooth and Wlan control, and most importantly, allows you
+	  to blink those fancy LEDs.
+
+	  For more information see <http://acpi4asus.sf.net>.
+
+	  If you have an ACPI-compatible ASUS laptop, say Y or M here.
+
+config ASUS_WIRELESS
+	tristate "Asus Wireless Radio Control Driver"
+	depends on ACPI
+	depends on INPUT
+	select NEW_LEDS
+	select LEDS_CLASS
+	help
+	  The Asus Wireless Radio Control handles the airplane mode hotkey
+	  present on some Asus laptops.
+
+	  Say Y or M here if you have an ASUS notebook with an airplane mode
+	  hotkey.
+
+	  If you choose to compile this driver as a module the module will be
+	  called asus-wireless.
+
+config ASUS_TF103C_DOCK
+	tristate "Asus TF103C 2-in-1 keyboard dock"
+	depends on ACPI
+	depends on I2C
+	depends on INPUT
+	depends on HID
+	depends on GPIOLIB
+	help
+	  This is a driver for the keyboard, touchpad and USB port of the
+	  keyboard dock for the Asus TF103C 2-in-1 tablet.
+
+	  This keyboard dock has its own I2C attached embedded controller
+	  and the keyboard and touchpad are also connected over I2C,
+	  instead of using the usual USB connection. This means that the
+	  keyboard dock requires this special driver to function.
+
+	  If you have an Asus TF103C tablet say Y or M here, for a generic x86
+	  distro config say M here.
+
+config EEEPC_WMI
+	tristate "Eee PC WMI Driver"
+	depends on ASUS_WMI
+	help
+	  This is a driver for newer Eee PC laptops. It adds extra features
+	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
+
+	  For more information, see
+	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
+
+	  If you have an ACPI-WMI compatible Eee PC laptop (>= 1000), say Y or M
+	  here.
+
+config EEEPC_LAPTOP
+	tristate "Eee PC Hotkey Driver"
+	depends on ACPI_EC
+	depends on INPUT
+	depends on RFKILL || RFKILL = n
+	depends on ACPI_VIDEO || ACPI_VIDEO = n
+	depends on HOTPLUG_PCI
+	depends on BACKLIGHT_CLASS_DEVICE
+	select HWMON
+	select LEDS_CLASS
+	select NEW_LEDS
+	select INPUT_SPARSEKMAP
+	help
+	  This driver supports the Fn-Fx keys on Eee PC laptops.
+
+	  It  also gives access to some extra laptop functionalities like
+	  Bluetooth, backlight and allows powering on/off some other
+	  devices.
+
+	  If you have an Eee PC laptop, say Y or M here. If this driver
+	  doesn't work on your Eee PC, try eeepc-wmi instead.
+
+endif # X86_PLATFORM_DEVICES
+
+config ASUS_ARMOURY
+	tristate "ASUS Armoury driver"
+	depends on ASUS_WMI
+	select FW_ATTR_CLASS
+	help
+	  Say Y here if you have a WMI aware Asus machine and would like to use the
+	  firmware_attributes API to control various settings typically exposed in
+	  the ASUS Armoury Crate application available on Windows.
+
+	  To compile this driver as a module, choose M here: the module will
+	  be called asus-armoury.
+
+config ASUS_WMI
+	tristate "ASUS WMI Driver"
+	depends on ACPI_WMI
+	depends on ACPI_BATTERY
+	depends on INPUT
+	depends on HWMON
+	depends on BACKLIGHT_CLASS_DEVICE
+	depends on RFKILL || RFKILL = n
+	depends on HOTPLUG_PCI
+	depends on ACPI_VIDEO || ACPI_VIDEO = n
+	depends on SERIO_I8042 || SERIO_I8042 = n
+	select INPUT_SPARSEKMAP
+	select LEDS_CLASS
+	select NEW_LEDS
+	select ACPI_PLATFORM_PROFILE
+	help
+	  Say Y here if you have a WMI aware Asus laptop (like Eee PCs or new
+	  Asus Notebooks).
+
+	  To compile this driver as a module, choose M here: the module will
+	  be called asus-wmi.
+
+config ASUS_WMI_DEPRECATED_ATTRS
+	bool "BIOS option support in WMI platform (DEPRECATED)"
+	depends on ASUS_WMI
+	default y
+	help
+	  Say Y to expose the configurable BIOS options through the asus-wmi
+	  driver.
+
+	  This can be used with or without the asus-armoury driver which
+	  has the same attributes, but more, and better features.
+
+config ASUS_NB_WMI
+	tristate "Asus Notebook WMI Driver"
+	depends on ASUS_WMI
+	help
+	  This is a driver for newer Asus notebooks. It adds extra features
+	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
+
+	  For more information, see
+	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
+
+	  If you have an ACPI-WMI compatible Asus Notebook, say Y or M
+	  here.
diff --git a/drivers/platform/asus/Makefile b/drivers/platform/asus/Makefile
new file mode 100644
index 000000000000..7bb25cba4853
--- /dev/null
+++ b/drivers/platform/asus/Makefile
@@ -0,0 +1,14 @@
+# SPDX-License-Identifier: GPL-2.0
+#
+# Makefile for linux/drivers/platform/asus
+# Asus Platform-Specific Drivers
+#
+
+obj-$(CONFIG_ASUS_LAPTOP)	+= asus-laptop.o
+obj-$(CONFIG_ASUS_WIRELESS)	+= asus-wireless.o
+obj-$(CONFIG_ASUS_ARMOURY)	+= asus-armoury.o
+obj-$(CONFIG_ASUS_WMI)		+= asus-wmi.o
+obj-$(CONFIG_ASUS_NB_WMI)	+= asus-nb-wmi.o
+obj-$(CONFIG_ASUS_TF103C_DOCK)	+= asus-tf103c-dock.o
+obj-$(CONFIG_EEEPC_LAPTOP)	+= eeepc-laptop.o
+obj-$(CONFIG_EEEPC_WMI)		+= eeepc-wmi.o
diff --git a/drivers/platform/x86/asus-armoury.c b/drivers/platform/asus/asus-armoury.c
similarity index 100%
rename from drivers/platform/x86/asus-armoury.c
rename to drivers/platform/asus/asus-armoury.c
diff --git a/drivers/platform/x86/asus-armoury.h b/drivers/platform/asus/asus-armoury.h
similarity index 100%
rename from drivers/platform/x86/asus-armoury.h
rename to drivers/platform/asus/asus-armoury.h
diff --git a/drivers/platform/x86/asus-laptop.c b/drivers/platform/asus/asus-laptop.c
similarity index 100%
rename from drivers/platform/x86/asus-laptop.c
rename to drivers/platform/asus/asus-laptop.c
diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/asus/asus-nb-wmi.c
similarity index 100%
rename from drivers/platform/x86/asus-nb-wmi.c
rename to drivers/platform/asus/asus-nb-wmi.c
diff --git a/drivers/platform/x86/asus-tf103c-dock.c b/drivers/platform/asus/asus-tf103c-dock.c
similarity index 100%
rename from drivers/platform/x86/asus-tf103c-dock.c
rename to drivers/platform/asus/asus-tf103c-dock.c
diff --git a/drivers/platform/x86/asus-wireless.c b/drivers/platform/asus/asus-wireless.c
similarity index 100%
rename from drivers/platform/x86/asus-wireless.c
rename to drivers/platform/asus/asus-wireless.c
diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/asus/asus-wmi.c
similarity index 100%
rename from drivers/platform/x86/asus-wmi.c
rename to drivers/platform/asus/asus-wmi.c
diff --git a/drivers/platform/x86/asus-wmi.h b/drivers/platform/asus/asus-wmi.h
similarity index 100%
rename from drivers/platform/x86/asus-wmi.h
rename to drivers/platform/asus/asus-wmi.h
diff --git a/drivers/platform/x86/eeepc-laptop.c b/drivers/platform/asus/eeepc-laptop.c
similarity index 100%
rename from drivers/platform/x86/eeepc-laptop.c
rename to drivers/platform/asus/eeepc-laptop.c
diff --git a/drivers/platform/x86/eeepc-wmi.c b/drivers/platform/asus/eeepc-wmi.c
similarity index 100%
rename from drivers/platform/x86/eeepc-wmi.c
rename to drivers/platform/asus/eeepc-wmi.c
diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
index 9ce384e0475e..b2c6cc923694 100644
--- a/drivers/platform/x86/Kconfig
+++ b/drivers/platform/x86/Kconfig
@@ -213,123 +213,6 @@ config APPLE_GMUX
 	  graphics as well as the backlight. Currently only backlight
 	  control is supported by the driver.
 
-config ASUS_LAPTOP
-	tristate "Asus Laptop Extras"
-	depends on ACPI
-	select LEDS_CLASS
-	select NEW_LEDS
-	depends on BACKLIGHT_CLASS_DEVICE
-	depends on INPUT
-	depends on RFKILL || RFKILL = n
-	depends on ACPI_VIDEO || ACPI_VIDEO = n
-	select INPUT_SPARSEKMAP
-	help
-	  This is a driver for Asus laptops, Lenovo SL and the Pegatron
-	  Lucid tablet. It may also support some MEDION, JVC or VICTOR
-	  laptops. It makes all the extra buttons generate standard
-	  ACPI events and input events, and on the Lucid the built-in
-	  accelerometer appears as an input device.  It also adds
-	  support for video output switching, LCD backlight control,
-	  Bluetooth and Wlan control, and most importantly, allows you
-	  to blink those fancy LEDs.
-
-	  For more information see <http://acpi4asus.sf.net>.
-
-	  If you have an ACPI-compatible ASUS laptop, say Y or M here.
-
-config ASUS_WIRELESS
-	tristate "Asus Wireless Radio Control Driver"
-	depends on ACPI
-	depends on INPUT
-	select NEW_LEDS
-	select LEDS_CLASS
-	help
-	  The Asus Wireless Radio Control handles the airplane mode hotkey
-	  present on some Asus laptops.
-
-	  Say Y or M here if you have an ASUS notebook with an airplane mode
-	  hotkey.
-
-	  If you choose to compile this driver as a module the module will be
-	  called asus-wireless.
-
-config ASUS_ARMOURY
-	tristate "ASUS Armoury driver"
-	depends on ASUS_WMI
-	select FW_ATTR_CLASS
-	help
-	  Say Y here if you have a WMI aware Asus machine and would like to use the
-	  firmware_attributes API to control various settings typically exposed in
-	  the ASUS Armoury Crate application available on Windows.
-
-	  To compile this driver as a module, choose M here: the module will
-	  be called asus-armoury.
-
-config ASUS_WMI
-	tristate "ASUS WMI Driver"
-	depends on ACPI_WMI
-	depends on ACPI_BATTERY
-	depends on INPUT
-	depends on HWMON
-	depends on BACKLIGHT_CLASS_DEVICE
-	depends on RFKILL || RFKILL = n
-	depends on HOTPLUG_PCI
-	depends on ACPI_VIDEO || ACPI_VIDEO = n
-	depends on SERIO_I8042 || SERIO_I8042 = n
-	select INPUT_SPARSEKMAP
-	select LEDS_CLASS
-	select NEW_LEDS
-	select ACPI_PLATFORM_PROFILE
-	help
-	  Say Y here if you have a WMI aware Asus laptop (like Eee PCs or new
-	  Asus Notebooks).
-
-	  To compile this driver as a module, choose M here: the module will
-	  be called asus-wmi.
-
-config ASUS_WMI_DEPRECATED_ATTRS
-	bool "BIOS option support in WMI platform (DEPRECATED)"
-	depends on ASUS_WMI
-	default y
-	help
-	  Say Y to expose the configurable BIOS options through the asus-wmi
-	  driver.
-
-	  This can be used with or without the asus-armoury driver which
-	  has the same attributes, but more, and better features.
-
-config ASUS_NB_WMI
-	tristate "Asus Notebook WMI Driver"
-	depends on ASUS_WMI
-	help
-	  This is a driver for newer Asus notebooks. It adds extra features
-	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
-
-	  For more information, see
-	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
-
-	  If you have an ACPI-WMI compatible Asus Notebook, say Y or M
-	  here.
-
-config ASUS_TF103C_DOCK
-	tristate "Asus TF103C 2-in-1 keyboard dock"
-	depends on ACPI
-	depends on I2C
-	depends on INPUT
-	depends on HID
-	depends on GPIOLIB
-	help
-	  This is a driver for the keyboard, touchpad and USB port of the
-	  keyboard dock for the Asus TF103C 2-in-1 tablet.
-
-	  This keyboard dock has its own I2C attached embedded controller
-	  and the keyboard and touchpad are also connected over I2C,
-	  instead of using the usual USB connection. This means that the
-	  keyboard dock requires this special driver to function.
-
-	  If you have an Asus TF103C tablet say Y or M here, for a generic x86
-	  distro config say M here.
-
 config AYANEO_EC
 	tristate "Ayaneo EC platform control"
 	depends on DMI
@@ -357,41 +240,6 @@ config MERAKI_MX100
 	  To compile this driver as a module, choose M here: the module
 	  will be called meraki-mx100.
 
-config EEEPC_LAPTOP
-	tristate "Eee PC Hotkey Driver"
-	depends on ACPI_EC
-	depends on INPUT
-	depends on RFKILL || RFKILL = n
-	depends on ACPI_VIDEO || ACPI_VIDEO = n
-	depends on HOTPLUG_PCI
-	depends on BACKLIGHT_CLASS_DEVICE
-	select HWMON
-	select LEDS_CLASS
-	select NEW_LEDS
-	select INPUT_SPARSEKMAP
-	help
-	  This driver supports the Fn-Fx keys on Eee PC laptops.
-
-	  It  also gives access to some extra laptop functionalities like
-	  Bluetooth, backlight and allows powering on/off some other
-	  devices.
-
-	  If you have an Eee PC laptop, say Y or M here. If this driver
-	  doesn't work on your Eee PC, try eeepc-wmi instead.
-
-config EEEPC_WMI
-	tristate "Eee PC WMI Driver"
-	depends on ASUS_WMI
-	help
-	  This is a driver for newer Eee PC laptops. It adds extra features
-	  like wireless radio and bluetooth control, leds, hotkeys, backlight...
-
-	  For more information, see
-	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
-
-	  If you have an ACPI-WMI compatible Eee PC laptop (>= 1000), say Y or M
-	  here.
-
 source "drivers/platform/x86/dell/Kconfig"
 
 config AMILO_RFKILL
diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile
index 229057234d00..88f45e03ee19 100644
--- a/drivers/platform/x86/Makefile
+++ b/drivers/platform/x86/Makefile
@@ -28,16 +28,6 @@ obj-$(CONFIG_ADV_SWBUTTON)	+= adv_swbutton.o
 # Apple
 obj-$(CONFIG_APPLE_GMUX)	+= apple-gmux.o
 
-# ASUS
-obj-$(CONFIG_ASUS_LAPTOP)	+= asus-laptop.o
-obj-$(CONFIG_ASUS_WIRELESS)	+= asus-wireless.o
-obj-$(CONFIG_ASUS_ARMOURY)	+= asus-armoury.o
-obj-$(CONFIG_ASUS_WMI)		+= asus-wmi.o
-obj-$(CONFIG_ASUS_NB_WMI)	+= asus-nb-wmi.o
-obj-$(CONFIG_ASUS_TF103C_DOCK)	+= asus-tf103c-dock.o
-obj-$(CONFIG_EEEPC_LAPTOP)	+= eeepc-laptop.o
-obj-$(CONFIG_EEEPC_WMI)		+= eeepc-wmi.o
-
 # Ayaneo
 obj-$(CONFIG_AYANEO_EC)		+= ayaneo-ec.o
 
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* Re: [PATCH v6] platform/asus: Move ASUS platform drivers out of drivers/platform/x86
  2026-11-10  6:56             ` [PATCH v6] " Chipang Kao
@ 2026-11-10 14:47               ` Ilpo Järvinen
  2026-11-10 14:51                 ` Denis Benato
  0 siblings, 1 reply; 18+ messages in thread
From: Ilpo Järvinen @ 2026-11-10 14:47 UTC (permalink / raw)
  To: Chipang Kao
  Cc: W_Armin, chipang_kao, corentin.chary, denis.benato, hansg,
	linux-kernel, luke, platform-driver-x86, scardracs

On Tue, 10 Nov 2026 14:56:28 +0800, Chipang Kao wrote:

> ASUS WMI and related platform drivers currently reside under
> drivers/platform/x86/. However, with the emergence of ARM64 devices
> utilizing ACPI WMI interfaces, maintaining these drivers exclusively
> under x86 creates unnecessary architectural restrictions and Kconfig
> duplications.
> 
> To allow non-x86 architectures (such as ARM64) to select and build
> the applicable ASUS platform drivers:
> 1. Relocate all ASUS platform drivers and headers from
>    drivers/platform/x86/ to drivers/platform/asus/.
> 2. Create dedicated Kconfig and Makefile under drivers/platform/asus/.
> 3. Update drivers/platform/x86/Kconfig to remove duplicated entries.
> 
> [...]

Thank you for your contribution, it has been applied to my local
review-ilpo-next branch. Note it will show up in the public
platform-drivers-x86/review-ilpo-next branch only once I've pushed my
local branch there, which might take a while.

FYI [if applicable to your patch], as per Linus' policy change, also
fixes are mostly routed through for-next unless the fix is for a
commit introduced in the most recent cycle or is clearly a regression
fix.

The list of commits applied:
[1/1] platform/asus: Move ASUS platform drivers out of drivers/platform/x86
      commit: 6e3b727ff3115a4f870bdcfafc3f6827c2d36676

--
 i.


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH v6] platform/asus: Move ASUS platform drivers out of drivers/platform/x86
  2026-11-10 14:47               ` Ilpo Järvinen
@ 2026-11-10 14:51                 ` Denis Benato
  2026-11-10 15:00                   ` Ilpo Järvinen
  0 siblings, 1 reply; 18+ messages in thread
From: Denis Benato @ 2026-11-10 14:51 UTC (permalink / raw)
  To: Ilpo Järvinen
  Cc: Chipang Kao, W_Armin, chipang_kao, corentin.chary, hansg,
	linux-kernel, luke, platform-driver-x86, scardracs

10 nov 2026 15:48:16 Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>:

> On Tue, 10 Nov 2026 14:56:28 +0800, Chipang Kao wrote:
>
>> ASUS WMI and related platform drivers currently reside under
>> drivers/platform/x86/. However, with the emergence of ARM64 devices
>> utilizing ACPI WMI interfaces, maintaining these drivers exclusively
>> under x86 creates unnecessary architectural restrictions and Kconfig
>> duplications.
>>
>> To allow non-x86 architectures (such as ARM64) to select and build
>> the applicable ASUS platform drivers:
>> 1. Relocate all ASUS platform drivers and headers from
>>    drivers/platform/x86/ to drivers/platform/asus/.
>> 2. Create dedicated Kconfig and Makefile under drivers/platform/asus/.
>> 3. Update drivers/platform/x86/Kconfig to remove duplicated entries.
>>
>> [...]
>
> Thank you for your contribution, it has been applied to my local
> review-ilpo-next branch. Note it will show up in the public
> platform-drivers-x86/review-ilpo-next branch only once I've pushed my
> local branch there, which might take a while.
>
> FYI [if applicable to your patch], as per Linus' policy change, also
> fixes are mostly routed through for-next unless the fix is for a
> commit introduced in the most recent cycle or is clearly a regression
> fix.
>

Hi Ilpo,

v5 was resent without my reviewed-by, can you please add it back? Thank you.


> The list of commits applied:
> [1/1] platform/asus: Move ASUS platform drivers out of drivers/platform/x86
>       commit: 6e3b727ff3115a4f870bdcfafc3f6827c2d36676
>
> --
> i.


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH v6] platform/asus: Move ASUS platform drivers out of drivers/platform/x86
  2026-11-10 14:51                 ` Denis Benato
@ 2026-11-10 15:00                   ` Ilpo Järvinen
  0 siblings, 0 replies; 18+ messages in thread
From: Ilpo Järvinen @ 2026-11-10 15:00 UTC (permalink / raw)
  To: Denis Benato
  Cc: Chipang Kao, W_Armin, chipang_kao, corentin.chary, Hans de Goede,
	LKML, luke, platform-driver-x86, scardracs

[-- Attachment #1: Type: text/plain, Size: 1954 bytes --]

On Tue, 10 Nov 2026, Denis Benato wrote:

> 10 nov 2026 15:48:16 Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>:
> 
> > On Tue, 10 Nov 2026 14:56:28 +0800, Chipang Kao wrote:
> >
> >> ASUS WMI and related platform drivers currently reside under
> >> drivers/platform/x86/. However, with the emergence of ARM64 devices
> >> utilizing ACPI WMI interfaces, maintaining these drivers exclusively
> >> under x86 creates unnecessary architectural restrictions and Kconfig
> >> duplications.
> >>
> >> To allow non-x86 architectures (such as ARM64) to select and build
> >> the applicable ASUS platform drivers:
> >> 1. Relocate all ASUS platform drivers and headers from
> >>    drivers/platform/x86/ to drivers/platform/asus/.
> >> 2. Create dedicated Kconfig and Makefile under drivers/platform/asus/.
> >> 3. Update drivers/platform/x86/Kconfig to remove duplicated entries.
> >>
> >> [...]
> >
> > Thank you for your contribution, it has been applied to my local
> > review-ilpo-next branch. Note it will show up in the public
> > platform-drivers-x86/review-ilpo-next branch only once I've pushed my
> > local branch there, which might take a while.
> >
> > FYI [if applicable to your patch], as per Linus' policy change, also
> > fixes are mostly routed through for-next unless the fix is for a
> > commit introduced in the most recent cycle or is clearly a regression
> > fix.
> >
> 
> Hi Ilpo,
> 
> v5 was resent without my reviewed-by, can you please add it back? Thank you.

Thanks for spotting. I've now put the tag there.


Chipang,

Generally the Reviewed-by and Tested-by tags should be collected from 
previous version(s) when preparing to send a new version as maintainer 
tools only automatically pick them from the current version thread 
(err'ing to the side caution).

Only if you make really major changes, it might be warranted to drop tags 
but those cases are truly rare.


-- 
 i.

^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2026-11-10 15:01 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <202609221954.123456@gmx.de>
2026-09-23  8:29 ` [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus chipang_kao
2026-09-23  8:42   ` Hans de Goede
2026-09-23 12:18     ` Denis Benato
2026-10-16  6:34     ` chipang_kao
2026-10-27 10:08       ` Ilpo Järvinen
2026-11-06  3:35         ` [PATCH v4] platform/asus: Move ASUS platform drivers out of drivers/platform/x86 chipang_kao
2026-11-08 14:16           ` Denis Benato
2026-11-09 12:21           ` Ilpo Järvinen
2026-11-10  6:31             ` [PATCH v5] " Chipang Kao
2026-11-10  6:56             ` [PATCH v6] " Chipang Kao
2026-11-10 14:47               ` Ilpo Järvinen
2026-11-10 14:51                 ` Denis Benato
2026-11-10 15:00                   ` Ilpo Järvinen
2026-09-23 12:22   ` [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus Denis Benato
2026-09-18  7:38 [PATCH 0/2] platform: Enable ACPI WMI and ASUS WMI driver for ARM64 Hans de Goede
2026-09-22  3:21 ` [PATCH v3] platform/wmi: Move ASUS platform drivers from x86 to wmi/asus chipang_kao
2026-09-22 19:54   ` Armin Wolf
2026-09-24  1:58   ` kernel test robot
2026-09-24  2:32   ` kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox