Difference between revisions of "Acer Aspire One"

From ArchWiki
Jump to: navigation, search
(Video: VGA port)
(Recommended partition shemes for A110L)
Line 63: Line 63:
 
* /dev/sda1        all 8GB on the SSD for /
 
* /dev/sda1        all 8GB on the SSD for /
 
* /dev/mmcblk0p1    all space on the extensional left side sd(hc) card /home
 
* /dev/mmcblk0p1    all space on the extensional left side sd(hc) card /home
* No swapp at all
+
* No swap at all
  
 
===Mounting Options===
 
===Mounting Options===

Revision as of 11:23, 8 September 2008


WARNING: THIS ARTICLE IS INCOMPLETE! Visit the Arch forum thread link below to get information on installing Arch Linux on the Acer Aspire One.

Most of this information is from the Arch Forum. You can also find a lot of helpful information from the AspireOneUser Forum and Install Ubuntu Hardy Heron (8.04.1) on the Acer Aspire One. General netbook installation hints can be found also in the Asus EEE PC Wiki article

Hardware

Aspire One common hardware

  • Intel Atom N270 1.6 GHz cpu, smp capable(hyperthreading like PIV), up to SSE3 extensions, no EM64T!
  • Intel 945GME chipset
  • Intel 950 GMA onboard graphics adapter
  • 8,9 inch Acer Crystal Brite 1024×600 display
  • Realtek High Definition Audio ALC260
  • Battery: 11.V 41,2Wh/2200mAh or 45Wh/2400mAh Lithium-Ionen-Akku / 3 cell, with a 6 cell model planned
  • sd(hc) Card Reader left side: RICOH R5C8xx
  • Multi Card Reader right side Seite: JMicron JMB385 Flash Media Controller
  • Webcam: Acer Crystal Eye Webcam (Suyin Optronics)
  • Wlan: Atheros AR5007EG (Chipset 2425)
  • LAN: Realtek RTL8102E
  • Touchpad: Synaptics
  • Weight: 960 gr.
  • Size: 24,9 x 17 x 2,9 cm
  • One memory expansion slot ( So-DIMM DDRII 400/533/667MHz up to 1GB) under the keyboard hard to access see memory upgrade; max. 1,5GB

version A110L

  • One 512MB memory stick onboard soldered
  • 8GB solid state disc

version A150L

  • One 1024MB memory stick onboard soldered
  • 120gb 1.8"(?) hdd

Before You Begin

A110L: Avoiding Pitfalls for SSD version

Solid state drives are made of flash memory. They are fast in reading but slow in writing data. Flash memory you cannot overwrite countless times. So for a long ssd life take care to

  1. Never choose to use a journaling file system on the SSD partitions
  2. Never use a swap partition on the SSD
  3. Edit your new installation fstab to mount the SSD partitions "noatime"
  4. Never log messages or error log to the SSD

The rules ensure that we won't reach the maximum limit of writes on our SSD faster than we should.

Choosing Your Installation Media

The Acer Aspire One does not have an optical drive installed on the machine. This means you will need to install Arch Linux through one of the alternative methods:

  1. USB pen drive (Recommended)
  2. External USB CD-ROM drive

Installing Arch Linux

  • Install through USB media. Press F12 at BIOS post or change boot order with F2.
  • It is recommended to permanently add a sd(hc) card into the left sd card reader to extend storage space

Recommended partition shemes for A110L

  • /dev/sda1 all 8GB on the SSD for /
  • /dev/mmcblk0p1 all space on the extensional left side sd(hc) card /home
  • No swap at all

Mounting Options

Both card readers work only, when cards are inserted at boot time. Remounting using other cards is then no problem. Be sure to use UUID or LABEL for mounting, as the /dev/mmcbklXpY change names depending on the amount of cards inserted. Assuming you have the left card mounted as /home, the /etc/fstab might have these entries:

 # 
 # /etc/fstab: static file system information
 #
 # <file system>        <dir>         <type>    <options>          <dump> <pass>
 none                   /dev/pts      devpts    defaults            0      0
 none                   /dev/shm      tmpfs     defaults            0      0
 /dev/sda1              /             ext2      defaults,noatime,nodiratime,errors=remount-ro    0    1
 LABEL=HD-Home          /home         ext2      defaults,noatime,nodiratime,errors=remount-ro    0    1  #left  multi card reader
 UUID=FFFF-FFFF         /mnt/right    vfat      users,rw,uid=1000,gid=100,fmask=0113,dmask=0002  0    0  #right multi card reader
 # Temporary folders
 none                   /var/log      tmpfs     defaults,size=10M   0      0
 none                   /tmp          tmpfs     defaults,size=100M  0      0
 none                   /var/tmp      tmpfs     defaults,size=20M   0      0
 none                   /var/cache/pacman/pkg   tmpfs   defaults,size=300MB   0      0
  • To set a label on a ext2 filesystem use e2label. On a XFS filesystem use xfs_admin.
  • CAUTION: The temporary folders listed above will delete all files in those folders after each reboot.
  • CAUTION: Has been reported that the stock kernel is causing partition table corruption on the SD card when you resume from a suspend. Corrupted /home. Someone on the forum suggested that you need a kernel with CONFIG_MMC_UNSAFE_RESUME set to prevent this from happening.
  • For more tuning tips see the section "Tuning tips" below.

Hardware setup

  • use of kernel >=2.6.26 is recommended to get eth0 up and running
  • blackmask memstick module, makes full load on one core, should be patchable and fixed in next kernel release
  • blackmask ath5k too, since it doesn't work
  • setup cpufreq scaling: load modul acpi_cpufreq and put the wanted governor into rc.local see wiki page
  • modules in rc.conf:
 to be filled (r8169 ath_pci !memstick acpi_cpufreq)

Network

WLAN

  • use ath_pci for onboard wlan - kernel driver ath5k loads well but does not yet support the chipset
  • install madwifi_hal wlan kernel module, for wireless support

Add the following to sysctl.conf to make the wlan blink when there's traffic:

 dev.wifi0.ledpin=3
 dev.wifi0.softled=1

The led on the front will now do the association blink, as well as blink based on wireless traffic. Use ledpin=-3 for a solid light.

LAN

  • use module r8169 for eth0 support with kernel version >=2.6.26

Configuration

For having network management mobility you can try the follow packages:

  • extra/networkmanager

Select one front end from you desktop flavor:

  • extra/gnome-network-manager
  • community/knetworkmanager

Than add to the /etc/rc.conf "networkmanager" as something similar to:

 DAEMONS=(syslog-ng !network !netfs !crond dbus hal @kdm @networkmanager)

Audio

Typical Intel HD Audio. Just follow alsa setup

Video

Typical Intel chipset. Works with the xf86-video-intel driver. 400ish on glxgears.

You'll need to install packages

  • xorg
  • xf86-video-intel
  • synaptics

Original Linpus Xorg.conf:

 # Xorg configuration created by system-config-display
 
 Section "ServerFlags"
   Option "DontZap" "yes"
   Option "DontVTSwitch" "yes"
 EndSection
 
 Section "ServerLayout"
   Identifier "Default Layout"
   Screen 0 "Screen0" 0 0
   InputDevice "Mouse0" "CorePointer"
   InputDevice "Synaptics Mouse" "AlwaysCore"
   InputDevice "Keyboard0" "CoreKeyboard"
 EndSection
 
 Section "InputDevice"
   Identifier "Keyboard0"
   Driver "kbd"
   Option "XkbModel" "pc105"
   Option "XkbLayout" "gb,us"
   Option "XkbVariant" "euro"
   Option "XkbOptions" "grp:alt_shift_toggle"
 EndSection
 
 Section "InputDevice"
   Identifier "Synaptics Mouse"
   Driver "synaptics"
   Option "Device" "/dev/psaux"
   Option "Protocol" "auto-dev"
   Option "LeftEdge" "1700"
   Option "RightEdge" "5300"
   Option "TopEdge" "1700"
   Option "BottomEdge" "4200"
   Option "FingerLow" "25"
   Option "FingerHigh" "30"
   Option "MaxTapTime" "180"
   Option "MaxTapMove" "220"
   Option "VertScrollDelta" "100"
   Option "MinSpeed" "0.09"
   Option "MaxSpeed" "0.18"
   Option "AccelFactor" "0.0015"
   Option "SHMConfig" "on"
 EndSection
 
 Section "InputDevice"
   Identifier "Mouse0"
   Driver "mouse"
   Option "Protocol" "IMPS/2"
   Option "Device" "/dev/input/mice"
   Option "ZAxisMapping" "4 5"
   Option "Emulate3Buttons" "no"
 EndSection
 
 Section "Monitor"
   Identifier "Monitor0"
   Modeline "1024x600" 50.40 1024 1048 1184 1344 600 600 619 625
   # Option "Above" "Monitor1"
 EndSection
 
 Section "Device"
   Identifier "Videocard0"
   Driver "intel"
   # Option "monitor-LVDS" "Monitor0"
   # Option "monitor-VGA" "Monitor1"
   Option "Clone" "true"
   Option "MonitorLayout" "LVDS,VGA"
   vBusID "PCI:0:2:0"
   # Screen 0
 EndSection
 
 Section "Screen"
   Identifier "Screen0"
   Device "Videocard0"
   Monitor "Monitor0"
   DefaultDepth 24
   SubSection "Display"
     Viewport 0 0
     Depth 24
     Modes "1024x600" "800x600" "640x480"
     Virtual 1024 600
   EndSubSection
 EndSection

External VGA port

The external VGA port works without further modifications if the externel screen is connected at boot time. If the screen is added later, the VGA port has to be enabled by xrandr. See also section Additional function keys for automating this.

Improve graphics performance

To improve the 2D graphics performance add the following lines to the Driver Section of your xorg.conf

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

To improve the 3D graphics performance add the following to your /etc/profile

 export INTEL_BATCH=1

See also Intel Graphics.

Setting dpi

Very large fonts may appear in some applications (for example the menu line in Firefox). Setting the DisplaySize in xorg.conf does not help. Instead add the following to your ~/.xserverrc:

 #!/bin/bash
 exec /usr/bin/X -dpi 100

You may also try 75dpi if you can live with small fonts.

Webcam

Works on the fly with the kernel26 (>=2.6.22) from core using the UVC driver (uvcvideo).

Additional function keys

For the wifi kill switch add these keycodes in /etc/rc.local:

 /usr/bin/setkeycodes e055 159
 /usr/bin/setkeycodes e056 158

Note that if the wifi kill switch is on (wifi is off), you will need to reboot to re-enable wifi one you disable the kill switch.

For the Fn-Keys add these additionally:

 /usr/bin/setkeycodes e025 130
 /usr/bin/setkeycodes e026 131
 /usr/bin/setkeycodes e027 132
 /usr/bin/setkeycodes e029 122
 /usr/bin/setkeycodes e071 134
 /usr/bin/setkeycodes e072 135

Now setup an ~/.Xmodmap

 keycode 160 = XF86AudioMute
 keycode 174 = XF86AudioLowerVolume
 keycode 176 = XF86AudioRaiseVolume
 keycode 223 = XF86Standby
 keycode 239 = XF86KbdBrightnessDown
 keycode 123 = XF86KbdBrightnessUp
 keycode 210 = XF86Display

and add

 xmodmap ~/.Xmodmap

to your .xinitrc.

If you use KDE or Gnome you can use the appropriate tools to bind the keys or they work just fine without further modifications. If you use neither KDE nor Gnome then read on.

To use the keys to adjust volume it is recommended to use xbindkeys:

 pacman -S xbindkeys

Add

 xbindkeys &

to .xinitrc and use the following as .xbindkeysrc.scm:

 (xbindkey '("m:0x0" "c:160") "amixer set Master mute")
 (xbindkey '("m:0x0" "c:176") "amixer set Master 2dB+ unmute")
 (xbindkey '("m:0x0" "c:174") "amixer set Master 2dB- unmute")
 (xbindkey '("XF86Display") "uxterm -e vgadisplay.sh")

Note that I have added the option to switch the external VGA output here by a bash-display-script. You will need the following as /usr/bin/vgadisplay.sh:

 #! /bin/bash
 TEMP=/tmp/answer$$
 dialog --menu "Select VGA behavior" 13 50 6 1 off 2 1024x600 3 "Auto (most probably 1024x768)" 2>$TEMP
 ret=$?
 choice=`cat $TEMP`
 case $ret in
     1) ;; # Cancel - do nothing
     0)  # User selection
         case $choice in
          1) xrandr --output VGA --off;;
          2) xrandr --output VGA --mode 1024x600;;
          3) xrandr --output VGA --auto;;
         esac
         ;; 
     *)  # Shouldnt happen
         echo "Abnormal ret code from dialog: $ret" 
         ;; 
 esac

You may also bind an xrandr call directly with the XF86Display key but with the above way you have more options.

Tuning tips

  • Use the noop IO scheduler (elevator=noop to /boot/grub/menu.lst's kernel line)
  • While editing the /boot/grub/menu.lst you may also add vga=771 to the kernel line to have a 800x600 256-colored framebuffer for a nicer boot-up. See Grub for more info.
  • locate pacman pkg cache in /etc/pacman.conf to your sd card ( /home/where_ever_you_want_it)
  • ToDo: post example fstab
  • reduce write accesses on / and /home using "noatime" option in /etc/fstab
  • speedup logging and tmp files, change /etc/fstab this way:
   tmpfs      /var/log        tmpfs        defaults           0    0
   tmpfs      /var/tmp        tmpfs        defaults           0    0
   tmpfs      /tmp            tmpfs        defaults           0    0
  • EXT3: change commit interval in fstab, e.g.:
   UUID=f00ba4 / ext3 noatime,nodiratime,commit=15 0 1
  • Or for all filesystems use:
   echo "1500" > /proc/sys/vm/dirty_writeback_centisecs
  • Firefox 3.x uses a sqlite db that creates many write accesses, so this can reduce it:
  • Firefox -1- go to about_config, right click, add new string „browser.cache.disk.parent_directory“ with value "/tmp/firefox"
  • Firefox -2- change options/security/ and disable phishing - take care !
  • ToDo: install customized kernel with slack konfig and custom CLFAGS
  • for faster boot and a slack optimized hardware configuration try the custom kernel: http://dev.archlinux.org/~andyrtr/AspireOne/kernel26-one/
    if you need additional hardware support recompile it to your needs, report suggestions/missing modules to the forum thread

lspci

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)
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E PCI Express Fast Ethernet controller (rev 02)
03:00.0 Ethernet controller: Atheros Communications, Inc. AR5006EG 802.11 b/g Wireless PCI Express Adapter (rev 01)

Weblinks