19e1cbedeSMauro Carvalho Chehab==================
29e1cbedeSMauro Carvalho ChehabAsus Laptop Extras
39e1cbedeSMauro Carvalho Chehab==================
49e1cbedeSMauro Carvalho Chehab
59e1cbedeSMauro Carvalho ChehabVersion 0.1
69e1cbedeSMauro Carvalho Chehab
79e1cbedeSMauro Carvalho ChehabAugust 6, 2009
89e1cbedeSMauro Carvalho Chehab
99e1cbedeSMauro Carvalho ChehabCorentin Chary <corentincj@iksaif.net>
109e1cbedeSMauro Carvalho Chehabhttp://acpi4asus.sf.net/
119e1cbedeSMauro Carvalho Chehab
129e1cbedeSMauro Carvalho Chehab This driver provides support for extra features of ACPI-compatible ASUS laptops.
139e1cbedeSMauro Carvalho Chehab It may also support some MEDION, JVC or VICTOR laptops (such as MEDION 9675 or
149e1cbedeSMauro Carvalho Chehab VICTOR XP7210 for example). It makes all the extra buttons generate input
159e1cbedeSMauro Carvalho Chehab events (like keyboards).
169e1cbedeSMauro Carvalho Chehab
179e1cbedeSMauro Carvalho Chehab On some models adds support for changing the display brightness and output,
189e1cbedeSMauro Carvalho Chehab switching the LCD backlight on and off, and most importantly, allows you to
199e1cbedeSMauro Carvalho Chehab blink those fancy LEDs intended for reporting mail and wireless status.
209e1cbedeSMauro Carvalho Chehab
219e1cbedeSMauro Carvalho ChehabThis driver supersedes the old asus_acpi driver.
229e1cbedeSMauro Carvalho Chehab
239e1cbedeSMauro Carvalho ChehabRequirements
249e1cbedeSMauro Carvalho Chehab------------
259e1cbedeSMauro Carvalho Chehab
269e1cbedeSMauro Carvalho Chehab  Kernel 2.6.X sources, configured for your computer, with ACPI support.
279e1cbedeSMauro Carvalho Chehab  You also need CONFIG_INPUT and CONFIG_ACPI.
289e1cbedeSMauro Carvalho Chehab
299e1cbedeSMauro Carvalho ChehabStatus
309e1cbedeSMauro Carvalho Chehab------
319e1cbedeSMauro Carvalho Chehab
329e1cbedeSMauro Carvalho Chehab The features currently supported are the following (see below for
339e1cbedeSMauro Carvalho Chehab detailed description):
349e1cbedeSMauro Carvalho Chehab
359e1cbedeSMauro Carvalho Chehab - Fn key combinations
369e1cbedeSMauro Carvalho Chehab - Bluetooth enable and disable
379e1cbedeSMauro Carvalho Chehab - Wlan enable and disable
389e1cbedeSMauro Carvalho Chehab - GPS enable and disable
399e1cbedeSMauro Carvalho Chehab - Video output switching
409e1cbedeSMauro Carvalho Chehab - Ambient Light Sensor on and off
419e1cbedeSMauro Carvalho Chehab - LED control
429e1cbedeSMauro Carvalho Chehab - LED Display control
439e1cbedeSMauro Carvalho Chehab - LCD brightness control
449e1cbedeSMauro Carvalho Chehab - LCD on and off
459e1cbedeSMauro Carvalho Chehab
469e1cbedeSMauro Carvalho Chehab A compatibility table by model and feature is maintained on the web
479e1cbedeSMauro Carvalho Chehab site, http://acpi4asus.sf.net/.
489e1cbedeSMauro Carvalho Chehab
499e1cbedeSMauro Carvalho ChehabUsage
509e1cbedeSMauro Carvalho Chehab-----
519e1cbedeSMauro Carvalho Chehab
529e1cbedeSMauro Carvalho Chehab  Try "modprobe asus-laptop". Check your dmesg (simply type dmesg). You should
539e1cbedeSMauro Carvalho Chehab  see some lines like this :
549e1cbedeSMauro Carvalho Chehab
559e1cbedeSMauro Carvalho Chehab      Asus Laptop Extras version 0.42
569e1cbedeSMauro Carvalho Chehab        - L2D model detected.
579e1cbedeSMauro Carvalho Chehab
589e1cbedeSMauro Carvalho Chehab  If it is not the output you have on your laptop, send it (and the laptop's
599e1cbedeSMauro Carvalho Chehab  DSDT) to me.
609e1cbedeSMauro Carvalho Chehab
619e1cbedeSMauro Carvalho Chehab  That's all, now, all the events generated by the hotkeys of your laptop
629e1cbedeSMauro Carvalho Chehab  should be reported via netlink events. You can check with
639e1cbedeSMauro Carvalho Chehab  "acpi_genl monitor" (part of the acpica project).
649e1cbedeSMauro Carvalho Chehab
659e1cbedeSMauro Carvalho Chehab  Hotkeys are also reported as input keys (like keyboards) you can check
669e1cbedeSMauro Carvalho Chehab  which key are supported using "xev" under X11.
679e1cbedeSMauro Carvalho Chehab
689e1cbedeSMauro Carvalho Chehab  You can get information on the version of your DSDT table by reading the
699e1cbedeSMauro Carvalho Chehab  /sys/devices/platform/asus-laptop/infos entry. If you have a question or a
709e1cbedeSMauro Carvalho Chehab  bug report to do, please include the output of this entry.
719e1cbedeSMauro Carvalho Chehab
729e1cbedeSMauro Carvalho ChehabLEDs
739e1cbedeSMauro Carvalho Chehab----
749e1cbedeSMauro Carvalho Chehab
759e1cbedeSMauro Carvalho Chehab  You can modify LEDs be echoing values to `/sys/class/leds/asus/*/brightness`::
769e1cbedeSMauro Carvalho Chehab
779e1cbedeSMauro Carvalho Chehab    echo 1 >  /sys/class/leds/asus::mail/brightness
789e1cbedeSMauro Carvalho Chehab
799e1cbedeSMauro Carvalho Chehab  will switch the mail LED on.
809e1cbedeSMauro Carvalho Chehab
819e1cbedeSMauro Carvalho Chehab  You can also know if they are on/off by reading their content and use
829e1cbedeSMauro Carvalho Chehab  kernel triggers like disk-activity or heartbeat.
839e1cbedeSMauro Carvalho Chehab
849e1cbedeSMauro Carvalho ChehabBacklight
859e1cbedeSMauro Carvalho Chehab---------
869e1cbedeSMauro Carvalho Chehab
879e1cbedeSMauro Carvalho Chehab  You can control lcd backlight power and brightness with
889e1cbedeSMauro Carvalho Chehab  /sys/class/backlight/asus-laptop/. Brightness Values are between 0 and 15.
899e1cbedeSMauro Carvalho Chehab
909e1cbedeSMauro Carvalho ChehabWireless devices
919e1cbedeSMauro Carvalho Chehab----------------
929e1cbedeSMauro Carvalho Chehab
939e1cbedeSMauro Carvalho Chehab  You can turn the internal Bluetooth adapter on/off with the bluetooth entry
949e1cbedeSMauro Carvalho Chehab  (only on models with Bluetooth). This usually controls the associated LED.
959e1cbedeSMauro Carvalho Chehab  Same for Wlan adapter.
969e1cbedeSMauro Carvalho Chehab
979e1cbedeSMauro Carvalho ChehabDisplay switching
989e1cbedeSMauro Carvalho Chehab-----------------
999e1cbedeSMauro Carvalho Chehab
1009e1cbedeSMauro Carvalho Chehab  Note: the display switching code is currently considered EXPERIMENTAL.
1019e1cbedeSMauro Carvalho Chehab
1029e1cbedeSMauro Carvalho Chehab  Switching works for the following models:
1039e1cbedeSMauro Carvalho Chehab
1049e1cbedeSMauro Carvalho Chehab    - L3800C
1059e1cbedeSMauro Carvalho Chehab    - A2500H
1069e1cbedeSMauro Carvalho Chehab    - L5800C
1079e1cbedeSMauro Carvalho Chehab    - M5200N
1089e1cbedeSMauro Carvalho Chehab    - W1000N (albeit with some glitches)
1099e1cbedeSMauro Carvalho Chehab    - M6700R
1109e1cbedeSMauro Carvalho Chehab    - A6JC
1119e1cbedeSMauro Carvalho Chehab    - F3J
1129e1cbedeSMauro Carvalho Chehab
1139e1cbedeSMauro Carvalho Chehab  Switching doesn't work for the following:
1149e1cbedeSMauro Carvalho Chehab
1159e1cbedeSMauro Carvalho Chehab    - M3700N
1169e1cbedeSMauro Carvalho Chehab    - L2X00D (locks the laptop under certain conditions)
1179e1cbedeSMauro Carvalho Chehab
1189e1cbedeSMauro Carvalho Chehab  To switch the displays, echo values from 0 to 15 to
1199e1cbedeSMauro Carvalho Chehab  /sys/devices/platform/asus-laptop/display. The significance of those values
1209e1cbedeSMauro Carvalho Chehab  is as follows:
1219e1cbedeSMauro Carvalho Chehab
1229e1cbedeSMauro Carvalho Chehab  +-------+-----+-----+-----+-----+-----+
1239e1cbedeSMauro Carvalho Chehab  | Bin   | Val | DVI | TV  | CRT | LCD |
1249e1cbedeSMauro Carvalho Chehab  +-------+-----+-----+-----+-----+-----+
1259e1cbedeSMauro Carvalho Chehab  | 0000  |   0 |     |     |     |     |
1269e1cbedeSMauro Carvalho Chehab  +-------+-----+-----+-----+-----+-----+
1279e1cbedeSMauro Carvalho Chehab  | 0001  |   1 |     |     |     |  X  |
1289e1cbedeSMauro Carvalho Chehab  +-------+-----+-----+-----+-----+-----+
1299e1cbedeSMauro Carvalho Chehab  | 0010  |   2 |     |     |  X  |     |
1309e1cbedeSMauro Carvalho Chehab  +-------+-----+-----+-----+-----+-----+
1319e1cbedeSMauro Carvalho Chehab  | 0011  |   3 |     |     |  X  |  X  |
1329e1cbedeSMauro Carvalho Chehab  +-------+-----+-----+-----+-----+-----+
1339e1cbedeSMauro Carvalho Chehab  | 0100  |   4 |     |  X  |     |     |
1349e1cbedeSMauro Carvalho Chehab  +-------+-----+-----+-----+-----+-----+
1359e1cbedeSMauro Carvalho Chehab  | 0101  |   5 |     |  X  |     | X   |
1369e1cbedeSMauro Carvalho Chehab  +-------+-----+-----+-----+-----+-----+
1379e1cbedeSMauro Carvalho Chehab  | 0110  |   6 |     |  X  |  X  |     |
1389e1cbedeSMauro Carvalho Chehab  +-------+-----+-----+-----+-----+-----+
1399e1cbedeSMauro Carvalho Chehab  | 0111  |   7 |     |  X  |  X  |  X  |
1409e1cbedeSMauro Carvalho Chehab  +-------+-----+-----+-----+-----+-----+
1419e1cbedeSMauro Carvalho Chehab  | 1000  |   8 |  X  |     |     |     |
1429e1cbedeSMauro Carvalho Chehab  +-------+-----+-----+-----+-----+-----+
1439e1cbedeSMauro Carvalho Chehab  | 1001  |   9 |  X  |     |     |  X  |
1449e1cbedeSMauro Carvalho Chehab  +-------+-----+-----+-----+-----+-----+
1459e1cbedeSMauro Carvalho Chehab  | 1010  |  10 |  X  |     |  X  |     |
1469e1cbedeSMauro Carvalho Chehab  +-------+-----+-----+-----+-----+-----+
1479e1cbedeSMauro Carvalho Chehab  | 1011  |  11 |  X  |     |  X  |  X  |
1489e1cbedeSMauro Carvalho Chehab  +-------+-----+-----+-----+-----+-----+
1499e1cbedeSMauro Carvalho Chehab  | 1100  |  12 |  X  |  X  |     |     |
1509e1cbedeSMauro Carvalho Chehab  +-------+-----+-----+-----+-----+-----+
1519e1cbedeSMauro Carvalho Chehab  | 1101  |  13 |  X  |  X  |     |  X  |
1529e1cbedeSMauro Carvalho Chehab  +-------+-----+-----+-----+-----+-----+
1539e1cbedeSMauro Carvalho Chehab  | 1110  |  14 |  X  |  X  |  X  |     |
1549e1cbedeSMauro Carvalho Chehab  +-------+-----+-----+-----+-----+-----+
1559e1cbedeSMauro Carvalho Chehab  | 1111  |  15 |  X  |  X  |  X  |  X  |
1569e1cbedeSMauro Carvalho Chehab  +-------+-----+-----+-----+-----+-----+
1579e1cbedeSMauro Carvalho Chehab
1589e1cbedeSMauro Carvalho Chehab  In most cases, the appropriate displays must be plugged in for the above
1599e1cbedeSMauro Carvalho Chehab  combinations to work. TV-Out may need to be initialized at boot time.
1609e1cbedeSMauro Carvalho Chehab
1619e1cbedeSMauro Carvalho Chehab  Debugging:
1629e1cbedeSMauro Carvalho Chehab
1639e1cbedeSMauro Carvalho Chehab  1) Check whether the Fn+F8 key:
1649e1cbedeSMauro Carvalho Chehab
1659e1cbedeSMauro Carvalho Chehab     a) does not lock the laptop (try a boot with noapic / nolapic if it does)
1669e1cbedeSMauro Carvalho Chehab     b) generates events (0x6n, where n is the value corresponding to the
1679e1cbedeSMauro Carvalho Chehab        configuration above)
1689e1cbedeSMauro Carvalho Chehab     c) actually works
1699e1cbedeSMauro Carvalho Chehab
1709e1cbedeSMauro Carvalho Chehab     Record the disp value at every configuration.
1719e1cbedeSMauro Carvalho Chehab  2) Echo values from 0 to 15 to /sys/devices/platform/asus-laptop/display.
1729e1cbedeSMauro Carvalho Chehab     Record its value, note any change. If nothing changes, try a broader range,
1739e1cbedeSMauro Carvalho Chehab     up to 65535.
1749e1cbedeSMauro Carvalho Chehab  3) Send ANY output (both positive and negative reports are needed, unless your
1759e1cbedeSMauro Carvalho Chehab     machine is already listed above) to the acpi4asus-user mailing list.
1769e1cbedeSMauro Carvalho Chehab
1779e1cbedeSMauro Carvalho Chehab  Note: on some machines (e.g. L3C), after the module has been loaded, only 0x6n
1789e1cbedeSMauro Carvalho Chehab  events are generated and no actual switching occurs. In such a case, a line
1799e1cbedeSMauro Carvalho Chehab  like::
1809e1cbedeSMauro Carvalho Chehab
1819e1cbedeSMauro Carvalho Chehab    echo $((10#$arg-60)) > /sys/devices/platform/asus-laptop/display
1829e1cbedeSMauro Carvalho Chehab
1839e1cbedeSMauro Carvalho Chehab  will usually do the trick ($arg is the 0000006n-like event passed to acpid).
1849e1cbedeSMauro Carvalho Chehab
1859e1cbedeSMauro Carvalho Chehab  Note: there is currently no reliable way to read display status on xxN
1869e1cbedeSMauro Carvalho Chehab  (Centrino) models.
1879e1cbedeSMauro Carvalho Chehab
1889e1cbedeSMauro Carvalho ChehabLED display
1899e1cbedeSMauro Carvalho Chehab-----------
1909e1cbedeSMauro Carvalho Chehab
1919e1cbedeSMauro Carvalho Chehab  Some models like the W1N have a LED display that can be used to display
1929e1cbedeSMauro Carvalho Chehab  several items of information.
1939e1cbedeSMauro Carvalho Chehab
1949e1cbedeSMauro Carvalho Chehab  LED display works for the following models:
1959e1cbedeSMauro Carvalho Chehab
1969e1cbedeSMauro Carvalho Chehab    - W1000N
1979e1cbedeSMauro Carvalho Chehab    - W1J
1989e1cbedeSMauro Carvalho Chehab
1999e1cbedeSMauro Carvalho Chehab  To control the LED display, use the following::
2009e1cbedeSMauro Carvalho Chehab
2019e1cbedeSMauro Carvalho Chehab    echo 0x0T000DDD > /sys/devices/platform/asus-laptop/
2029e1cbedeSMauro Carvalho Chehab
2039e1cbedeSMauro Carvalho Chehab  where T control the 3 letters display, and DDD the 3 digits display,
2049e1cbedeSMauro Carvalho Chehab  according to the tables below::
2059e1cbedeSMauro Carvalho Chehab
2069e1cbedeSMauro Carvalho Chehab         DDD (digits)
2079e1cbedeSMauro Carvalho Chehab         000 to 999 = display digits
2089e1cbedeSMauro Carvalho Chehab         AAA        = ---
2099e1cbedeSMauro Carvalho Chehab         BBB to FFF = turn-off
2109e1cbedeSMauro Carvalho Chehab
2119e1cbedeSMauro Carvalho Chehab         T  (type)
2129e1cbedeSMauro Carvalho Chehab         0 = off
2139e1cbedeSMauro Carvalho Chehab         1 = dvd
2149e1cbedeSMauro Carvalho Chehab         2 = vcd
2159e1cbedeSMauro Carvalho Chehab         3 = mp3
2169e1cbedeSMauro Carvalho Chehab         4 = cd
2179e1cbedeSMauro Carvalho Chehab         5 = tv
2189e1cbedeSMauro Carvalho Chehab         6 = cpu
2199e1cbedeSMauro Carvalho Chehab         7 = vol
2209e1cbedeSMauro Carvalho Chehab
2219e1cbedeSMauro Carvalho Chehab  For example "echo 0x01000001 >/sys/devices/platform/asus-laptop/ledd"
2229e1cbedeSMauro Carvalho Chehab  would display "DVD001".
2239e1cbedeSMauro Carvalho Chehab
2249e1cbedeSMauro Carvalho ChehabDriver options
2259e1cbedeSMauro Carvalho Chehab--------------
2269e1cbedeSMauro Carvalho Chehab
2279e1cbedeSMauro Carvalho Chehab Options can be passed to the asus-laptop driver using the standard
2289e1cbedeSMauro Carvalho Chehab module argument syntax (<param>=<value> when passing the option to the
2299e1cbedeSMauro Carvalho Chehab module or asus-laptop.<param>=<value> on the kernel boot line when
2309e1cbedeSMauro Carvalho Chehab asus-laptop is statically linked into the kernel).
2319e1cbedeSMauro Carvalho Chehab
2329e1cbedeSMauro Carvalho Chehab	     wapf: WAPF defines the behavior of the Fn+Fx wlan key
2339e1cbedeSMauro Carvalho Chehab		   The significance of values is yet to be found, but
2349e1cbedeSMauro Carvalho Chehab		   most of the time:
2359e1cbedeSMauro Carvalho Chehab
2369e1cbedeSMauro Carvalho Chehab		   - 0x0 should do nothing
2379e1cbedeSMauro Carvalho Chehab		   - 0x1 should allow to control the device with Fn+Fx key.
2389e1cbedeSMauro Carvalho Chehab		   - 0x4 should send an ACPI event (0x88) while pressing the Fn+Fx key
2399e1cbedeSMauro Carvalho Chehab		   - 0x5 like 0x1 or 0x4
2409e1cbedeSMauro Carvalho Chehab
2419e1cbedeSMauro Carvalho Chehab The default value is 0x1.
2429e1cbedeSMauro Carvalho Chehab
2439e1cbedeSMauro Carvalho ChehabUnsupported models
2449e1cbedeSMauro Carvalho Chehab------------------
2459e1cbedeSMauro Carvalho Chehab
2469e1cbedeSMauro Carvalho Chehab These models will never be supported by this module, as they use a completely
2479e1cbedeSMauro Carvalho Chehab different mechanism to handle LEDs and extra stuff (meaning we have no clue
2489e1cbedeSMauro Carvalho Chehab how it works):
2499e1cbedeSMauro Carvalho Chehab
2509e1cbedeSMauro Carvalho Chehab - ASUS A1300 (A1B), A1370D
2519e1cbedeSMauro Carvalho Chehab - ASUS L7300G
2529e1cbedeSMauro Carvalho Chehab - ASUS L8400
2539e1cbedeSMauro Carvalho Chehab
2549e1cbedeSMauro Carvalho ChehabPatches, Errors, Questions
2559e1cbedeSMauro Carvalho Chehab--------------------------
2569e1cbedeSMauro Carvalho Chehab
2579e1cbedeSMauro Carvalho Chehab I appreciate any success or failure
2589e1cbedeSMauro Carvalho Chehab reports, especially if they add to or correct the compatibility table.
2599e1cbedeSMauro Carvalho Chehab Please include the following information in your report:
2609e1cbedeSMauro Carvalho Chehab
2619e1cbedeSMauro Carvalho Chehab - Asus model name
2629e1cbedeSMauro Carvalho Chehab - a copy of your ACPI tables, using the "acpidump" utility
2639e1cbedeSMauro Carvalho Chehab - a copy of /sys/devices/platform/asus-laptop/infos
2649e1cbedeSMauro Carvalho Chehab - which driver features work and which don't
2659e1cbedeSMauro Carvalho Chehab - the observed behavior of non-working features
2669e1cbedeSMauro Carvalho Chehab
2679e1cbedeSMauro Carvalho Chehab Any other comments or patches are also more than welcome.
2689e1cbedeSMauro Carvalho Chehab
2699e1cbedeSMauro Carvalho Chehab acpi4asus-user@lists.sourceforge.net
2709e1cbedeSMauro Carvalho Chehab
2719e1cbedeSMauro Carvalho Chehab http://sourceforge.net/projects/acpi4asus
272