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