ASUS Eee PC 1005P

From ArchWiki
Revision as of 10:17, 22 May 2010 by Konlaasz (Talk | contribs) (Created page with 'Category:ASUS (English) {| style="float:right; border: 1px solid #000;" | '''Device''' || '''Status''' || '''Modules''' |- | Video || style="color:green" | '''Working''' ||…')

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Device Status Modules
Video Working i915
Ethernet Working atl1c
Wireless Working ath9k
Audio Working snd_hda_intel
Camera Working uvcvideo
Card Reader ???
Function Keys Some working

Adapted from 1005HA, please do edit as needed!

The stock kernel (currently 2.6.33) seems to support all the hardware in the 1005P, although not without problems.

Installation

Installing via PXE works well - it requires another computer to use as PXE host, and some configuration. Installing from USB: ethernet does not work with the 2009.08 img files (the latest as of this writing), so the driver has to be fetched separately if needed ([1]).

Xorg

Driver

Video driver: xf86-video-intel

HAL

As of this writing, HAL needs to be installed and running in order for the input devices to be autodetected.

DPI setting

A good comfortable setting would be 96dpi or 75dpi if you like your fonts really small. An easy way to set your DPI would be to add this to the end of your xserverrc (located in /etc/X11/xinit/).

 exec /usr/bin/X -nolisten tcp -dpi 96

Graphic Performance

With X.org's new 2D acceleration architecture, EXA, users of the intel driver may experience slowdown with window redrawing and scrolling. A possible solution to this is to override intel's default 2D acceleration, XXA, with the new X.org acceleration. Add this section to the device section of your xorg.conf.

 Option "AccelMethod" "exa" 
 Option "MigrationHeuristic" "greedy"

In addition to improving 2D graphics, the card's 3D performance can be enhanced by adding this line to your /etc/profile.

export INTEL_BATCH=1

See Intel for more information.

According to the intel driver documentation, X-Video Motion Compensation or "XvMC" is not enabled by default. Enabling this option can greatly reduce CPU utilization when playing back MPEG-2 video. To enable this option, two things need to be done; first, add this to the device section of your xorg.conf:

Option "XvMC" "true"

Lastly, create a config file to tell the X server where the XvMC library is:

echo /usr/lib/libIntelXvMC.so > /etc/X11/XvMCConfig

Touchpad

Works. For additional stuff, see [[2]].

xrandr

For a nice GUI tool, try lxrandr; it is very simple to use!

Switch to External Monitor:

xrandr --output LVDS1 --off --output VGA1 --auto

Switch back to eeepc's LCD:

xrandr --output LVDS1 --auto --output VGA1 --off

Powersaving and ACPI

Start off your powersaving adventures by installing Powertop. This is basically a program to see how much power stuff is using, but it also gives you tips on what to change.

# pacman -S powertop

A good starting point is to disable the hardware you don't plan on using. Reboot and enter the BIOS by pressing F2. Disable for example the card reader, camera, ethernet but only if you don't need them of course.

According to Powertop the 1005HA uses around 7-10 Watts on maximum powersave (using Laptop mode tools and cpufreq and the above hardware disabled, using Wifi and writing this). Idle around 5-6 W. Please report how to get it lower!

laptop-mode-tools

Laptop mode is a nice and easy way to setup most of the availiable power saving options on the 1005HA. These include spinning down the hard drive and adjusting the power saving modes of the harddrive and CPU, as well as autosuspending of the USB-ports and screen brightness etc. It provides a great centralized configuration file as well as separate configuration files for the various power saving modules managed by Laptop mode tools.

Installation and setup

Install the package with

# pacman -S laptop-mode-tools

The main configuration file is /etc/laptop-mode/laptop-mode.conf but there are more configuration files located in the directory /etc/laptop-mode/conf.d/ Be sure to read them and set them up accordingly.

Note the option in laptop-mode.conf to automatically start many of the other modules.

1005HA specific options for a few of the modules below (there are many more):

LCD brightness

For lcd-brightness, edit the file /etc/laptop-mode/conf.d/lcd-brightness.conf and adjust it as suits you. The darkest is 0 and brightest 15, this is a suggested setup:

BATT_BRIGHTNESS_COMMAND="echo 1"
LM_AC_BRIGHTNESS_COMMAND="echo 15"
NOLM_AC_BRIGHTNESS_COMMAND="echo 15"
BRIGHTNESS_OUTPUT="/proc/acpi/video/VGA/LCDD/brightness"

CPU Powersaving

The eeepc "Super Hybrid Engine" as it's known under windows has a significant effect on powersaving. This underclocks the FSB for powersave/overclocks for performance and can be controlled via /sys/devices/platform/eeepc/cpufv which is provided by the module eeepc_laptop. It is included in the laptop-mode-tools package, and is activated and configured in the file /etc/laptop-mode/conf.d/eee-superhe.conf See also this forum thread.

As of the relase of kernel 2.6.32 the needed module eeepc_laptop doesn't work, to get this working you will need to add the following to the kernel line in the GRUB config (eg. /boot/grub/menu.lst):

acpi_osi=Linux

The CPU frequency can be controlled by the file cpufreq.conf provided by laptop mode tools. A good value is ”T2” (75% speed) when on battery and ”minimum” (full speed) when on AC. However, using the cpufrequtils package (see below) is normally a better option, as the ondemand option automatically changes between the specified modes depending on system load.

USB suspend

Tip: make use of the option to disable the suspending of some USB hardware (eg. 3g modems) by using lsusb to get the ID and then insert it in the configuration file.

cpufrequtils

To scale the CPU and possibly save a bit of power, you will want to set up cpufrequtils. The daemon provided with this script automatically handles the scaling. You can set the min_freq value higher (eg. 1000MHz) if you prefer things a bit more responsive while still conserving power. Note that this can also be handled by laptop-mode-tools if you prefer.

  1. pacman -S cpufrequtils
  2. Edit /etc/conf.d/cpufreq
    min_freq="800MHz" max_freq="1.60GHz"
  3. modprobe acpi-cpufreq cpufreq_ondemand cpufreq_powersave
  4. Add these modules listed above to the MODULES=() array in rc.conf
  5. /etc/rc.d/cpufreq start
  6. Add cpufreq to the DAEMONS=() array in rc.conf


Hotkeys

To get the hotkeys working (fn+F1 etc, touchpad lock, powerbutton shutdown, Super hybrid engine toggle), install the acpi-eeepc-generic package from AUR. Configuration is done in the file /etc/conf.d/acpi-eeepc-generic.conf.

Wifi toggle

To enable the toggling of the Wifi by pressing fn+f2, edit the acpi-eeepc-generic config file and change

COMMANDS_WIFI_TOGGLE=("/etc/acpi/eeepc/acpi-generic-toggle-wifi.sh")

to

COMMANDS_WIFI_TOGGLE=()

Source.

Sound volume hotkeys

In order to get the hotkeys for muting and raising and lowering of the sound volume, edit /etc/conf.d/acpi-eeepc-generic.conf and replace the lines:

COMMANDS_MUTE=("alsa_toggle_mute")
COMMANDS_VOLUME_DOWN=("alsa_set_volume 5%-")
COMMANDS_VOLUME_UP=("alsa_set_volume 5%+")

with

COMMANDS_MUTE=("amixer set Master toggle")
COMMANDS_VOLUME_DOWN=("amixer set Master 10%-")
COMMANDS_VOLUME_UP=("amixer set Master 10%+")

Note that the value 10% can be any value you prefer, see the man page of amixer.

Sleep

If you have problems with the script provided in acpi-eeepc-generic, try pm-suspend instead.

To substitute pm-suspend for the acpi sleep script, edit /etc/conf.d/acpi-eeepc-generic.conf and comment out the line that reads:

COMMANDS_SLEEP=("/etc/acpi/eeepc/acpi-eeepc-generic-suspend2ram.sh")

Replace it with:

COMMANDS_SLEEP=("/usr/sbin/pm-suspend")

Display settings

Create the /etc/X11/xorg.conf file and add the following to it to enable Intel's framebuffer compression, which according to Lesswats.org is supposed to save quite some power.

Section "Device"
 Identifier "Builtin Default intel Device 0"
 Driver	 "intel"
 Option	 "FramebufferCompression" "on"
 Option	 "AccelMethod" "EXA"
 Option	 "Tiling" "on"
EndSection

Hardware

Ethernet

Works with the stock kernel (2.6.33).

WiFi

Works with the stock kernel (2.6.33).

Camera

To enable/disable the camera:

 # enable
 echo 1 > /sys/devices/platform/eeepc/camera
 # disable
 echo 0 > /sys/devices/platform/eeepc/camera

If you really want camera to be disabled, take a look in devices section of BIOS.

Make sure that the module uvcvideo is loaded

To record video and take photos, you may use cheese or the wxcam package.

To simply test the camera, you may use mplayer:

 mplayer -fps 15 tv://

The webcam works with Skype.

Microphone

The microphone works out of the box, it's just a matter of configuration. Run:

$ alsamixer

Press <F4> to go to the 'Capture' section. Navigate to the 'Capture' item using the right and left arrow keys and make sure 'LR Capture' appears. If it doesn't, press <Space>. The 'Capture' and 'Digital' levels are a trade-off between gain and static. I recommend setting to 70 and 75 (using the up and down arrow keys), respectivelly, but you can ajust this to your liking. Exit alsamixer pressing <ESC> and test it:

$ arecord /tmp/record.wav

Say something close enough to the microphone and hit <Ctrl+C> to stop recording. Play it with:

$ aplay /tmp/record.wav 

If everything went well, save your settings (as root):

# alsactl store

Source: [3]

Hardware Info

lspci

$ lspci 00:00.0 Host bridge: Intel Corporation Pineview DMI Bridge 00:02.0 VGA compatible controller: Intel Corporation Pineview Integrated Graphics Controller 00:02.1 Display controller: Intel Corporation Pineview Integrated Graphics Controller 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.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 Tigerpoint LPC Controller (rev 02) 00:1f.2 SATA controller: Intel Corporation 82801GR/GH (ICH7 Family) SATA AHCI Controller (rev 02) 00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 02) 01:00.0 Ethernet controller: Atheros Communications Atheros AR8132 / L1c Gigabit Ethernet Adapter (rev c0) 02:00.0 Network controller: Atheros Communications Inc. AR9285 Wireless Network Adapter (PCI-Express) (rev 01)

Issues

The eeepc_laptop module can only be loaded after appending 'acpi_osi=Linux' to the kernel line in /boot/grub/menu.lst. This is needed in order for the 'Super Hybrid Engine' (eee-she|eee-superhe) to work, and it also fixes the screen brightness levels, however it disables ethernet.