gestreift.net  
Home arrow News arrow Hardware unter Linux arrow Linux @ Asus W6A (english)
Linux @ Asus W6A (english) Drucken
Asus W6A
[deutsche Version] My newest toy is called Asus W6A. It is small and light-weight, has WLAN and bluetooth and looks pretty good. A special goody is the wireless optical mouse with its receiver integrated into the notebook. 
 
technical Specifications: Centrino, Intel® Pentium® M Prozessor 750, 13.3" Color Shine Glare Type WXGA-Display, 512 MB DDR2 PC533 RAM, 80 GB HDD, 10/100/1000 Ethernet, Bluetooth, 3x USB2.0, TV-out, Firewire, CardReader, 31.5cm x 22.6cm x 3.29cm, 1.86kg 

Summary

Komponente Status Bemerkungen
Intel(R) Pentium(R) M processor 1.86GHz works speedstep works out of the box
Intel(R) Mobile 915GM/GMS/910GML Express Graphics
works
needs 915resolution 
Intel(R) PRO/Wireless 2200BG works  
Realtek RTL-8139/8139C/8139C+  works  
internal modem
not tested
 
Bluetooth works requires patch
Intel(R) USB-Controller (UHCI und EHCI)
works  
Intel(R) High Definition Audio
works snd_hda_intel model=asus
Cardbus (Ricoh Co Ltd. RL5c476 II)
not tested
 
CardReader (Ricoh Co Ltd. R5C822)  not tested
 
Firewire (Ricoh Co Ltd. R5C522)
not tested
 
 

Installing Debian Sarge

There have been no problems. I used kernel 2.6 by selecting the boot-option linux26. The only critical point was the 1280x800-resolution of the i915-chipset in x.org - 915resolution fixed this (hint: don't map the 1280x800 resolution over 1024x768 if you would like to switch the display to an XGA-Beamer :-)). Here you find the relevant part of my xorg.conf.

Framebuffer

For getting framebuffer to work at WXGA-resolution, vesafb should be compiled into the kernel. The intelfb-module also supports the 915GM-graphics, but it only runs an 1024x768 pixel. With vesa the following kernel-parameters work fine:

vga=0x360 video=vesafb:mtrr,1280x800-16@72

Sound

The lspci-command finds a 'High Definition Audio Controller' and the alsa-module snd_hda_intel loads without errors. But for getting the sound to work you need to give the model=asus-parameter to the alsa-module and install alsa-utils at least in version 1.0.10. In my opinion the sound-quality is not too good, but in win it is not better - so it's not tux' fault. By the way: The controller for the intigrated speakers is called 'Front'.

Bluetooth

Bluetooth should be activated by ACPI - but the file /proc/acpi/asus/bt is missing. I wrote a patch against the acpi_asus.c-file of vanilla 2.6.14.3-kernel based upon the one of Fernando A. P. Gomes for Asus W5A. Please download it here. After applying bluetooth may be switched by 'echo 1 > /proc/acpi/asus/bt'. The syslog recocnizes the new device immediataly.

ACPI / Speedstep

ACPI is working from the beginning of the installation. So is speedstep. One can read the battery-state, the temperature and even the state of the fan. This one is unfortunately on all the time, but its noise-level is not really disturbing. By activating 'asus laptop extras' in kernel/acpi the brighteness of the display (0-15, asus/brn) and the video-output (acpi/lcd, acpi/disp) may be set up.

/proc/acpi/events is reacting for any hotkeys but the WLAN-switch in top-left of the notebook. Using the packages acpid and osdsh you will not see any difference to the windows-environment! Please find the hotkeys used by me here.

Configurations

/etc/X11/xorg.conf  (relevant part for dual-head-option):

Section "Device"
        Identifier      "intel915-lcd"
        Driver           "i810"
        BusID           "PCI:00:02:00"
        Option          "MonitorLayout"         "CRT,LFP"
        Option          "DRI"                       "true"
        Screen          0
EndSection

Section "Device"
        Identifier      "intel915-vga"
        Driver           "i810"
        BusID           "PCI:00:02:00"
        Option          "MonitorLayout"         "CRT,LFP"
        Option          "DRI"                       "true"
        Option          "DevicePresence"       "yes"
        Screen          1
EndSection

Section "Monitor"
        Identifier      "monitor-lcd"
        HorizSync      28-49
        VertRefresh   43-72
        Option          "DPMS"
EndSection

Section "Monitor"
        Identifier      "monitor-vga"
        HorizSync      30-83
        VertRefresh   56-75
        Option          "DPMS"
EndSection

Section "Screen"
        Identifier      "lcd"
        Device          "intel915-lcd"
        Monitor         "monitor-lcd"
        DefaultDepth    24
        SubSection "Display"
                Depth           24
                Modes           "1280x800" "1024x768"
        EndSubSection
EndSection

Section "Screen"
        Identifier      "vga"
        Device          "intel915-vga"
        Monitor         "monitor-vga"
        DefaultDepth    24
        SubSection "Display"
                Depth           24
                Modes           "1024x768"
        EndSubSection
EndSection

Section "ServerLayout"
        Identifier         "lapguin"
        Screen             0 "lcd"
        Screen             1 "vga" RightOf "lcd"
        InputDevice     "Generic Keyboard"
        InputDevice     "Synaptics Touchpad"
        InputDevice     "USB Mouse"
        Option            "Xinerama"      "false" 
EndSection

ACPI-hotkeys:

event=hotkey ATKD 0000005[cC]right beside WLAN-switch (my use: bluetooth)
event=hotkey ATKD 000000[12].*display-brighteness
event=hotkey ATKD 0000003[01]
volume, beneath the cardbus-slot
event=hotkey ATKD 00000051
internet-browser key (my use: WLAN on/off)

WLAN-script (switching on/off):

#!/bin/bash

DEVICE=`cat /proc/net/wireless | grep ^[[:blank:]]*eth | sed -es/"^[[:blank:]]*\([A-Za-z0-9]*\):.*"/"\1"/`

if [ -n "$DEVICE" ]; then
        su -c "/usr/bin/osdctl -s 'shutting down WLAN'" <user>
        logger "shutting down wlan ($DEVICE)"
        /sbin/ifdown $DEVICE
        /sbin/rmmod ipw2200 ieee80211 ieee80211_crypt
        /etc/init.d/ifplugd restart
        su -c "/usr/bin/osdctl -s 'WLAN is down'" <user>
else
        su -c "/usr/bin/osdctl -s 'activating WLAN'" <user>
        logger "bringing up wlan"
        /sbin/modprobe ipw2200

        DEVICE=`cat /proc/net/wireless | grep ^[[:blank:]]*eth | sed -es/"^[[:blank:]]*\([A-Za-z0-9]*\):.*"/"\1"/`

        IWCONFIG=/sbin/iwconfig
        $IWCONFIG $DEVICE key [1] xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xx
        $IWCONFIG $DEVICE key [2] xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xx
        $IWCONFIG $DEVICE key [3] xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xx
        $IWCONFIG $DEVICE key [4] xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xx
        KEY=`expr $RANDOM % 4 + 1`
        $IWCONFIG $WLAN key [$KEY]

        STATUS=`/usr/sbin/ifplugstatus eth0 | grep beat\ detected`
        [ -z "$STATUS" ] && /etc/ifplugd/action.d/lan_vs_wlan eth0 down
        su -c "/usr/bin/osdctl -s 'WLAN is up'" <user>
fi