← Documents Documentation/admin-guide/laptops/asus-laptop.rst GitHub 원문 ↗

Linux 6.18.37 · Administration / Laptops

Asus Laptop Extras

구형 ASUS laptop의 hotkey·LED·backlight·wireless·display switching·LED display와 wapf module option을 설명합니다.

Source pathDocumentation/admin-guide/laptops/asus-laptop.rst
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

지원 범위

asus-laptop.rst:1-47

driver 요구 사항과 지원하는 laptop 추가 기능을 소개합니다.

사용과 기본 제어

asus-laptop.rst:48-96

module load 확인, event 진단과 LED·backlight·wireless 제어를 정리합니다.

Display switching

asus-laptop.rst:97-187

0~15 output bitmask, 지원 모델과 debugging 절차를 설명합니다.

LED display와 option

asus-laptop.rst:188-252

T/DDD display encoding, wapf 값과 미지원 모델을 정리합니다.

보고 정보

asus-laptop.rst:253-271

compatibility 보고에 포함할 ACPI·sysfs 정보와 연락처를 안내합니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 ==================
2 Asus Laptop Extras
3 ==================
4
5 Version 0.1
6
7 August 6, 2009
8
9 Corentin Chary <corentincj@iksaif.net>
10 http://acpi4asus.sf.net/
11
12 This driver provides support for extra features of ACPI-compatible ASUS laptops.
13 It may also support some MEDION, JVC or VICTOR laptops (such as MEDION 9675 or
14 VICTOR XP7210 for example). It makes all the extra buttons generate input
15 events (like keyboards).
16
17 On some models adds support for changing the display brightness and output,
18 switching the LCD backlight on and off, and most importantly, allows you to
19 blink those fancy LEDs intended for reporting mail and wireless status.
20
21 This driver supersedes the old asus_acpi driver.
22
23 Requirements
24 ------------
25
26 Kernel 2.6.X sources, configured for your computer, with ACPI support.
27 You also need CONFIG_INPUT and CONFIG_ACPI.
28
29 Status
30 ------
31
32 The features currently supported are the following (see below for
33 detailed description):
34
35 - Fn key combinations
36 - Bluetooth enable and disable
37 - Wlan enable and disable
38 - GPS enable and disable
39 - Video output switching
40 - Ambient Light Sensor on and off
41 - LED control
42 - LED Display control
43 - LCD brightness control
44 - LCD on and off
45
46 A compatibility table by model and feature is maintained on the web
47 site, http://acpi4asus.sf.net/.
48
49 Usage
50 -----
51
52 Try "modprobe asus-laptop". Check your dmesg (simply type dmesg). You should
53 see some lines like this :
54
55 Asus Laptop Extras version 0.42
56 - L2D model detected.
57
58 If it is not the output you have on your laptop, send it (and the laptop's
59 DSDT) to me.
60
61 That's all, now, all the events generated by the hotkeys of your laptop
62 should be reported via netlink events. You can check with
63 "acpi_genl monitor" (part of the acpica project).
64
65 Hotkeys are also reported as input keys (like keyboards) you can check
66 which key are supported using "xev" under X11.
67
68 You can get information on the version of your DSDT table by reading the
69 /sys/devices/platform/asus-laptop/infos entry. If you have a question or a
70 bug report to do, please include the output of this entry.
71
72 LEDs
73 ----
74
75 You can modify LEDs be echoing values to `/sys/class/leds/asus/*/brightness`::
76
77 echo 1 > /sys/class/leds/asus::mail/brightness
78
79 will switch the mail LED on.
80
81 You can also know if they are on/off by reading their content and use
82 kernel triggers like disk-activity or heartbeat.
83
84 Backlight
85 ---------
86
87 You can control lcd backlight power and brightness with
88 /sys/class/backlight/asus-laptop/. Brightness Values are between 0 and 15.
89
90 Wireless devices
91 ----------------
92
93 You can turn the internal Bluetooth adapter on/off with the bluetooth entry
94 (only on models with Bluetooth). This usually controls the associated LED.
95 Same for Wlan adapter.
96
97 Display switching
98 -----------------
99
100 Note: the display switching code is currently considered EXPERIMENTAL.
101
102 Switching works for the following models:
103
104 - L3800C
105 - A2500H
106 - L5800C
107 - M5200N
108 - W1000N (albeit with some glitches)
109 - M6700R
110 - A6JC
111 - F3J
112
113 Switching doesn't work for the following:
114
115 - M3700N
116 - L2X00D (locks the laptop under certain conditions)
117
118 To switch the displays, echo values from 0 to 15 to
119 /sys/devices/platform/asus-laptop/display. The significance of those values
120 is as follows:
121
122 +-------+-----+-----+-----+-----+-----+
123 | Bin | Val | DVI | TV | CRT | LCD |
124 +-------+-----+-----+-----+-----+-----+
125 | 0000 | 0 | | | | |
126 +-------+-----+-----+-----+-----+-----+
127 | 0001 | 1 | | | | X |
128 +-------+-----+-----+-----+-----+-----+
129 | 0010 | 2 | | | X | |
130 +-------+-----+-----+-----+-----+-----+
131 | 0011 | 3 | | | X | X |
132 +-------+-----+-----+-----+-----+-----+
133 | 0100 | 4 | | X | | |
134 +-------+-----+-----+-----+-----+-----+
135 | 0101 | 5 | | X | | X |
136 +-------+-----+-----+-----+-----+-----+
137 | 0110 | 6 | | X | X | |
138 +-------+-----+-----+-----+-----+-----+
139 | 0111 | 7 | | X | X | X |
140 +-------+-----+-----+-----+-----+-----+
141 | 1000 | 8 | X | | | |
142 +-------+-----+-----+-----+-----+-----+
143 | 1001 | 9 | X | | | X |
144 +-------+-----+-----+-----+-----+-----+
145 | 1010 | 10 | X | | X | |
146 +-------+-----+-----+-----+-----+-----+
147 | 1011 | 11 | X | | X | X |
148 +-------+-----+-----+-----+-----+-----+
149 | 1100 | 12 | X | X | | |
150 +-------+-----+-----+-----+-----+-----+
151 | 1101 | 13 | X | X | | X |
152 +-------+-----+-----+-----+-----+-----+
153 | 1110 | 14 | X | X | X | |
154 +-------+-----+-----+-----+-----+-----+
155 | 1111 | 15 | X | X | X | X |
156 +-------+-----+-----+-----+-----+-----+
157
158 In most cases, the appropriate displays must be plugged in for the above
159 combinations to work. TV-Out may need to be initialized at boot time.
160
161 Debugging:
162
163 1) Check whether the Fn+F8 key:
164
165 a) does not lock the laptop (try a boot with noapic / nolapic if it does)
166 b) generates events (0x6n, where n is the value corresponding to the
167 configuration above)
168 c) actually works
169
170 Record the disp value at every configuration.
171 2) Echo values from 0 to 15 to /sys/devices/platform/asus-laptop/display.
172 Record its value, note any change. If nothing changes, try a broader range,
173 up to 65535.
174 3) Send ANY output (both positive and negative reports are needed, unless your
175 machine is already listed above) to the acpi4asus-user mailing list.
176
177 Note: on some machines (e.g. L3C), after the module has been loaded, only 0x6n
178 events are generated and no actual switching occurs. In such a case, a line
179 like::
180
181 echo $((10#$arg-60)) > /sys/devices/platform/asus-laptop/display
182
183 will usually do the trick ($arg is the 0000006n-like event passed to acpid).
184
185 Note: there is currently no reliable way to read display status on xxN
186 (Centrino) models.
187
188 LED display
189 -----------
190
191 Some models like the W1N have a LED display that can be used to display
192 several items of information.
193
194 LED display works for the following models:
195
196 - W1000N
197 - W1J
198
199 To control the LED display, use the following::
200
201 echo 0x0T000DDD > /sys/devices/platform/asus-laptop/
202
203 where T control the 3 letters display, and DDD the 3 digits display,
204 according to the tables below::
205
206 DDD (digits)
207 000 to 999 = display digits
208 AAA = ---
209 BBB to FFF = turn-off
210
211 T (type)
212 0 = off
213 1 = dvd
214 2 = vcd
215 3 = mp3
216 4 = cd
217 5 = tv
218 6 = cpu
219 7 = vol
220
221 For example "echo 0x01000001 >/sys/devices/platform/asus-laptop/ledd"
222 would display "DVD001".
223
224 Driver options
225 --------------
226
227 Options can be passed to the asus-laptop driver using the standard
228 module argument syntax (<param>=<value> when passing the option to the
229 module or asus-laptop.<param>=<value> on the kernel boot line when
230 asus-laptop is statically linked into the kernel).
231
232 wapf: WAPF defines the behavior of the Fn+Fx wlan key
233 The significance of values is yet to be found, but
234 most of the time:
235
236 - 0x0 should do nothing
237 - 0x1 should allow to control the device with Fn+Fx key.
238 - 0x4 should send an ACPI event (0x88) while pressing the Fn+Fx key
239 - 0x5 like 0x1 or 0x4
240
241 The default value is 0x1.
242
243 Unsupported models
244 ------------------
245
246 These models will never be supported by this module, as they use a completely
247 different mechanism to handle LEDs and extra stuff (meaning we have no clue
248 how it works):
249
250 - ASUS A1300 (A1B), A1370D
251 - ASUS L7300G
252 - ASUS L8400
253
254 Patches, Errors, Questions
255 --------------------------
256
257 I appreciate any success or failure
258 reports, especially if they add to or correct the compatibility table.
259 Please include the following information in your report:
260
261 - Asus model name
262 - a copy of your ACPI tables, using the "acpidump" utility
263 - a copy of /sys/devices/platform/asus-laptop/infos
264 - which driver features work and which don't
265 - the observed behavior of non-working features
266
267 Any other comments or patches are also more than welcome.
268
269 acpi4asus-user@lists.sourceforge.net
270
271 http://sourceforge.net/projects/acpi4asus
272

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

Asus Laptop Extras 개요와 지원 기능

1-47

버전 0.1, 2009년 8월 6일

Corentin Chary <corentincj@iksaif.net>, http://acpi4asus.sf.net/

이 driver는 ACPI 호환 ASUS laptop의 추가 기능을 지원합니다. MEDION 9675나 VICTOR XP7210 같은 일부 MEDION, JVC 또는 VICTOR laptop도 지원할 수 있습니다. 모든 추가 button이 keyboard와 같은 input event를 생성하게 합니다.

일부 모델에서는 display brightness와 output 변경, LCD backlight 켜기·끄기를 지원하며, 특히 mail과 wireless 상태를 알리기 위한 LED를 깜박일 수 있습니다.

이 driver는 오래된 `asus_acpi` driver를 대체합니다.

요구 사항

컴퓨터에 맞게 구성하고 ACPI 지원을 활성화한 Kernel 2.6.X source가 필요합니다. `CONFIG_INPUT`과 `CONFIG_ACPI`도 필요합니다.

현재 지원 기능

Fn key 조합, Bluetooth enable/disable, Wlan enable/disable, GPS enable/disable, video output switching, Ambient Light Sensor on/off, LED 제어, LED Display 제어, LCD brightness 제어와 LCD on/off를 지원합니다.

모델·기능별 compatibility table은 http://acpi4asus.sf.net/ 에서 관리합니다.

module 사용과 event 확인

48-70

`modprobe asus-laptop`을 실행한 뒤 `dmesg`를 확인하십시오. 다음과 같은 줄이 나타나야 합니다.

Asus Laptop Extras version 0.42
  - L2D model detected.

laptop에서 이 출력이 나오지 않는다면 출력과 laptop의 DSDT를 작성자에게 보내십시오.

이제 laptop hotkey가 생성하는 모든 event가 netlink event로 보고되어야 합니다. acpica project에 포함된 `acpi_genl monitor`로 확인할 수 있습니다.

hotkey는 keyboard와 같은 input key로도 보고됩니다. X11에서는 `xev`로 어떤 key가 지원되는지 확인할 수 있습니다.

`/sys/devices/platform/asus-laptop/infos`를 읽으면 DSDT table 버전 정보를 얻을 수 있습니다. 질문이나 bug report에는 이 entry의 출력을 포함하십시오.

LED, backlight와 wireless device

71-96

LED

`/sys/class/leds/asus/*/brightness`에 값을 써서 LED를 변경할 수 있습니다. 다음 명령은 mail LED를 켭니다.

echo 1 >  /sys/class/leds/asus::mail/brightness

파일 내용을 읽어 LED의 on/off 상태를 확인할 수도 있고, `disk-activity`나 `heartbeat` 같은 kernel trigger를 사용할 수도 있습니다.

Backlight

`/sys/class/backlight/asus-laptop/`에서 LCD backlight 전원과 brightness를 제어할 수 있습니다. brightness 값 범위는 0부터 15입니다.

Wireless device

`bluetooth` entry로 내부 Bluetooth adapter를 켜거나 끌 수 있습니다. Bluetooth가 있는 모델에서만 가능하며 보통 관련 LED도 함께 제어합니다. Wlan adapter도 동일합니다.

Display switching 값과 지원 모델

97-160

참고: display switching code는 현재 `EXPERIMENTAL`로 간주됩니다.

switching이 동작하는 모델은 L3800C, A2500H, L5800C, M5200N, W1000N(일부 glitch 있음), M6700R, A6JC와 F3J입니다.

switching이 동작하지 않는 모델은 M3700N과 L2X00D입니다. L2X00D는 특정 조건에서 laptop을 lock시킵니다.

display를 전환하려면 `/sys/devices/platform/asus-laptop/display`에 0부터 15 사이의 값을 쓰십시오. 각 bit는 DVI, TV, CRT와 LCD output을 뜻합니다.

ASUS display output bitmask
BinValDVITVCRTLCD
00000
00011X
00102X
00113XX
01004X
01015XX
01106XX
01117XXX
10008X
10019XX
101010XX
101111XXX
110012XX
110113XXX
111014XXX
111115XXXX

원문의 0~15 display switching ASCII 표를 모든 output 조합이 보이도록 구조화했습니다. X는 해당 output이 활성화됨을 뜻합니다.

대부분의 경우 위 조합이 동작하려면 해당 display가 연결되어 있어야 합니다. TV-Out은 부팅할 때 initialize해야 할 수 있습니다.

Display switching debugging

161-187

1. Fn+F8 key가 다음 조건을 만족하는지 확인합니다. a. laptop을 lock하지 않아야 합니다. lock된다면 `noapic` 또는 `nolapic`으로 부팅해 보십시오. b. event를 생성해야 합니다. event는 `0x6n`이며 n은 위 configuration에 대응하는 값입니다. c. 실제로 동작해야 합니다. 각 configuration에서 `disp` 값을 기록하십시오.

2. `/sys/devices/platform/asus-laptop/display`에 0부터 15까지 값을 쓰고 값을 기록하며 변화를 확인합니다. 아무 변화가 없다면 범위를 65535까지 넓혀 보십시오.

3. 모든 출력을 acpi4asus-user mailing list로 보내십시오. machine이 이미 위에 나열되어 있지 않다면 성공·실패 보고가 모두 필요합니다.

참고: L3C 같은 일부 machine에서는 module을 load한 뒤 `0x6n` event만 생성되고 실제 switching은 일어나지 않습니다. 이때는 다음 명령이 보통 문제를 해결합니다.

echo $((10#$arg-60)) > /sys/devices/platform/asus-laptop/display

`$arg`는 acpid에 전달되는 `0000006n` 형태의 event입니다.

참고: 현재 xxN(Centrino) 모델에서는 display 상태를 안정적으로 읽는 방법이 없습니다.

LED display 형식

188-223

W1N 같은 일부 모델에는 여러 정보를 표시할 수 있는 LED display가 있습니다. 지원 모델은 W1000N과 W1J입니다.

LED display를 제어하려면 다음 형식을 사용합니다.

echo 0x0T000DDD > /sys/devices/platform/asus-laptop/

`T`는 3글자 display를, `DDD`는 3자리 숫자 display를 제어합니다.

ASUS LED display T/DDD encoding
FieldValue표시 동작
DDD000~999숫자를 표시합니다.
DDDAAA`---`를 표시합니다.
DDDBBB~FFFdisplay를 끕니다.
T0off
T1dvd
T2vcd
T3mp3
T4cd
T5tv
T6cpu
T7vol

원문의 고정폭 encoding 설명을 digit field와 type field로 나누어 구조화했습니다.

예를 들어 `echo 0x01000001 >/sys/devices/platform/asus-laptop/ledd`는 `DVD001`을 표시합니다.

Driver option과 미지원 모델

224-252

표준 module argument 문법으로 `asus-laptop` driver에 option을 전달할 수 있습니다. module에 전달할 때는 `<param>=<value>`, driver가 커널에 static link되어 있을 때 kernel boot line에서는 `asus-laptop.<param>=<value>`를 사용합니다.

`wapf`는 Fn+Fx wlan key의 동작을 정의합니다. 값의 정확한 의미는 아직 밝혀지지 않았지만, 보통 `0x0`은 아무 동작도 하지 않고, `0x1`은 Fn+Fx key로 device를 제어하게 하며, `0x4`는 Fn+Fx key를 누를 때 ACPI event `0x88`을 전송합니다. `0x5`는 `0x1` 또는 `0x4`와 비슷합니다.

기본값은 `0x1`입니다.

미지원 모델

다음 모델은 LED와 추가 기능을 처리하는 mechanism이 완전히 다르고 그 동작 방식이 알려지지 않았으므로 이 module에서 지원하지 않습니다: ASUS A1300(A1B), A1370D, ASUS L7300G, ASUS L8400.

Patch, 오류와 질문 보고

253-271

compatibility table을 추가하거나 수정하는 성공·실패 보고를 환영합니다. 보고에는 Asus model 이름, `acpidump` utility로 얻은 ACPI table 사본, `/sys/devices/platform/asus-laptop/infos` 사본, 동작하는 driver 기능과 동작하지 않는 기능, 동작하지 않는 기능에서 관찰한 동작을 포함하십시오.

그 밖의 의견이나 patch도 환영합니다.

acpi4asus-user@lists.sourceforge.net

http://sourceforge.net/projects/acpi4asus