요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
지원 기능과 probe
alienware-wmi.rst:25-61지원 제품군, force module parameter와 upstream 모델 등록 절차를 정리합니다.
Platform Profile
alienware-wmi.rst:62-86thermal profile class device와 G-Mode의 연동 방식을 안내합니다.
HWMON
alienware-wmi.rst:87-127sensor monitoring과 0~255 fan boost sysfs interface를 설명합니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
.. SPDX-License-Identifier: GPL-2.0-or-later
====================
Alienware WMI Driver
====================
Kurt Borja <[email protected]>
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.
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
Alienware WMI driver 개요
1-24SPDX-License-Identifier: `GPL-2.0-or-later`
작성자: Kurt Borja <[email protected]>
이 driver는 대부분의 Dell gaming laptop에 있는 `WMAX` WMI device를 지원하며 여러 특수 기능을 제어합니다.
M-Series laptop 출시 전인 약 2018년까지 `WMAX` device는 기본 RGB lighting, deep sleep mode, HDMI mode와 amplifier 상태를 제어했습니다.
이후 이 device의 용도는 완전히 바뀌었습니다. 지금은 주로 thermal profile, sensor monitoring과 overclocking을 담당합니다. 이 interface는 `AWCC`라 하며, AWCC OEM application이 이런 기능을 제어하는 데 사용하는 것으로 알려져 있습니다.
`alienware-wmi` driver는 두 interface를 모두 제어합니다.
AWCC interface
WMI device 문서: `Documentation/wmi/devices/alienware-wmi.rst`
지원 장치, 강제 probe와 기능 상태
25-61지원 장치
지원 대상은 Alienware M-Series laptop, Alienware X-Series laptop, Alienware Aurora Desktop과 Dell G-Series laptop입니다.
장치가 AWCC interface를 지원한다고 생각하지만 이 문서에 설명된 기능이 없다면 다음 `alienware-wmi` module parameter를 사용해 보십시오.
| module parameter | 동작 |
|---|---|
| force_platform_profile=1 | platform profile 지원 probe를 강제합니다. |
| force_hwmon=1 | HWMON 지원 probe를 강제합니다. |
이 parameter로 module이 성공적으로 load되면 `drivers/platform/x86/dell/alienware-wmi-wmax.c`의 `awcc_dmi_table`에 모델을 추가하는 patch를 제출하거나, 추가 안내를 위해 maintainer에게 연락하는 것을 고려하십시오.
현재 지원 기능
| interface | 기능 |
|---|---|
| Platform Profile | thermal profile 제어, G-Mode toggle |
| HWMON | sensor monitoring, manual fan 제어 |
Platform Profile
62-86AWCC interface는 firmware가 정의한 여러 thermal profile을 노출합니다. 이 profile은 Platform Profile class interface를 통해 user space에 제공됩니다. 자세한 내용은 `sysfs-class-platform-profile <abi_file_testing_sysfs_class_platform_profile>`을 참조하십시오.
이 driver가 export하는 platform-profile class device 이름은 `alienware-wmi`입니다. 다음 명령으로 경로를 찾을 수 있습니다.
grep -l "alienware-wmi" /sys/class/platform-profile/platform-profile-*/name | sed 's|/[^/]*$||'
장치가 G-Mode를 지원한다면 `performance` profile을 선택할 때 G-Mode도 toggle됩니다.
참고: 모델 지원 여부를 확인하지 않고 이 기능의 toggle을 항상 시도하려면 `force_gmode` module parameter를 설정할 수 있습니다.
HWMON sensor와 fan boost
87-127AWCC interface는 sensor monitoring과 manual fan 제어도 지원합니다. 두 기능 모두 HWMON interface를 통해 user space에 노출됩니다.
이 driver가 export하는 hwmon class device 이름은 `alienware_wmi`입니다. 다음 명령으로 경로를 찾을 수 있습니다.
grep -l "alienware_wmi" /sys/class/hwmon/hwmon*/name | sed 's|/[^/]*$||'
sensor monitoring은 표준 HWMON interface를 사용합니다. 자세한 내용은 `sysfs-class-hwmon <abi_file_testing_sysfs_class_hwmon>`을 참조하십시오.
반면 manual fan 제어는 AWCC interface가 직접 노출하지 않습니다. 대신 fan `boost` 값을 제어할 수 있습니다. 이 `boost` 값은 fan PWM에 대해 대략 다음과 같이 동작합니다.
pwm = pwm_base + (fan_boost / 255) * (pwm_max - pwm_base)
이 동작에 따라 fan `boost` 제어는 다음 custom hwmon sysfs attribute를 통해 user space에 노출됩니다.
| Name | Perm | Description |
|---|---|---|
| fan[1-4]_boost | RW | 0부터 255 사이의 정수 fan boost 값입니다. |
참고: 일부 장치에서는 `custom` platform profile을 선택해야 manual fan 제어가 안정적으로 동작합니다.
WMAX와 AWCC
alienware-wmi.rst:1-24세대에 따라 달라진 WMAX WMI device의 역할과 driver 범위를 설명합니다.