ASUS Eee PC 1000
For now, this is just some notes on the Asus EeePC 1000. The difference between the 1000 and the 901 are more subtle than just the screen size.
For more information, see other pages:
The card is a RaLink RT2860. The driver is not in kernel yet, so you need to compile it yourself from AUR. There is 2 packages in AUR: rt2860 and eeert2860. They are the same... Except eeert2860 was outdated on 2009-01-07. So use rt2860. BUT, in the PKGBUILD, the last line looks like this:
install -D -m 755 rt2860sta.ko $startdir/pkg/lib/modules/$(uname -r)/kernel/drivers/net/wireless/rt2860.ko
You will need to add "sta" at the end:
install -D -m 755 rt2860sta.ko $startdir/pkg/lib/modules/$(uname -r)/kernel/drivers/net/wireless/rt2860sta.ko
Else you won't be able to remove the module (neither modprobe -r rt2860sta nor modprobe -r rt2860 will work).
Wireless connection has been tested by me (big_gie) and works with netcfg (2.1.2-1), wicd (1.5.6-1) and Networkmanager_0.7(0.7.0-1) with unencrypted and WPA. Note that with my router (Dlink DIR-615) I had to disable completely WPA2 and AES. So I need to use exclusively WPA with TKIP.
Here is a working xorg.conf file. Not that it is minimal. Almost everything should be automatically configured.
Section "ServerLayout" Identifier "ArchLinux" Screen 0 "Screen0" EndSection Section "Device" Identifier "IntelCard" Driver "intel" VendorName "Intel Corporation" BoardName "Mobile 945GME Express Integrated Graphics Controller" BusID "PCI:0:2:0" Option "AccelMethod" "EXA" EndSection Section "InputDevice" Identifier "keyboard" Driver "evdev" Option "CoreKeyboard" Option "XkbModel" "evdev" Option "XkbRules" "xorg" Option "XkbLayout" "us" Option "XkbVariant" "" EndSection Section "Monitor" Identifier "Monitor0" VendorName "ASUS" ModelName "eeePC 1000" Modeline "1024x600" 48.96 1024 1064 1168 1312 600 601 604 622 -HSync +Vsync # 60 Hz EndSection Section "Screen" Identifier "Screen0" Device "IntelCard" Monitor "Monitor0" DefaultDepth 24 SubSection "Display" Viewport 0 0 Depth 8 EndSubSection SubSection "Display" Viewport 0 0 Depth 15 EndSubSection SubSection "Display" Viewport 0 0 Depth 16 EndSubSection SubSection "Display" Viewport 0 0 Depth 24 #Virtual 2048 2048 Virtual 1680 1050 EndSubSection EndSection
If you don't do anything, the touchpad should be configured to use the evdev driver. With evdev, everything seems to work out of the box: I can use two fingers to scroll for example. The only thing is that you cannot disable the touchpad.
If you want to be able to disable the touchpad, force it to use the synpatics driver. Create this fdi file: /etc/hal/fdi/policy/11-synaptic-options.fdi
<?xml version="1.0" encoding="ISO-8859-1"?> <deviceinfo version="0.2"> <device> <match key="info.product" contains="ETPS/2 Elantech Touchpad"> <merge key="input.x11_driver" type="string">synaptics</merge> <merge key="input.x11_options.SHMConfig" type="string">on</merge> <merge key="input.x11_options.MaxSpeed" type="string">1.00</merge> <merge key="input.x11_options.MinSpeed" type="string">0.75</merge> <merge key="input.x11_options.Emulate3Buttons" type="string">on</merge> <merge key="input.x11_options.VertTwoFingerScroll" type="string">1</merge> <merge key="input.x11_options.HorizTwoFingerScroll" type="string">1</merge> <merge key="input.x11_options.TapButton1" type="string">1</merge> <merge key="input.x11_options.TapButton2" type="string">2</merge> <merge key="input.x11_options.TapButton3" type="string">3</merge> <merge key="input.x11_options.LockedDrags" type="string">1</merge> </match> </device> </deviceinfo>
After an hour of use, I can say that the touchpad does not react the same as with the evdev driver. It seems "jumpy" and not as precise as with evdev. It is still usable though!
Be sure to load the kernel module "eeepc_laptop" to get acpi events. The 1000 does not send the same events as the 901.
I (big_gie) created a new acpi package to support the 1000 acpi events: acpi-eeepc-generic. This package was inspired by many others:
If you look up "eee" on AUR, you'll find a dozen or so packages. I inspired myself from them to create a generic one. It only support the 1000 for the moment, but it should only be a matter of copying the file "acpi-eeepc-1000-events.conf" to "acpi-eeepc-901-events.conf" for example to support a new model.
For the events created by the 1000, see the file "acpi-eeepc-1000-events.conf".
Fn+F1 or closing lid should put the 1000 to sleep. It calls "acpi-eeepc-generic-suspend2ram.sh".
Pressing Fn+F2 will call "acpi-eeepc-generic-wifi-toggle.sh" which will toggle the wireless card. Be sure to load "rfkill" module for this to work.
Note that the brightness codes depends on the actual brightness level. If at the darker, lower level (00000020) and the "brithness up" button is push, the next level event is generated (00000021). If the button is pushed again, again the next level is generated (00000022) until full brightness is reached (0000002f). So basically, the ACPI event generated depends on the actual level.
I removed almost everything unneeded for the 1000. The rest has been compiled in, so it boots faster. I saw some speedup compared to the -ARCH stock kernel.
My config file for custom kernel 220.127.116.11: http://pastebin.com/f1f7d6c42.
My config file for custom kernel 18.104.22.168: http://pastebin.com/f32e1c5d3.
Don't bother installing KDE or Gnome on it. The screen might be bigger then the 901, but it's still a small machine.
I suggest LXDE for a _really_ lightweigth environment. It looks like Windows initially but you can configure as you like:
pacman -S lxde
pacman -S xfce4-svn xfce4-goodies-svn
Because of the compiz problem, I tried kwin instead for its desktop effects and it is way more stable. No problem at all, and it is fast. Kwin is part of "kdebase-workspace" package:
pacman -S kdebase-workspace
Also in kdebase-workspace is "systemsetting". You can configure kwin from it. Just launch it, go in "Desktop" and configure the effects. You don't need to install the whole KDE. Launch kwin with:
00:00.0 Host bridge: Intel Corporation Mobile 945GME Express Memory Controller Hub (rev 03) 00:02.0 VGA compatible controller: Intel Corporation Mobile 945GME Express Integrated Graphics Controller (rev 03) 00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller (rev 03) 00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02) 00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 02) 00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 (rev 02) 00:1c.2 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 3 (rev 02) 00:1c.3 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 4 (rev 02) 00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #1 (rev 02) 00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #2 (rev 02) 00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #3 (rev 02) 00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #4 (rev 02) 00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 02) 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2) 00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02) 00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) SATA IDE Controller (rev 02) 00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 02) 01:00.0 Network controller: RaLink RT2860 04:00.0 Ethernet controller: Attansic Technology Corp. L1e Gigabit Ethernet Adapter (rev b0)
Bus 001 Device 002: ID 04f2:b071 Chicony Electronics Co., Ltd Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Compiz is running nice with the 1000: it is a great addition in usability because of the small screen. But I do have one problem. If I open to many windows, their content doesn't get drawn. If I look at X's log file, I have plenty of:
__glXDRIbindTexImage: Failed to register texture offset override
This is using kernel 2.6.28, xorg-server 1.5.3-4, mesa 7.2-1, xf86-video-intel 22.214.171.124-1. Any suggestion would be appreciated.
If I launch compiz using "compiz-manager", then the problem does not seems to occur:
$ sudo pacman -S compiz-manager $ compiz-manager Checking for Xgl: not present. Detected PCI ID for VGA: 00:02.0 0300: 8086:27ae (rev 03) (prog-if 00 [VGA controller]) Checking for texture_from_pixmap: not present. Trying again with indirect rendering: Checking for texture_from_pixmap: present. Checking for non power of two support: present. Checking for Composite extension: present. Comparing resolution (1024x600) to maximum 3D texture size (2048): Passed. Checking for nVidia: not present. Checking for FBConfig: present. Checking for Xgl: not present. Starting emerald /usr/bin/compiz (core) - Error: Plugin 'text' not loaded. /usr/bin/compiz (thumbnail) - Warn: No compatible text plugin found.