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
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.