mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH 0/2] platform: Enable ACPI WMI and ASUS WMI driver for ARM64
@ 2026-09-17  2:10 chipang_kao
  2026-09-17  2:10 ` [PATCH 1/2] platform/wmi: Remove X86 dependency for ACPI_WMI chipang_kao
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: chipang_kao @ 2026-09-17  2:10 UTC (permalink / raw)
  To: hansg, ilpo.jarvinen, bryan.odonoghue, W_Armin
  Cc: platform-driver-x86, linux-kernel, chipang_kao

This series enables ACPI WMI core support and the ASUS WMI platform
driver on ARM64 architectures.

ACPI WMI is not limited to x86 platforms. Modern ARM64 laptops and
platforms have adopted ACPI WMI to expose vendor-specific features
such as hotkeys and fan control.

To support these devices:
1. Removes the strict 'X86' dependency from CONFIG_ACPI_WMI.
2. Updates the ARM64 platform driver infrastructure to allow
   building the ASUS WMI driver without duplicating source code.

chipang_kao (2):
  platform/wmi: Remove X86 dependency for ACPI_WMI
  platform/arm64: Enable ASUS WMI driver support

 drivers/platform/arm64/Kconfig  | 46 +++++++++++++++++++++++++++++++++
 drivers/platform/arm64/Makefile |  2 ++
 drivers/platform/wmi/Kconfig    |  2 +-
 3 files changed, 49 insertions(+), 1 deletion(-)

-- 
2.43.0


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

* [PATCH 1/2] platform/wmi: Remove X86 dependency for ACPI_WMI
  2026-09-17  2:10 [PATCH 0/2] platform: Enable ACPI WMI and ASUS WMI driver for ARM64 chipang_kao
@ 2026-09-17  2:10 ` chipang_kao
  2026-09-17  2:10 ` [PATCH 2/2] platform/arm64: Enable ASUS WMI driver support chipang_kao
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 6+ messages in thread
From: chipang_kao @ 2026-09-17  2:10 UTC (permalink / raw)
  To: hansg, ilpo.jarvinen, bryan.odonoghue, W_Armin
  Cc: platform-driver-x86, linux-kernel, chipang_kao

Remove the 'X86' dependency from CONFIG_ACPI_WMI so that the WMI core
subsystem can be built and used on ARM64 systems with ACPI enabled.

Signed-off-by: chipang_kao <chipang_kao@asus.com>
---
 drivers/platform/wmi/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/platform/wmi/Kconfig b/drivers/platform/wmi/Kconfig
index d62f51ff3b7f..36934b5f0194 100644
--- a/drivers/platform/wmi/Kconfig
+++ b/drivers/platform/wmi/Kconfig
@@ -5,7 +5,7 @@
 
 menuconfig ACPI_WMI
 	tristate "ACPI-WMI support"
-	depends on ACPI && X86
+	depends on ACPI
 	select NLS
 	help
 	  This option enables support for the ACPI-WMI driver core.
-- 
2.43.0


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

* [PATCH 2/2] platform/arm64: Enable ASUS WMI driver support
  2026-09-17  2:10 [PATCH 0/2] platform: Enable ACPI WMI and ASUS WMI driver for ARM64 chipang_kao
  2026-09-17  2:10 ` [PATCH 1/2] platform/wmi: Remove X86 dependency for ACPI_WMI chipang_kao
@ 2026-09-17  2:10 ` chipang_kao
  2026-09-17  9:11   ` Ilpo Järvinen
  2026-09-17  9:03 ` [PATCH 0/2] platform: Enable ACPI WMI and ASUS WMI driver for ARM64 Ilpo Järvinen
  2026-09-18  7:38 ` Hans de Goede
  3 siblings, 1 reply; 6+ messages in thread
From: chipang_kao @ 2026-09-17  2:10 UTC (permalink / raw)
  To: hansg, ilpo.jarvinen, bryan.odonoghue, W_Armin
  Cc: platform-driver-x86, linux-kernel, chipang_kao

Wire up the Makefile to build drivers/platform/x86/asus-wmi.c
and asus-nb-wmi.c without duplicating driver source code.

Signed-off-by: chipang_kao <chipang_kao@asus.com>
---
 drivers/platform/arm64/Kconfig  | 46 +++++++++++++++++++++++++++++++++
 drivers/platform/arm64/Makefile |  2 ++
 2 files changed, 48 insertions(+)

diff --git a/drivers/platform/arm64/Kconfig b/drivers/platform/arm64/Kconfig
index e32e01b2a9bd..59aa389d9aab 100644
--- a/drivers/platform/arm64/Kconfig
+++ b/drivers/platform/arm64/Kconfig
@@ -103,4 +103,50 @@ config EC_QCOM_HAMOA
 
 	  This driver currently supports Hamoa/Purwa/Glymur reference devices.
 
+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.
+
 endif # ARM64_PLATFORM_DEVICES
diff --git a/drivers/platform/arm64/Makefile b/drivers/platform/arm64/Makefile
index 7681be4a46e9..d608b2aa8c12 100644
--- a/drivers/platform/arm64/Makefile
+++ b/drivers/platform/arm64/Makefile
@@ -10,3 +10,5 @@ obj-$(CONFIG_EC_HUAWEI_GAOKUN)	+= huawei-gaokun-ec.o
 obj-$(CONFIG_EC_LENOVO_YOGA_C630) += lenovo-yoga-c630.o
 obj-$(CONFIG_EC_LENOVO_THINKPAD_T14S) += lenovo-thinkpad-t14s.o
 obj-$(CONFIG_EC_QCOM_HAMOA) += qcom-hamoa-ec.o
+obj-$(CONFIG_ASUS_WMI) += ../x86/asus-wmi.o
+obj-$(CONFIG_ASUS_NB_WMI) += ../x86/asus-nb-wmi.o
-- 
2.43.0


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

* Re: [PATCH 0/2] platform: Enable ACPI WMI and ASUS WMI driver for ARM64
  2026-09-17  2:10 [PATCH 0/2] platform: Enable ACPI WMI and ASUS WMI driver for ARM64 chipang_kao
  2026-09-17  2:10 ` [PATCH 1/2] platform/wmi: Remove X86 dependency for ACPI_WMI chipang_kao
  2026-09-17  2:10 ` [PATCH 2/2] platform/arm64: Enable ASUS WMI driver support chipang_kao
@ 2026-09-17  9:03 ` Ilpo Järvinen
  2026-09-18  7:38 ` Hans de Goede
  3 siblings, 0 replies; 6+ messages in thread
From: Ilpo Järvinen @ 2026-09-17  9:03 UTC (permalink / raw)
  To: chipang_kao, W_Armin
  Cc: Hans de Goede, bryan.odonoghue, platform-driver-x86, LKML, chipang_kao

On Thu, 17 Sep 2026, chipang_kao wrote:

> This series enables ACPI WMI core support and the ASUS WMI platform
> driver on ARM64 architectures.
> 
> ACPI WMI is not limited to x86 platforms. Modern ARM64 laptops and
> platforms have adopted ACPI WMI to expose vendor-specific features
> such as hotkeys and fan control.
> 
> To support these devices:
> 1. Removes the strict 'X86' dependency from CONFIG_ACPI_WMI.
> 2. Updates the ARM64 platform driver infrastructure to allow
>    building the ASUS WMI driver without duplicating source code.
> 
> chipang_kao (2):
>   platform/wmi: Remove X86 dependency for ACPI_WMI
>   platform/arm64: Enable ASUS WMI driver support
> 
>  drivers/platform/arm64/Kconfig  | 46 +++++++++++++++++++++++++++++++++
>  drivers/platform/arm64/Makefile |  2 ++
>  drivers/platform/wmi/Kconfig    |  2 +-
>  3 files changed, 49 insertions(+), 1 deletion(-)

Thanks, but there's already a series to this effect under discussion:

  https://lore.kernel.org/all/20260724025959.142826-1-W_Armin@gmx.de/

If you have some insight, please comment on that thread.

My hope is that the other series will be ready for merging within this 
kernel cycle.

-- 
 i.


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

* Re: [PATCH 2/2] platform/arm64: Enable ASUS WMI driver support
  2026-09-17  2:10 ` [PATCH 2/2] platform/arm64: Enable ASUS WMI driver support chipang_kao
@ 2026-09-17  9:11   ` Ilpo Järvinen
  0 siblings, 0 replies; 6+ messages in thread
From: Ilpo Järvinen @ 2026-09-17  9:11 UTC (permalink / raw)
  To: chipang_kao
  Cc: Hans de Goede, bryan.odonoghue, W_Armin, platform-driver-x86,
	LKML, chipang_kao

On Thu, 17 Sep 2026, chipang_kao wrote:

> Wire up the Makefile to build drivers/platform/x86/asus-wmi.c
> and asus-nb-wmi.c without duplicating driver source code.
> 
> Signed-off-by: chipang_kao <chipang_kao@asus.com>
> ---
>  drivers/platform/arm64/Kconfig  | 46 +++++++++++++++++++++++++++++++++
>  drivers/platform/arm64/Makefile |  2 ++
>  2 files changed, 48 insertions(+)
> 
> diff --git a/drivers/platform/arm64/Kconfig b/drivers/platform/arm64/Kconfig
> index e32e01b2a9bd..59aa389d9aab 100644
> --- a/drivers/platform/arm64/Kconfig
> +++ b/drivers/platform/arm64/Kconfig
> @@ -103,4 +103,50 @@ config EC_QCOM_HAMOA
>  
>  	  This driver currently supports Hamoa/Purwa/Glymur reference devices.
>  
> +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.

I only now notice the second patch is not covered by Armin's series.

But this duplicates Kconfig entries.

I suppose the best approach would be to split drivers/platform/x86/Kconfig 
into two and source the generic one here.

> +
>  endif # ARM64_PLATFORM_DEVICES
> diff --git a/drivers/platform/arm64/Makefile b/drivers/platform/arm64/Makefile
> index 7681be4a46e9..d608b2aa8c12 100644
> --- a/drivers/platform/arm64/Makefile
> +++ b/drivers/platform/arm64/Makefile
> @@ -10,3 +10,5 @@ obj-$(CONFIG_EC_HUAWEI_GAOKUN)	+= huawei-gaokun-ec.o
>  obj-$(CONFIG_EC_LENOVO_YOGA_C630) += lenovo-yoga-c630.o
>  obj-$(CONFIG_EC_LENOVO_THINKPAD_T14S) += lenovo-thinkpad-t14s.o
>  obj-$(CONFIG_EC_QCOM_HAMOA) += qcom-hamoa-ec.o
> +obj-$(CONFIG_ASUS_WMI) += ../x86/asus-wmi.o
> +obj-$(CONFIG_ASUS_NB_WMI) += ../x86/asus-nb-wmi.o
> 

-- 
 i.


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

* Re: [PATCH 0/2] platform: Enable ACPI WMI and ASUS WMI driver for ARM64
  2026-09-17  2:10 [PATCH 0/2] platform: Enable ACPI WMI and ASUS WMI driver for ARM64 chipang_kao
                   ` (2 preceding siblings ...)
  2026-09-17  9:03 ` [PATCH 0/2] platform: Enable ACPI WMI and ASUS WMI driver for ARM64 Ilpo Järvinen
@ 2026-09-18  7:38 ` Hans de Goede
  3 siblings, 0 replies; 6+ messages in thread
From: Hans de Goede @ 2026-09-18  7:38 UTC (permalink / raw)
  To: chipang_kao, ilpo.jarvinen, bryan.odonoghue, W_Armin
  Cc: platform-driver-x86, linux-kernel, chipang_kao

Hi,

On 17-Sep-26 04:10, chipang_kao wrote:
> This series enables ACPI WMI core support and the ASUS WMI platform
> driver on ARM64 architectures.
> 
> ACPI WMI is not limited to x86 platforms. Modern ARM64 laptops and
> platforms have adopted ACPI WMI to expose vendor-specific features
> such as hotkeys and fan control.
> 
> To support these devices:
> 1. Removes the strict 'X86' dependency from CONFIG_ACPI_WMI.
> 2. Updates the ARM64 platform driver infrastructure to allow
>    building the ASUS WMI driver without duplicating source code.

This cover-letter is missing some important information, namely
why do this.

Yes ACPI / WMI is used on some ARM64 laptops, but AFAIK all of
those are currently still booting through Devicetree since
the current generation ARM64 laptops is missing various info Linux
needs in the ACPI tables. So for a fully functional system 
Devicetree is necessary.

I think making the generic WMI code availabe on ARM64 is good
and this is something which Armin has already been working on.

But I wonder what the concrete use-case is to build the ASUS WMI
driver on ARM64.

Questions:

1. Has this been tested on an actual Asus ARM64 laptop or other
   ARM64 device? 

2. On which laptop/device model ?

3. How was this tested, how was the laptop booted; and does booting
   it this way lead to loosing any other functionality

4. Were any other kernel patches used during testing?

As for patch 2/2 I think that if we want this the driver should
simply be moved to platform/wmi .

Regards,

Hans



> 
> chipang_kao (2):
>   platform/wmi: Remove X86 dependency for ACPI_WMI
>   platform/arm64: Enable ASUS WMI driver support
> 
>  drivers/platform/arm64/Kconfig  | 46 +++++++++++++++++++++++++++++++++
>  drivers/platform/arm64/Makefile |  2 ++
>  drivers/platform/wmi/Kconfig    |  2 +-
>  3 files changed, 49 insertions(+), 1 deletion(-)
> 


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

end of thread, other threads:[~2026-09-18  7:38 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-17  2:10 [PATCH 0/2] platform: Enable ACPI WMI and ASUS WMI driver for ARM64 chipang_kao
2026-09-17  2:10 ` [PATCH 1/2] platform/wmi: Remove X86 dependency for ACPI_WMI chipang_kao
2026-09-17  2:10 ` [PATCH 2/2] platform/arm64: Enable ASUS WMI driver support chipang_kao
2026-09-17  9:11   ` Ilpo Järvinen
2026-09-17  9:03 ` [PATCH 0/2] platform: Enable ACPI WMI and ASUS WMI driver for ARM64 Ilpo Järvinen
2026-09-18  7:38 ` Hans de Goede

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

all inboxes | Powered by JetHome®