https://wiki.archlinux.org/api.php?action=feedcontributions&user=Ioxer&feedformat=atomArchWiki - User contributions [en]2024-03-19T11:30:28ZUser contributionsMediaWiki 1.41.0https://wiki.archlinux.org/index.php?title=Pm-utils&diff=67931Pm-utils2009-04-30T20:03:37Z<p>Ioxer: /* Execute suspend/hibernate without root password */</p>
<hr />
<div>[[Category:Power management (English)]]<br />
[[Category:HOWTOs (English)]]<br />
<br />
{{Article summary start}}<br />
{{Article summary heading|Available Languages}}<br />
{{i18n_entry|English|Pm-utils}}<br />
{{i18n_entry|简体中文|Pm-utils 电源管理}}<br />
{{Article summary end}}<br />
<br />
== Introduction ==<br />
'''pm-utils''' is the new suspend and powerstate setting framework. It is designed to replace such scripts as those provided by the <tt>powersave</tt> package.<br />
<br />
It is usually used by HAL to execute the various hacks needed to work around bugs in drivers and subsystems that are not yet aware of suspend. It is easily extensible by putting custom hooks into a directory, which can either be done by the system administrator or those hooks can be part of a package, especially if this package needs special attention during a system suspend or power state transition.<br />
<br />
Used in conjunction with the [[Cpufrequtils]] package, notebook (and desktop) owners are provided with a complete power management suite.<br />
<br />
== Installation ==<br />
<br />
The <tt>pm-utils</tt> package is now available from the [http://www.archlinux.org/packages/search/?q=pm-utils Extra] repository:<br />
# pacman -S pm-utils<br />
<br />
== Basic Configuration ==<br />
=== Hibernation (suspend2disk) ===<br />
In order for suspend2disk (hibernate) to work, we need to edit ''/boot/grub/menu.lst'' as root and add '''resume=/path/to/swap/drive''' (e.g. /dev/sda2) to the kernel options, for example:<br />
# (0) Arch Linux<br />
title Arch Linux<br />
root (hd0,0)<br />
kernel /vmlinuz26 root=/dev/sda3 '''resume=/dev/sda2''' ro vga=0<br />
initrd /kernel26.img<br />
<br />
When the machine is placed into hibernation, it will now move all data from RAM to the swap partition... you ''did'' make your swap partition large enough to hold your RAM data, right?<br />
<br />
Even if your swap partition is smaller than RAM, you still have a big chance in hibernating successfully. According to [http://www.mjmwired.net/kernel/Documentation/power/interface.txt kernel documentation], ''/sys/power/image_size controls the size of the image created by the suspend-to-disk mechanism'', which has a default value of 512M. ''The suspend-to-disk mechanism will do its best to ensure the image size will not exceed that number.'' You may either decrease it due to a small swap partition or increase it in purpose of possible hibernation speed up.<br />
<br />
=== Execute suspend/hibernate without root password ===<br />
Because the <tt>pm-utils</tt> scripts must be run as root, you may want to make the scripts accessible to normal users by running sudo without the root password. To do so, edit the <tt>/etc/sudoers</tt> file with visudo, for example:<br />
# visudo<br />
<br />
add the following lines, replacing ''username'' with your own:<br />
''username'' ALL = NOPASSWD: /usr/sbin/pm-hibernate<br />
''username'' ALL = NOPASSWD: /usr/sbin/pm-suspend<br />
save and exit visudo<br />
<br />
Or you can enable it for a group, using the following lines, of course replacing ''group'':<br />
''%group'' ALL = NOPASSWD: /usr/sbin/pm-hibernate<br />
''%group'' ALL = NOPASSWD: /usr/sbin/pm-suspend<br />
<br />
Note: These must come after any user privilege specifications, e.g., "username ALL=(ALL) ALL", or they won't work.<br />
<br />
You can now run the scripts without a password by simply typing:<br />
$ sudo pm-hibernate<br />
or <br />
$ sudo pm-suspend<br />
<br />
Also, add yourself to the ''power'' group so that way using things like applets to do suspend will work. If you do not do this, when you try to use suspend though things like the gnome shutdown applet to suspend/hibernate your computer will just play a very annoying loud triple beep and lock the screen.<br />
<br />
# gpasswd -a ''username'' power<br />
<br />
You should now be able to use gnome power management tools (and kpowersave?) to automatically suspend/hibernate when doing things like closing the laptop lid, running low on battery power etc...<br />
<br />
== Advanced Configuration ==<br />
The main configuration file is '''<tt>/usr/lib/pm-utils/defaults</tt>'''. You ''should not edit this file'', since after a package update it might be overwritten with the default settings. Put your config file into '''<tt>/etc/pm/config.d/</tt>''' instead.<br />
You can just put a simple text file with<br />
SUSPEND_MODULES="button uhci_hcd"<br />
named "modules" or "config" into <tt>/etc/pm/config.d</tt> and it will override the settings in the system wide configuration file.<br />
<br />
=== Available Variables for use in config files ===<br />
SUSPEND_MODULES="button" # the list of modules to be unloaded before suspend<br />
<br />
=== Disabling a hook ===<br />
If a hook is run which you do not like or which you think is not useful or even harmful, we'd appreciate a bugreport for that.<br />
You can however easily disable hooks by just creating an empty file corresponding to the hook in <tt>/etc/pm/sleep.d/</tt>. Say you want to disable the hook <tt>/usr/lib/pm-utils/sleep.d/45pcmcia</tt>, you can do this easily by calling<br />
# touch /etc/pm/sleep.d/45pcmcia<br />
Do not set the executable bit on that dummy-hook.<br />
<br />
=== Creating your own hooks ===<br />
If you want to do something specific to your setup during suspend / hibernate, then you can easily put your own hook into <tt>/etc/pm/hooks</tt>. The hooks in this directory will be called in alphabetic order during suspend (that's the reason their names all start with 2 digits, to make the ordering explicit) and in the reverse order during resume.<br />
<br />
I'm showing a pretty useless demonstration hook here, that will just put some informative lines into your logfile:<br />
<br />
#!/bin/bash<br />
case $1 in<br />
hibernate)<br />
echo "Hey guy, we are going to suspend to disk!"<br />
;;<br />
suspend)<br />
echo "Oh, this time we're doing a suspend to RAM. Cool!"<br />
;;<br />
thaw)<br />
echo "oh, suspend to disk is over, we are resuming..."<br />
;;<br />
resume)<br />
echo "hey, the suspend to RAM seems to be over..."<br />
;;<br />
*) echo "somebody is calling me totally wrong."<br />
;;<br />
esac<br />
<br />
Put this into /etc/pm/sleep.d/66dummy, do a <tt>chmod +x /etc/pm/sleep.d/66dummy</tt> and it will spew some useless lines during suspend / resume.<br />
<br />
'''''Warning:''' All the hooks run as user root. This means that you need to be careful when creating temporary files, check that the PATH variable is set correctly etc. to avoid security problems.''<br />
<br />
== How it Works ==<br />
The concept is quite easy: the main script (<tt>pm-action</tt>, called via symlinks as either <tt>pm-suspend</tt>, <tt>pm-hibernate</tt> or <tt>pm-suspend-hybrid</tt>) executes so-called "hooks", executable scripts, in the alphabetical sorted order with the parameter <tt>suspend</tt> (suspend to RAM) or <tt>hibernate</tt> (suspend to disk).<br />
Once all hooks are done, it puts the machine to sleep. After the machine has woken up again, all those hooks are executed in reverse order with the parameter <tt>resume</tt> (resume from RAM) or <tt>thaw</tt> (resume from disk).<br />
The hooks do various stuff, for example preparing the bootloader, stopping the bluetooth subsystem or unloading of critical modules.<br />
<br />
Both pm-suspend and pm-hibernate are usually called from HAL, initiated by desktop applets as gnome-power-manager or kpowersave.<br />
<br />
{{Box Note|<tt>suspend-hybrid</tt> is a placeholder right now, it is not completely implemented.}}<br />
<br />
There is also the possibility to set the machine into high-power and low-power mode, the command <tt>pm-powersave</tt> is used with an additional parameter of <tt>true</tt> or <tt>false</tt>. It works basically the same as the suspend framework.<br />
<br />
The hooks for suspend are placed in<br />
* <tt>/usr/lib/pm-utils/sleep.d</tt> (distribution / package provided hooks)<br />
* <tt>/etc/pm/sleep.d</tt> (hooks added by the system administrator)<br />
<br />
The hooks for the power state are placed in <br />
* <tt>/usr/lib/pm-utils/power.d</tt> (distribution / package provided hooks)<br />
* <tt>/etc/pm/power.d</tt> (hooks added by the system administrator)<br />
<br />
Hooks in <tt>/etc/pm/</tt> take precedence over those in <tt>/usr/lib/pm-utils/</tt>, so the system administrator can override the defaults provided by the distribution.<br />
<br />
== Troubleshooting ==<br />
If suspend or hibernate did not work correctly, you will probably find some information in the logfile '''<tt>/var/log/pm-suspend.log</tt>''', for example which hooks were run and what the output of them was.<br />
<br />
=== Resume Hook ===<br />
<br />
It has been suggested that some systems require the <tt>resume</tt> hook be added to the initrd image, otherwise the kernel will '''not''' resume. To do so, edit <tt>/etc/mkinitcpio.conf</tt> as root and add <tt>resume</tt> to the HOOKS array:<br />
HOOKS="base udev autodetect ide scsi sata '''''resume''''' filesystems "<br />
<br />
Note that this is an example, and your HOOKS array may look different.<br />
<br />
<tt>resume</tt> must be placed ''after'' 'ide', 'scsi' and/or 'sata' but before 'filesystems'. Of course there has to be an appropriate 'resume' file in /lib/initcpio/hooks, it should already be there, as it is part of the package 'mkinitcpio'.<br />
<br />
Finally, you must rebuild the initrd image for these changes to take effect:<br />
<br />
# mkinitcpio -p kernel26<br />
<br />
{{Box Note|If you use a custom kernel then you might have to change the value of the '-p' option.}}<br />
<br />
== Tips and Tricks / FAQ ==<br />
=== Triggering suspend manually ===<br />
If you want to trigger suspend manually for debugging, without using HAL and other frameworks, call '''<tt>pm-suspend</tt>''' or '''<tt>pm-hibernate</tt>''' as root.<br />
<br />
=== Using another sleep backend (like uswsusp) ===<br />
Create a file with a SLEEP_MODULE variable, like this:<br />
$ cat /etc/pm/config.d/module <br />
SLEEP_MODULE=uswsusp<br />
I don't know but you may have to <code>chmod +x</code> it. To list available modules, use:<br />
$ pacman -Ql pm-utils | grep module.d<br />
<br />
=== Having the hd power management level automatically set again on resume ===<br />
Do it like this:<br />
$ cat /etc/pm/sleep.d/50-hdparm_pm <br />
#!/bin/dash<br />
<br />
if [ -n "$1" ] && ([ "$1" = "resume" ] || [ "$1" = "thaw" ]); then<br />
hdparm -B 254 /dev/sda > /dev/null<br />
fi<br />
<br />
=== Restarting the mouse ===<br />
On some laptops the mouse will hang after an otherwise successful suspend. One way to remedy this is to force a reinit of the PS/2 driver (here <tt>i8042</tt>) through a hook in <tt>/etc/pm/hooks</tt> (see [[#Creating_your_own_hooks|hooks]])<br />
<br />
#!/bin/sh <br />
echo -n "i8042" > /sys/bus/platform/drivers/i8042/unbind<br />
echo -n "i8042" > /sys/bus/platform/drivers/i8042/bind<br />
<br />
=== It seems to not do anything / where is the logfile ===<br />
If it seem to not do anything when called via the desktop applets, then try to call <tt>pm-suspend</tt> or <tt>pm-hibernate</tt> [[#Triggering_suspend_manually|manually from a root shell in a terminal]]. Maybe you'll already get some output that will point you to the problem.<br />
The suspend scripts also write a [[#Troubleshooting|logfile at '''<tt>/var/log/pm-suspend.log</tt>''']].<br />
<br />
=== Add sleep modes to Openbox menu ===<br />
Openbox users can add the new scripts as additional shutdown options within the Openbox menu by adding the items to a new or existing sub-menu in <tt>~/.config/openbox/menu.xml</tt>, for example:<br />
<menu id="64" label="Shutdown"><br />
<item label="Lock"> <action name="Execute"> <execute>xscreensaver-command -lock</execute> </action> </item><br />
<item label="Logout"> <action name="Exit"/> </item><br />
<item label="Reboot"> <action name="Execute"> <execute>sudo shutdown -r now</execute> </action> </item><br />
<item label="Poweroff"> <action name="Execute"> <execute>sudo shutdown -h now </execute> </action> </item><br />
'''''<item label="Hibernate"> <action name="Execute"> <execute>sudo pm-hibernate</execute> </action> </item>'''''<br />
'''''<item label="Suspend"> <action name="Execute"> <execute>sudo pm-suspend</execute> </action> </item>'''''<br />
</menu><br />
<br />
=== Blank screen issue ===<br />
Some users have reported having issues with their laptops not resuming after a suspend or hibernate. This is due to the autodetect HOOK. This can be disabled using the same method for adding the resume HOOK. Just remove autodetect from the list and follow the steps to build the new image. See [http://wiki.archlinux.org/index.php/Pm-utils#Resume_Hook Resume Hook] for more details on building the new image.<br />
<br />
== Other Resources ==<br />
*[http://people.freedesktop.org/~hughsient/quirk/ HAL Quirk Site] - Common solutions and frequently asked questions<br/><br />
*[[Cpufrequtils]] - CPU Frequency Scaling and CPU Power schemes<br/><br />
*[[SpeedStep]] - More information on CPU frequency scaling (some of which is obsolete)<br/><br />
*[[Acpid]] - daemon for delivering ACPI events.<br />
<br />
<br />
== Credits ==<br />
''This wiki entry was originally sourced from the [http://en.opensuse.org/Pm-utils OpenSUSE Wiki] (Licensed under GPL). A big thank you goes to the <tt>pm-utils</tt> developers and documenters for their time.''</div>Ioxerhttps://wiki.archlinux.org/index.php?title=Acer_Aspire_One&diff=55908Acer Aspire One2008-12-20T23:00:54Z<p>Ioxer: Added note about system tray icon corruption in KDE 4.1</p>
<hr />
<div>[[Category:Laptops (English)]]<br />
[[Category:Getting and installing Arch (English)]]<br />
[[Category:HOWTOs (English)]]<br />
<br />
This page provides most of the relevant information on installing Arch Linux on the Acer Aspire One. Visit the Arch forum thread link below to get more information and help.<br />
<br />
Most of this information is from the [http://bbs.archlinux.org/viewtopic.php?id=51796 Arch Forum]. You can also find a lot of helpful information from the [http://www.aspireoneuser.com/forum/viewforum.php?f=5&sid=29c7eef18d2d6477d7f9db91195fb31a AspireOneUser Forum] and [https://help.ubuntu.com/community/AspireOne Install Ubuntu Hardy Heron (8.04.1) on the Acer Aspire One]. General netbook installation hints can be found also in the [http://wiki.archlinux.org/index.php/Installing_Arch_Linux_on_the_Asus_EEE_PC Asus EEE PC Wiki article]<br />
<br />
<br />
==Before You Begin==<br />
<br />
===Avoiding Pitfalls for SSD version===<br />
<br />
Solid state drives are made of flash memory, they are fast in reading but slow in writing data and you cannot overwrite countless times, so for a long SSD life take care to:<br />
<br />
# Never choose to use a journaling file system on the SSD partitions.<br />
# Never use a swap partition on the SSD.<br />
# Edit your new installation fstab to mount the SSD partitions "noatime".<br />
# Never log messages or error log to the SSD.<br />
<br />
These rules ensure that we won't reach the maximum limit of writes on our SSD faster than we should.<br />
<br />
===Choosing Your Installation Media===<br />
<br />
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:<br />
<br />
# [[Install_from_USB_stick|USB pen drive]] '''(Recommended)'''<br />
# External USB CD-ROM drive<br />
<br />
===Preparation prior to installing Arch Linux===<br />
<br />
* Press F12 at BIOS post or change boot order with F2 to select your installation method.<br />
* It is recommended to permanently add a SD(HC) card into the left sd card reader to [[Acer_Aspire_One#SD Storage Expansion|extend storage space]].<br />
* Before running /arch/setup mount your SD card to be visible to the installer.<br />
<br />
==Recommended partition shemes for A110L==<br />
* /dev/sda1 all 8GB on the SSD for / formatted as ext2.<br />
* /dev/mmcblk0p1 all space on the extensional left side sd(hc) card /home <br />
* No swap at all.<br />
<br />
===Filesystems===<br />
<br />
As explained before there's a limit in how many times we can write into a solid state disk/card (around 2GB/day =~ 3years).<br />
<br />
Journaled filesystem writes in a journal what it's modifying in the filesystem, so you'll get more writes into the SD, that will take your write count up as a bit of overhead for each write you'll do, but will give you filesystem consistency if something as gone wrong.<br />
<br />
This wiki will give you the workaround for both journaled (XFS, ext3) and not journaled (ext2) filesystems, the choice is up to your demands. Some people had trouble using ext2 with the SD-card and chose to use XFS, with great success.<br />
<br />
===Mounting Options===<br />
<br />
There are some tweaks we can put into place to have better performance out of filesystems.<br />
<br />
*EXT2:<br />
defaults,noatime,errors=remount-ro<br />
*EXT3:<br />
defaults,noatime,errors=remount-ro,commit=15<br />
*XFS:<br />
defaults,noatime<br />
<br />
These are to be added to your filesystem mount tab file located under /etc/fstab.<br />
As example a mount line for the root directory:<br />
<br />
/dev/sda1 / ext2 defaults,noatime,errors=remount-ro 0 1<br />
<br />
Another tweak is to mount each log directory into a memory filesystem (stores everything only into RAM) so we can skip more write counts out of our SDD but suitable also for HDD. These log files will be then deleted each time the system is rebooted.<br />
<br />
For that we have to add to the same /etc/fstab the follow lines:<br />
<br />
none /var/log tmpfs defaults,size=10M 0 0<br />
none /tmp tmpfs defaults,size=100M 0 0<br />
none /var/tmp tmpfs defaults,size=20M 0 0<br />
<br />
* '''CAUTION:''' The temporary folders listed above will delete all files in those folders after each reboot. You may omit the last three lines, but have increased write access to the SSD.<br />
<br />
* '''CAUTION:''' Has been reported that the stock kernel is causing partition table corruption on the SD card when you resume from a suspend. Corrupted <tt>/home</tt>. Someone on the forum suggested that you need a kernel with <tt>CONFIG_MMC_UNSAFE_RESUME</tt> set to prevent this from happening. This solution did not work for some people, while using XFS instead of ext2 for /home worked just fine.<br />
<br />
* For more tuning tips see the section "Tuning tips" below.<br />
<br />
==Hardware setup==<br />
<br />
Use of kernel26 package >=2.6.27 is recommended to get Ethernet and Wireless LAN up and running.<br />
<br />
===Module configuration===<br />
<br />
Now we have to set the needed modules to get our hardware working and<br />
<br />
Modules to blackmask on /etc/rc.conf:<br />
<br />
* '''memstick'''.......Makes full load on one core, should be patchable and fixed in next kernel release.<br />
* '''snd-pcsp'''.......PC Speaker will be your sound card and <tt>snd-hda-intel</tt> will not work.<br />
<br />
Modules needed to load:<br />
<br />
* '''acpi_cpufreq'''...Enables CPU scaling.<br />
* '''r8169'''..........Enables the Ethernet NIC<br />
* '''pcie_hp'''........Enables the SD card readers hotplug functionality<br />
* '''ath5k'''..........Enables the Wireless device<br />
* '''uvcvideo'''.......Enables the webcam device<br />
<br />
===Enabling CPU scaling===<br />
<br />
To enable the ondemand CPUfreq governor add the following lines to the file /etc/rc.local<br />
echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor<br />
echo ondemand > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor<br />
<br />
==Network==<br />
<br />
Now comes the most important part for a netbook.<br />
<br />
===WLAN===<br />
<br />
AA1 wireless device is a rather new Atheros wireless chip not supported by Linux kernel until version 2.6.27. Before that an external module was required to be compiled and installed named madwifi.<br />
<br />
Now we need to reset the wireless driver upon suspend/resume so we need to create a rule for pm-utils to reload the module. This is done by creating a new file under /etc/pm/config.d/ named modules with:<br />
sudo echo "SUSPEND_MODULES=\"ath5k\"" > /etc/pm/config.d/modules<br />
<br />
==== Getting the latest ath5k driver ====<br />
If you have problems with <tt>ath5k</tt>, you can get the latest version by following the instructions on this site:<br />
http://wireless.kernel.org/en/users/Download<br />
<br />
Essentially, you install the latest wireless drivers into an <tt>updates/</tt> directory, thus leaving the stock drivers intact for possible reverting.<br />
<br />
===LAN===<br />
* Use module r8169 for eth0 support with kernel version >=2.6.26.<br />
<br />
==Audio==<br />
Typical Intel HD Audio. Just follow [http://wiki.archlinux.org/index.php/ALSA alsa setup]<br />
<br />
Several tweaks may be necessary to get the internal microphone, sound after suspend working and front-speaker automuting working. Note that it is currently only possible to get everything at the same time by rebuilding the ALSA drivers. If you do not want to do this, only one of the following options is possible:<br />
<br />
=== Internal microphone and sound after suspend ===<br />
<br />
With kernel >=2.6.27 the internal microphone and sound after suspend works with the following <tt>/etc/modprobe.d/sound</tt>:<br />
options snd-hda-intel model=acer<br />
<br />
If you experience problems with the internal microphone, try also <tt>model=auto</tt> instead, but this will disable sound after suspend.<br />
<br />
===Mute front speakers ===<br />
Change <tt>/etc/modprobe.d/sound</tt> to:<br />
<br />
options snd-hda-intel model=toshiba<br />
<br />
This one is good if you use a headset and wish to mute the front speakers. You'll have a better alsa mixer interface (after reboot). The auto (un)muting of front speakers by headphones will work (but the front mic will not AFAIK). Unmuting the Master channel with amixer (see the xbindkeys section) will cause the front speaker to turn on even if the headphones are plugged in. We'll use a small script to avoid this (toggling the Master channel's volume and not muting it):<br />
<br />
<tt>/usr/local/bin/muteVolume</tt><br />
<br />
#!/bin/bash<br />
# simple script to mute by changing volume<br />
# original: http://gentoo-wiki.com/Talk:HOWTO_Use_Multimedia_Keys#amixer_toggle<br />
filename="/home/YOUR_USER/.lastVolume" # $HOME will not work is some cases, like XFCE<br />
numid="13" #find apropriate number with: amixer controls - 13 is Master on AAO<br />
volume=$(amixer cget numid=$numid | grep :)<br />
volume=${volume: -2}<br />
if [[ $volume = '=0' ]]<br />
then<br />
echo "volue is 0 ,restoring"<br />
volume=$(cat $filename)<br />
amixer cset numid=$numid $volume &> /dev/null<br />
else<br />
echo "volue is $volume ,muting"<br />
echo $volume > $filename<br />
amixer cset numid=$numid 0 &> /dev/null<br />
fi<br />
<br />
Now you can bind this script to XF86AudioMute with xbindkeys or your DM.<br />
<br />
===Build the latest ALSA driver and have everything===<br />
ALSA >=1.0.18 has an option <tt>model=acer-aspire</tt> especially for the Acer Aspire One. This will be included in kernel >=2.6.28. If you want to use it while still having a 2.6.27 kernel, you have to rebuild the ALSA modules:<br />
* Get the latest ALSA driver from ftp://ftp.alsa-project.org/pub/driver/alsa-driver-1.0.18a.tar.bz2<br />
* Become root<br />
* Extract the file<br />
* Run<br />
./configure --with-cards=hda-intel<br />
make<br />
make install-modules<br />
* Edit <tt>/etc/modprobe.d/sound</tt>:<br />
<br />
options snd-hda-intel model=acer-aspire<br />
You will have to run <tt>make install-modules</tt> every time you update the <tt>kernel26</tt> package, since the modules will be overwritten by pacman.<br />
<br />
==Video==<br />
Typical Intel chipset. Works with the xf86-video-intel driver. 400ish on glxgears.<br />
<br />
You'll need to install packages<br />
* xorg<br />
* xf86-video-intel<br />
* synaptics<br />
<br />
For the original Linpus Xorg.conf (if you use this you may want to remove the ServerFlags section - the two entries in it disable the Ctrl-Alt-Backspace and Ctrl-Alt-F* hotkeys) please see [[Acer_Aspire_One#Example_configurations|Example configurations]]<br />
<br />
=== External VGA port ===<br />
<br />
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 <tt>xrandr</tt>. See also section [[Acer_Aspire_One#Additional_function_keys|Additional function keys]] for automating this.<br />
<br />
=== Improve graphics performance ===<br />
<br />
To improve the 2D graphics performance add the following lines to the <tt>Driver</tt> Section of your <tt>xorg.conf</tt><br />
<br />
Option "AccelMethod" "exa"<br />
Option "MigrationHeuristic" "greedy"<br />
<br />
To improve the 3D graphics performance add the following to your <tt>/etc/profile</tt><br />
<br />
export INTEL_BATCH=1<br />
<br />
'''Note:''' Setting the MigrationHeuristic option to greedy will cause system tray icon corruption in KDE 4.1, as noted here <br />
http://bugs.kde.org/show_bug.cgi?id=170283 and here http://bugs.freedesktop.org/show_bug.cgi?id=19059<br />
<br />
See also [[Intel Graphics]].<br />
<br />
=== Setting dpi ===<br />
<br />
Very large fonts may appear in some applications (for example the menu line in Firefox). Setting the DisplaySize in the Monitor section in combination with the NoDDC option in <tt>xorg.conf</tt> may help:<br />
<br />
Section "Device"<br />
...<br />
Option "NoDDC"<br />
...<br />
EndSection<br />
...<br />
Section "Monitor"<br />
...<br />
DisplaySize 271 159 # Sets the correct DPI (96 x 96)<br />
...<br />
EndSection<br />
<br />
When using an external screen, the NoDDC option has the effect, that XRandR may no longer be able to determine and use the maximum resolution of the screen. If you have such problems, delete the above lines from <tt>xorg.conf</tt>. Instead add the following to your <tt>~/.xserverrc</tt>:<br />
<br />
#!/bin/bash<br />
exec /usr/bin/X -dpi 100<br />
<br />
You may also try 75dpi if you can live with small fonts.<br />
<br />
You can also try to add the following to your <tt>~/.Xdefaults</tt>:<br />
*dpi: 75<br />
<br />
=== Setting a proper framebuffer ===<br />
This will enable a 1024x600 framebuffer with 32bit color.<br />
Read [[Uvesafb]] for the basic workthrough. But just following the steps below will work fine for the stock kernel. :-)<br />
* Build and install <tt>915resolution-static</tt> from AUR unsupported.<br />
* Install v86d:<br />
pacman -S v86d<br />
Edit <tt>/etc/modprobe.d/uvesafb</tt> such that the line reads:<br />
options uvesafb mode_option=1024x600-32 scroll=ywrap<br />
Edit <tt>/lib/initcpio/hooks/915resolution</tt> such that it reads:<br />
run_hook ()<br />
{<br />
msg -n ":: Patching the VBIOS..."<br />
/usr/sbin/915resolution -c 945GM 5c 1024 600<br />
msg "done."<br />
}<br />
Add <tt>915resolution</tt> and <tt>v86d</tt> to the hooks in <tt>/etc/mkinitcpio.conf</tt>:<br />
HOOKS="base udev 915resolution v86d ..."<br />
Run<br />
mkinitcpio -p kernel26<br />
Make sure that you do not include any <tt>vga=...</tt> things in your kernel line in GRUB menu.lst, as these will enable other framebuffer drivers and prevent uvesafb from working.<br />
<br />
==Webcam==<br />
<br />
Works on the fly with the kernel26 (>=2.6.22) from core using the UVC driver (uvcvideo).<br />
Make sure that you are in the video group. Setup sudo while you're at it.<br />
<br />
One way of testing the webcam is to load the driver with<br />
sudo modprobe uvcvideo<br />
and then (after installing wxcam) test it with<br />
wxcam<br />
<br />
To stop using the webcam-related drivers:<br />
sudo rmmod uvcvideo<br />
sudo rmmod videodev<br />
sudo rmmod v4l1_compat<br />
sudo rmmod video<br />
<br />
==Card Reader==<br />
<br />
To enable hotplugging for the card readers, add the following to <tt>/etc/modprobe.d/pciehp</tt>:<br />
options pciehp pciehp_force=1<br />
<br />
Then add <tt>pciehp</tt> to the modules array in <tt>/etc/rc.conf</tt>:<br />
MODULES=( ... pciehp ... )<br />
<br />
As an alternative, which may possibly also enable powersaving for the card readers, get the [http://petaramesh.org/public/arc/projects/AcerOne_Ubuntu/jmb38x_d3e.sh jmb38x_d3e.sh] script from the original Linpus install and install it in <tt>/usr/local/sbin</tt>. Remember to give executable rights.<br />
Note that this script uses <tt>bc</tt> which you may need to install:<br />
pacman -S bc<br />
Then add the following line to <tt>/etc/rc.local</tt>:<br />
/usr/local/sbin/jmb38x_d3e.sh &>/var/log/jmb38x_d3e.log &<br />
You may skip the log output if do not want this. You do not need the <tt>pciehp</tt> module in <tt>/etc/rc.conf</tt> if you use this script.<br />
<br />
==Additional function keys==<br />
For the wifi kill switch add these keycodes in /etc/rc.local:<br />
<br />
/usr/bin/setkeycodes e055 159<br />
/usr/bin/setkeycodes e056 158<br />
<br />
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.<br />
<br />
For the Fn-Keys add these additionally:<br />
<br />
/usr/bin/setkeycodes e025 130<br />
/usr/bin/setkeycodes e026 131<br />
/usr/bin/setkeycodes e027 132<br />
/usr/bin/setkeycodes e029 122<br />
/usr/bin/setkeycodes e071 134<br />
/usr/bin/setkeycodes e072 135<br />
<br />
Now setup an ~/.Xmodmap<br />
<br />
keycode 160 = XF86AudioMute<br />
keycode 174 = XF86AudioLowerVolume<br />
keycode 176 = XF86AudioRaiseVolume<br />
keycode 223 = XF86Standby<br />
keycode 239 = XF86KbdBrightnessDown<br />
keycode 123 = XF86KbdBrightnessUp<br />
keycode 210 = XF86Display<br />
<br />
and add<br />
<br />
xmodmap ~/.Xmodmap<br />
<br />
to your .xinitrc.<br />
<br />
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.<br />
<br />
To use the keys to adjust volume it is recommended to use xbindkeys:<br />
<br />
pacman -S xbindkeys<br />
<br />
Add <br />
<br />
xbindkeys &<br />
<br />
to .xinitrc and use the following as .xbindkeysrc.scm:<br />
<br />
(xbindkey '("m:0x0" "c:160") "amixer sset Master toggle")<br />
(xbindkey '("m:0x0" "c:176") "amixer set Master 2dB+ unmute")<br />
(xbindkey '("m:0x0" "c:174") "amixer set Master 2dB- unmute")<br />
(xbindkey '("XF86Display") "uxterm -e vgadisplay.sh")<br />
(xbindkey '("XF86Standby") "sudo pm-suspend")<br />
<br />
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:<br />
<br />
#! /bin/bash<br />
TEMP=/tmp/answer$$<br />
dialog --menu "Select VGA behavior" 13 50 6 1 off 2 1024x600 3 "Auto (most probably 1024x768)" 2>$TEMP<br />
ret=$?<br />
choice=`cat $TEMP`<br />
case $ret in<br />
1) ;; # Cancel - do nothing<br />
0) # User selection<br />
case $choice in<br />
1) xrandr --output VGA --off;;<br />
2) xrandr --output VGA --mode 1024x600;;<br />
3) xrandr --output VGA --auto;;<br />
esac<br />
;; <br />
*) # Shouldnt happen<br />
echo "Abnormal ret code from dialog: $ret" <br />
;; <br />
esac<br />
<br />
You may also bind an xrandr call directly with the XF86Display key but with the above way you have more options.<br />
<br />
== Suspend on lid, shutdown on power button==<br />
<br />
This is not specific to the Acer Aspire One but is not described in full detail elsewhere. First you have to install acpid:<br />
pacman -S acpid<br />
<br />
Start the acpid daemon now to get things working without reboot:<br />
/etc/rc.d/acpid start<br />
<br />
To start acpid on boot-up: If you start the hal daemon in your rc.conf (you probably do this when using madwifi-hal) nothing has to be done, as hal starts acpid automatically. If you don't use hal, you have to add acpid to the <tt>DEAMONS</tt> array to start it on boot-up.<br />
<br />
Now the events have to be configured. If you want your machine to suspend when closing the lid, add the following to <tt>/etc/acpi/events/lid</tt>:<br />
event=button/lid.*<br />
action=/usr/sbin/pm-suspend<br />
<br />
If you want your machine to shutdown when pressing the power button, add the following to <tt>/etc/acpi/events/power</tt>:<br />
event=button/power.*<br />
action=/sbin/poweroff<br />
<br />
Note that you have to press the power button only shortly. Pressing it too long (few seconds) will cut the power without shutting down.<br />
<br />
==Tuning tips==<br />
<br />
===SD Storage Expansion===<br />
====Labeling Partitions====<br />
<br />
For using both card readers at a time we have to specify which is the one to use as storage expansion and the one to be used a removable storage by setting a label into the filesystem.<br />
<br />
Plug only the desired expansion SD into the left card reader and:<br />
<br />
*EXT2<br />
mkfs.ext2 /dev/mmcblk0p1<br />
*EXT3<br />
mkfs.ext3 /dev/mmcblk0p1<br />
*XFS:<br />
mkfs.xfs /dev/mmcblk0p1<br />
<br />
Now for labeling:<br />
<br />
*EXT2/EXT3:<br />
e2label /dev/mmcblk0p1 "SD_HOME"<br />
*XFS:<br />
xfs_admin -L "SD_HOME" /dev/mmcblk0p1<br />
<br />
====Mount expansion as /home====<br />
<br />
Now that we have a SD card with a defined label we can define a mount option in /etc/fstab as defined in [[Acer_Aspire_One#Mounting_Options|Mounting Options]]. Don't forget to change the folder which it is to be mounted on, it should be /home.<br />
<br />
<br />
If you already have something in your /home folder we need to save a backup in order to upon mounting the SD expansion we have the same files as before so we can try this:<br />
<br />
tar -cfg /home.tar /home<br />
<br />
Now we can mount the device and put the backup there. Remember to put the line in fstab first and had made a backup!<br />
<br />
rm -rf /home/*<br />
mount /home<br />
tar -xvf /home.tar -C /home/<br />
rm /home.tar<br />
<br />
=== Regulating the CPU fan ===<br />
Letting the BIOS regulate the cpu fan results in a noisy monster of netbook. Instead we can use some scripts to override the default fan settings. This information is taken from the Debian wiki (a link can be found in the weblinks section).<br />
WARNING: According to the Debian wiki there _can_ be issues using these scripts, so you act at your own risk. But it works great with my AAO.<br />
<br />
So let's go:<br />
*First you need to download the files 'acer_ec.pl' and 'acerfand' from [http://home.strangenoises.org/~rachel/aspireone/acerfand/] like so:<br />
<br />
wget http://home.strangenoises.org/~rachel/aspireone/acerfand/acer_ec.pl<br />
wget http://home.strangenoises.org/~rachel/aspireone/acerfand/acerfand<br />
<br />
*Make the scripts executable<br />
<br />
chmod +x acer*<br />
<br />
*Now move the files to /usr/local/bin with:<br />
<br />
mv acer* /usr/local/bin/<br />
<br />
*Finally, set the script to run at boot through rc.local:<br />
<br />
echo "/usr/local/bin/acerfand" >> /etc/rc.local<br />
<br />
*You can get effects immediately by running the script as root:<br />
<br />
/usr/local/bin/acerfand<br />
<br />
With your next boot you will have a really quiet netbook! It's possible to adjust the temperature at which the fan will start spinning (usually 70°C) by editing the values in /etc/acerfand.conf<br />
<br />
=== A110L specific tweaks ===<br />
<br />
These tweaks are for only needed for the A110L, as they reduce write access to the disk.<br />
* Use the noop IO scheduler (<tt>elevator=noop</tt> to <tt>/boot/grub/menu.lst</tt>'s kernel line).<br />
* locate pacman pkg cache in /etc/pacman.conf to your sd card ( /home/where_ever_you_want_it) or alternatively mount pkg cache as tmpfs in <tt>/etc/fstab</tt>:<br />
none /var/cache/pacman/pkg tmpfs defaults,size=300MB 0 0<br />
* To increase the commit interval use:<br />
echo "1500" > /proc/sys/vm/dirty_writeback_centisecs<br />
<br />
==== Firefox ====<br />
<br />
* Firefox 3.x uses a sqlite db that creates many write accesses, so this can reduce it:<br />
*# In Firefox go to about_config, right click, add new string „browser.cache.disk.parent_directory“ with value "/tmp/firefox". Also, it is possible to set browser.cache.disk.enable to false to enable disk-caching completely.<br />
*# In Firefox change options/security/ and disable phishing - take care!<br />
<br />
== Customized Kernel ==<br />
It's common to use customized kernels in these machines to avoid the extra load of modules Arch's stock kernel brings. These are ok for the wide general hardware but in this case we have a very specific set of hardware so that we can build a predefined kernel hardware support.<br />
<br />
There is a A110L specific kernel package [http://aur.archlinux.org/packages.php?ID=19580 kernel26-one] on AUR with all necessary modules compiled in kernel. Refer to the [http://bbs.archlinux.org/viewtopic.php?id=51796 Forum] for help on this. There may also be binaries of the latest version on the Forum but since these are user submitted packages you should *always* pick the sources and PKGBUILD, inspect them and build them yourself. <br />
<br />
The config for this kernel is derived from the original Linpus Kernel config. The main differences from stock arch kernel:<br />
* The kernel differs from the stock arch kernel so it can only load Aspire One specific hardware and shouldn't be used in any other hardware;<br />
* Faster boot time;<br />
* Reduced package size (although the hardware supported by this kernel will be limited to what it has compiled);<br />
* Tweaks for better performance on Atom processors;<br />
* Some tweaks/workarounds to get hardware work flawlessly (MMC/SD cards for example);<br />
<br />
<br />
<br />
==Weblinks==<br />
* [http://aspireoneuser.com AspireOneUser.com]<br />
* [http://bbs.archlinux.org/viewtopic.php?id=51796 Arch Forum]<br />
* [https://help.ubuntu.com/community/AspireOne Install Ubuntu Hardy Heron (8.04.1) on the Acer Aspire One]<br />
* [http://wiki.debian.org/DebianAcerOne Installing Debian on the Aspire One]<br />
* [http://gentoo-wiki.com/HARDWARE_Acer_Aspire_One_A110L Gentoo on the Aspire One]<br />
* [http://www.aspireoneuser.com/forum/viewforum.php?f=5&sid=29c7eef18d2d6477d7f9db91195fb31a AspireOneUser Forum]<br />
* [http://macles.blogspot.com Macles Blog]<br />
* [http://wiki.archlinux.org/index.php/Installing_Arch_Linux_on_the_Asus_EEE_PC Asus EEE PC Wiki article]<br />
* [http://www.thev.net/cgi-bin/awki.cgi/_Acer_Aspire_One_?stamp=1222950371 Slackware, AA1]<br />
<br />
==Example configurations==<br />
* /etc/fstab<br />
# <br />
# /etc/fstab: static file system information<br />
#<br />
# <file system> <dir> <type> <options> <dump> <pass><br />
none /dev/pts devpts defaults 0 0<br />
none /dev/shm tmpfs defaults 0 0<br />
UUID=510b26a4-d407-4707-8ed9-d3b1d0632024 /boot ext2 noatime 0 1<br />
UUID=61fa45ba-14cb-42c8-92ea-770ed5faa221 / ext3 defaults,noatime,errors=remount-ro,commit=15 01<br />
/dev/mmcblk0p1 /home xfs defaults,noatime 0 1<br />
#LABEL=HD-Home<br />
#UUID=FFFF-FFFF /media/right vfat users,rw,uid=1000,gid=100,fmask=0133,dmask=0002 0 0<br />
UUID=7ee58355-644f-46fb-a557-202d2b968161 swap swap defaults 0 0<br />
none /var/log tmpfs defaults,size=10M 0 0<br />
none /tmp tmpfs defaults,size=100M 0 0<br />
none /var/tmp tmpfs defaults,size=20M 0 0<br />
<br />
* /etc/rc.local<br />
#!/bin/bash<br />
#<br />
# /etc/rc.local: Local multi-user startup script.<br />
#<br />
# Change CPU governors and writeback-time (as suggested by powertop)<br />
echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor<br />
echo ondemand > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor<br />
echo 1500 > /proc/sys/vm/dirty_writeback_centisecs<br />
# Make the right SD-slot visible, as suggested by the Debian wiki<br />
setpci -d 197b:2381 AE=47<br />
# Set up the wifi-key<br />
/usr/bin/setkeycodes e055 159<br />
/usr/bin/setkeycodes e056 158<br />
# Set up the function keys<br />
/usr/bin/setkeycodes e025 130<br />
/usr/bin/setkeycodes e026 131<br />
/usr/bin/setkeycodes e027 132<br />
/usr/bin/setkeycodes e029 122<br />
/usr/bin/setkeycodes e071 134<br />
/usr/bin/setkeycodes e072 135<br />
<br />
* fdisk -l<br />
Disk /dev/sda: 8069 MB, 8069677056 bytes<br />
255 heads, 63 sectors/track, 981 cylinders<br />
Units = cylinders of 16065 * 512 = 8225280 bytes<br />
Disk identifier: 0xb7d8b185<br />
Device Boot Start End Blocks Id System<br />
/dev/sda1 1 32 257008+ 83 Linux<br />
/dev/sda2 33 908 7036470 83 Linux<br />
/dev/sda3 909 981 586372+ 82 Linux swap / Solaris<br />
<br />
* /etc/X11/xorg.conf<br />
This is for Xorg >= 7.4 and synaptics >= 0.99. Note that autodetection of input devices is disabled here by the <tt>AutoAddDevices</tt> option.<br />
<br />
Section "ServerLayout"<br />
Identifier "Default Layout"<br />
Screen 0 "Screen0" 0 0<br />
InputDevice "Synaptics Mouse" "AlwaysCore"<br />
InputDevice "Keyboard0" "CoreKeyboard"<br />
InputDevice "USB Mouse" "CorePointer"<br />
EndSection<br />
<br />
Section "ServerFlags"<br />
Option "AllowMouseOpenFail" "true"<br />
Option "AutoAddDevices" "False"<br />
EndSection<br />
<br />
Section "Files"<br />
ModulePath "/usr/lib/xorg/modules"<br />
FontPath "/usr/share/fonts/misc:unscaled"<br />
FontPath "/usr/share/fonts/misc"<br />
FontPath "/usr/share/fonts/75dpi:unscaled"<br />
FontPath "/usr/share/fonts/75dpi"<br />
FontPath "/usr/share/fonts/100dpi:unscaled"<br />
FontPath "/usr/share/fonts/100dpi"<br />
FontPath "/usr/share/fonts/PEX"<br />
# Additional fonts: Locale, Gimp, TTF...<br />
FontPath "/usr/share/fonts/cyrillic"<br />
# FontPath "/usr/share/lib/X11/fonts/latin2/75dpi"<br />
# FontPath "/usr/share/lib/X11/fonts/latin2/100dpi"<br />
# True type and type1 fonts are also handled via xftlib, see /etc/X11/XftConfig!<br />
FontPath "/usr/share/fonts/Type1"<br />
FontPath "/usr/share/fonts/ttf/western"<br />
FontPath "/usr/share/fonts/ttf/decoratives"<br />
FontPath "/usr/share/fonts/truetype"<br />
FontPath "/usr/share/fonts/truetype/openoffice"<br />
FontPath "/usr/share/fonts/truetype/ttf-bitstream-vera"<br />
FontPath "/usr/share/fonts/latex-ttf-fonts"<br />
FontPath "/usr/share/fonts/defoma/CID"<br />
FontPath "/usr/share/fonts/defoma/TrueType"<br />
FontPath "/usr/share/fonts/artwiz-fonts"<br />
FontPath "/usr/share/fonts/local"<br />
EndSection<br />
<br />
Section "InputDevice"<br />
Identifier "Keyboard0"<br />
Driver "keyboard"<br />
Option "CoreKeyboard"<br />
Option "XkbRules" "xorg"<br />
Option "XkbModel" "pc105"<br />
Option "XkbLayout" "de"<br />
Option "XkbVariant" "nodeadkeys"<br />
EndSection<br />
<br />
Section "InputDevice"<br />
Identifier "Synaptics Mouse"<br />
Driver "synaptics"<br />
Option "Device" "/dev/psaux"<br />
Option "Protocol" "auto-dev"<br />
Option "LeftEdge" "1700"<br />
Option "RightEdge" "5300"<br />
Option "TopEdge" "1700"<br />
Option "BottomEdge" "4200"<br />
Option "FingerLow" "25"<br />
Option "FingerHigh" "30"<br />
Option "MaxTapTime" "180"<br />
Option "MaxTapMove" "220"<br />
Option "VertScrollDelta" "100"<br />
Option "MinSpeed" "0.09"<br />
Option "MaxSpeed" "0.18"<br />
Option "AccelFactor" "0.0015"<br />
Option "SHMConfig" "on"<br />
# new in synaptics 0.99<br />
Option "ClickFinger1" "1"<br />
Option "ClickFinger2" "0"<br />
Option "ClickFinger3" "0"<br />
Option "HorizEdgeScroll" "1"<br />
Option "VertEdgeScroll" "1"<br />
Option "HorizTwoFingerScroll" "0"<br />
Option "VertTwoFingerScroll" "0"<br />
Option "HorizScrollDelta" "100"<br />
Option "PressureMotionMinZ" "10"<br />
Option "FingerPress" "256"<br />
Option "PalmDetect" "0"<br />
Option "PalmMinWidth" "10"<br />
Option "PalmMinZ" "200"<br />
Option "MaxTapMove" "220"<br />
Option "MaxTapTime" "180"<br />
Option "MaxDoubleTapTime" "200"<br />
Option "TapButton1" "1"<br />
Option "TapButton2" "0"<br />
Option "TapButton3" "0"<br />
Option "RTCornerButton" "2"<br />
Option "RBCornerButton" "3"<br />
Option "LTCornerButton" "0"<br />
Option "LBCornerButton" "0"<br />
# Circular scrolling is uber-cool, but it might not be for everyone. Check out "gsynaptics".<br />
#Option "CircularScrolling" "1"<br />
EndSection<br />
<br />
Section "InputDevice"<br />
Identifier "USB Mouse"<br />
Driver "mouse"<br />
Option "Device" "/dev/input/mice"<br />
Option "SendCoreEvents" "true"<br />
Option "Protocol" "IMPS/2"<br />
Option "ZAxisMapping" "4 5"<br />
Option "Buttons" "5"<br />
EndSection<br />
<br />
Section "Monitor"<br />
Identifier "Monitor0"<br />
Modeline "1024x600" 48.96 1024 1064 1168 1312 600 601 604 622 -HSync +VSync<br />
DisplaySize 346 203 # 75 DPI @ 1024x600<br />
EndSection<br />
<br />
Section "Device"<br />
Identifier "Videocard0"<br />
Driver "intel"<br />
Option "Clone" "true"<br />
Option "MonitorLayout" "LVDS,VGA"<br />
BusID "PCI:0:2:0"<br />
Option "MigrationHeuristic" "greedy"<br />
Option "AccelMethod" "EXA"<br />
EndSection<br />
<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "Videocard0"<br />
Monitor "Monitor0"<br />
DefaultDepth 24<br />
SubSection "Display"<br />
Viewport 0 0<br />
Depth 24<br />
Modes "1024x600" "800x600" "640x480"<br />
Virtual 1920 1800<br />
EndSubSection<br />
EndSection<br />
<br />
Section "DRI"<br />
Mode 0666<br />
EndSection<br />
<br />
* Original Linpus Xorg.conf<br />
# Xorg configuration created by system-config-display<br />
<br />
Section "ServerFlags"<br />
Option "DontZap" "yes"<br />
Option "DontVTSwitch" "yes"<br />
EndSection<br />
<br />
Section "ServerLayout"<br />
Identifier "Default Layout"<br />
Screen 0 "Screen0" 0 0<br />
InputDevice "Mouse0" "CorePointer"<br />
InputDevice "Synaptics Mouse" "AlwaysCore"<br />
InputDevice "Keyboard0" "CoreKeyboard"<br />
EndSection<br />
<br />
Section "InputDevice"<br />
Identifier "Keyboard0"<br />
Driver "kbd"<br />
Option "XkbModel" "pc105"<br />
Option "XkbLayout" "gb,us"<br />
Option "XkbVariant" "euro"<br />
Option "XkbOptions" "grp:alt_shift_toggle"<br />
EndSection<br />
<br />
Section "InputDevice"<br />
Identifier "Synaptics Mouse"<br />
Driver "synaptics"<br />
Option "Device" "/dev/psaux"<br />
Option "Protocol" "auto-dev"<br />
Option "LeftEdge" "1700"<br />
Option "RightEdge" "5300"<br />
Option "TopEdge" "1700"<br />
Option "BottomEdge" "4200"<br />
Option "FingerLow" "25"<br />
Option "FingerHigh" "30"<br />
Option "MaxTapTime" "180"<br />
Option "MaxTapMove" "220"<br />
Option "VertScrollDelta" "100"<br />
Option "MinSpeed" "0.09"<br />
Option "MaxSpeed" "0.18"<br />
Option "AccelFactor" "0.0015"<br />
Option "SHMConfig" "on"<br />
EndSection<br />
<br />
Section "InputDevice"<br />
Identifier "Mouse0"<br />
Driver "mouse"<br />
Option "Protocol" "IMPS/2"<br />
Option "Device" "/dev/input/mice"<br />
Option "ZAxisMapping" "4 5"<br />
Option "Emulate3Buttons" "no"<br />
EndSection<br />
<br />
Section "Monitor"<br />
Identifier "Monitor0"<br />
Modeline "1024x600" 50.40 1024 1048 1184 1344 600 600 619 625<br />
# Option "Above" "Monitor1"<br />
EndSection<br />
<br />
Section "Device"<br />
Identifier "Videocard0"<br />
Driver "intel"<br />
# Option "monitor-LVDS" "Monitor0"<br />
# Option "monitor-VGA" "Monitor1"<br />
Option "Clone" "true"<br />
Option "MonitorLayout" "LVDS,VGA"<br />
vBusID "PCI:0:2:0"<br />
# Screen 0<br />
EndSection<br />
<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "Videocard0"<br />
Monitor "Monitor0"<br />
DefaultDepth 24<br />
SubSection "Display"<br />
Viewport 0 0<br />
Depth 24<br />
Modes "1024x600" "800x600" "640x480"<br />
Virtual 1024 600<br />
EndSubSection<br />
EndSection<br />
<br />
* Lines from rc.conf (kernel >=2.6.27):<br />
MODULES=(r8169 acpi_cpufreq ath5k !wlan !ath_hal !ath_pci snd-mixer-oss snd-pcm-oss snd-hwdep snd-page-alloc snd-pcm snd-timer snd snd-hda-intel soundcore !pcspkr !uvcvideo !videodev !v4l1_compat !video !memstick pciehp acer-wmi)<br />
NETWORKS=(wpa.example)<br />
DAEMONS=(@acpid @laptop-mode cpufreq syslog-ng !netfs !crond dbus @hal @network @net-profiles gdm)<br />
<br />
==Hardware==<br />
<br />
Aspire One<br />
common hardware<br />
* Intel Atom N270 1.6 GHz cpu, smp capable(hyperthreading like PIV), up to SSE3 extensions, no EM64T!<br />
* Intel 945GME chipset<br />
* Intel 950 GMA onboard graphics adapter<br />
* 8,9 inch Acer Crystal Brite 1024×600 display<br />
* Realtek High Definition Audio ALC260<br />
* Battery: 11.V 41,2Wh/2200mAh or 45Wh/2400mAh Lithium-Ionen-Akku / 3 cell, with a 6 cell model planned<br />
* sd(hc) Card Reader left side: RICOH R5C8xx<br />
* Multi Card Reader right side Seite: JMicron JMB385 Flash Media Controller<br />
* Webcam: Acer Crystal Eye Webcam (Suyin Optronics)<br />
* Wlan: Atheros AR5007EG (Chipset 2425)<br />
* LAN: Realtek RTL8102E<br />
* Touchpad: Synaptics<br />
* Weight: 960 gr.<br />
* Size: 24,9 x 17 x 2,9 cm<br />
* One memory expansion slot ( So-DIMM DDRII 400/533/667MHz up to 1GB) under the keyboard hard to access see [http://www.aspireoneuser.com/forum/viewtopic.php?f=4&t=17 memory upgrade]; max. 1,5GB<br />
<br />
version A110L<br />
* One 512MB memory stick onboard soldered<br />
* 8GB solid state disc <br />
<br />
version A150L<br />
* One 1024MB memory stick onboard soldered<br />
* 120gb 1.8"(?) hdd<br />
<br />
===lspci===<br />
00:00.0 Host bridge: Intel Corporation Mobile 945GME Express Memory Controller Hub (rev 03)<br />
00:02.0 VGA compatible controller: Intel Corporation Mobile 945GME Express Integrated Graphics Controller (rev 03)<br />
00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller (rev 03)<br />
00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02)<br />
00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 02)<br />
00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 (rev 02)<br />
00:1c.2 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 3 (rev 02)<br />
00:1c.3 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 4 (rev 02)<br />
00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #1 (rev 02)<br />
00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #2 (rev 02)<br />
00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #3 (rev 02)<br />
00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #4 (rev 02)<br />
00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 02)<br />
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2)<br />
00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02)<br />
00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) SATA IDE Controller (rev 02)<br />
00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 02)<br />
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E PCI Express Fast Ethernet controller (rev 02)<br />
03:00.0 Ethernet controller: Atheros Communications, Inc. AR5006EG 802.11 b/g Wireless PCI Express Adapter (rev 01)<br />
<br />
==Games==<br />
A list of games working on your One and configuration tips for those can be found under [[Acer Aspire One Games List]].</div>Ioxerhttps://wiki.archlinux.org/index.php?title=Intel_GMA_950&diff=55907Intel GMA 9502008-12-20T22:59:30Z<p>Ioxer: Added note about system tray icon corruption in KDE 4.1</p>
<hr />
<div>{{merge|Intel Graphics|Talk:Intel GMA 950}}<br />
<br />
[[Category:Graphics (English)]]<br />
[[Category:X Server (English)]]<br />
[[Category:HOWTOs (English)]]<br />
<br />
=Introduction=<br />
The scope of this wiki is to cover in detail the Intel Graphics Media Accelerator 950 graphics processor, including driver installation and troubleshooting.<br />
<br />
==Driver Installation==<br />
<br />
===Open Source Intel Driver===<br />
<br />
Install the driver:<br />
# pacman -S xf86-video-intel<br />
<br />
Use '''''gtf''''' to generate the Xorg ''Modeline'' values and then edit ''/etc/X11/xorg.conf'' and add these values to the ''Monitor'' section, for example:<br />
<br />
Section "Monitor"<br />
Identifier "Monitor0"<br />
VendorName "unknown"<br />
'''Modeline "800x600" 40.12 800 848 968 1056 600 601 605 628 #60Hz'''<br />
EndSection<br />
<br />
Lastly, add the following to the "Device" section, replacing the existing ''Driver'' value if present:<br />
<br />
VideoRam 229376<br />
Option "CacheLines" "1980"<br />
Driver "intel"<br />
<br />
===Tips===<br />
<br />
Few additions that will speed up your card performance big time:<br />
<br />
Add this to the driver's section in xorg.conf:<br />
Option "MigrationHeuristic" "greedy"<br />
<br />
And add this to /etc/profile:<br />
export INTEL_BATCH=1<br />
<br />
'''Note:''' Setting the MigrationHeuristic option to greedy will cause system tray icon corruption in KDE 4.1, as noted here <br />
http://bugs.kde.org/show_bug.cgi?id=170283 and here http://bugs.freedesktop.org/show_bug.cgi?id=19059</div>Ioxer