mirror of
https://github.com/torvalds/linux.git
synced 2026-06-02 19:43:40 +02:00
Documentation: admin-guide: laptops: Add documentation for alienware-wmi
Add driver admin-guide documentation for the alienware-wmi driver. Reviewed-by: Armin Wolf <W_Armin@gmx.de> Signed-off-by: Kurt Borja <kuurtb@gmail.com> Link: https://lore.kernel.org/r/20250329-hwm-v7-11-a14ea39d8a94@gmail.com Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
This commit is contained in:
parent
a56d188a0a
commit
3e48767ab5
127
Documentation/admin-guide/laptops/alienware-wmi.rst
Normal file
127
Documentation/admin-guide/laptops/alienware-wmi.rst
Normal file
|
|
@ -0,0 +1,127 @@
|
|||
.. SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
====================
|
||||
Alienware WMI Driver
|
||||
====================
|
||||
|
||||
Kurt Borja <kuurtb@gmail.com>
|
||||
|
||||
This is a driver for the "WMAX" WMI device, which is found in most Dell gaming
|
||||
laptops and controls various special features.
|
||||
|
||||
Before the launch of M-Series laptops (~2018), the "WMAX" device controlled
|
||||
basic RGB lighting, deep sleep mode, HDMI mode and amplifier status.
|
||||
|
||||
Later, this device was completely repurpused. Now it mostly deals with thermal
|
||||
profiles, sensor monitoring and overclocking. This interface is named "AWCC" and
|
||||
is known to be used by the AWCC OEM application to control these features.
|
||||
|
||||
The alienware-wmi driver controls both interfaces.
|
||||
|
||||
AWCC Interface
|
||||
==============
|
||||
|
||||
WMI device documentation: Documentation/wmi/devices/alienware-wmi.rst
|
||||
|
||||
Supported devices
|
||||
-----------------
|
||||
|
||||
- Alienware M-Series laptops
|
||||
- Alienware X-Series laptops
|
||||
- Alienware Aurora Desktops
|
||||
- Dell G-Series laptops
|
||||
|
||||
If you believe your device supports the AWCC interface and you don't have any of
|
||||
the features described in this document, try the following alienware-wmi module
|
||||
parameters:
|
||||
|
||||
- ``force_platform_profile=1``: Forces probing for platform profile support
|
||||
- ``force_hwmon=1``: Forces probing for HWMON support
|
||||
|
||||
If the module loads successfully with these parameters, consider submitting a
|
||||
patch adding your model to the ``awcc_dmi_table`` located in
|
||||
``drivers/platform/x86/dell/alienware-wmi-wmax.c`` or contacting the maintainer
|
||||
for further guidance.
|
||||
|
||||
Status
|
||||
------
|
||||
|
||||
The following features are currently supported:
|
||||
|
||||
- :ref:`Platform Profile <platform-profile>`:
|
||||
|
||||
- Thermal profile control
|
||||
|
||||
- G-Mode toggling
|
||||
|
||||
- :ref:`HWMON <hwmon>`:
|
||||
|
||||
- Sensor monitoring
|
||||
|
||||
- Manual fan control
|
||||
|
||||
.. _platform-profile:
|
||||
|
||||
Platform Profile
|
||||
----------------
|
||||
|
||||
The AWCC interface exposes various firmware defined thermal profiles. These are
|
||||
exposed to user-space through the Platform Profile class interface. Refer to
|
||||
:ref:`sysfs-class-platform-profile <abi_file_testing_sysfs_class_platform_profile>`
|
||||
for more information.
|
||||
|
||||
The name of the platform-profile class device exported by this driver is
|
||||
"alienware-wmi" and it's path can be found with:
|
||||
|
||||
::
|
||||
|
||||
grep -l "alienware-wmi" /sys/class/platform-profile/platform-profile-*/name | sed 's|/[^/]*$||'
|
||||
|
||||
If the device supports G-Mode, it is also toggled when selecting the
|
||||
``performance`` profile.
|
||||
|
||||
.. note::
|
||||
You may set the ``force_gmode`` module parameter to always try to toggle this
|
||||
feature, without checking if your model supports it.
|
||||
|
||||
.. _hwmon:
|
||||
|
||||
HWMON
|
||||
-----
|
||||
|
||||
The AWCC interface also supports sensor monitoring and manual fan control. Both
|
||||
of these features are exposed to user-space through the HWMON interface.
|
||||
|
||||
The name of the hwmon class device exported by this driver is "alienware_wmi"
|
||||
and it's path can be found with:
|
||||
|
||||
::
|
||||
|
||||
grep -l "alienware_wmi" /sys/class/hwmon/hwmon*/name | sed 's|/[^/]*$||'
|
||||
|
||||
Sensor monitoring is done through the standard HWMON interface. Refer to
|
||||
:ref:`sysfs-class-hwmon <abi_file_testing_sysfs_class_hwmon>` for more
|
||||
information.
|
||||
|
||||
Manual fan control on the other hand, is not exposed directly by the AWCC
|
||||
interface. Instead it let's us control a fan `boost` value. This `boost` value
|
||||
has the following aproximate behavior over the fan pwm:
|
||||
|
||||
::
|
||||
|
||||
pwm = pwm_base + (fan_boost / 255) * (pwm_max - pwm_base)
|
||||
|
||||
Due to the above behavior, the fan `boost` control is exposed to user-space
|
||||
through the following, custom hwmon sysfs attribute:
|
||||
|
||||
=============================== ======= =======================================
|
||||
Name Perm Description
|
||||
=============================== ======= =======================================
|
||||
fan[1-4]_boost RW Fan boost value.
|
||||
|
||||
Integer value between 0 and 255
|
||||
=============================== ======= =======================================
|
||||
|
||||
.. note::
|
||||
In some devices, manual fan control only works reliably if the ``custom``
|
||||
platform profile is selected.
|
||||
|
|
@ -7,6 +7,7 @@ Laptop Drivers
|
|||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
alienware-wmi
|
||||
asus-laptop
|
||||
disk-shock-protection
|
||||
laptop-mode
|
||||
|
|
|
|||
|
|
@ -797,6 +797,7 @@ M: Kurt Borja <kuurtb@gmail.com>
|
|||
L: platform-driver-x86@vger.kernel.org
|
||||
L: Dell.Client.Kernel@dell.com
|
||||
S: Maintained
|
||||
F: Documentation/admin-guide/laptops/alienware-wmi.rst
|
||||
F: Documentation/wmi/devices/alienware-wmi.rst
|
||||
F: drivers/platform/x86/dell/alienware-wmi*
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user