for friends of the acer aspire one
August 16, 2008
Dithering on Aspire One Linux
The panel inside the A110 and the A150 is the AUO B089AW01. It's only capable of displaying 6bit per color instead of 8bit. Meaning that it can only display 262144 different colors instead of 16777216. This in itself is not a problem, most panels in notebooks and netbooks are limited that way. The reduced color palette results in banding, most noticeable in gradients. This effect can be greatly reduced by enabling dithering. However the Linux driver on the AA1 doesn't support it.

Looking through the source code of the driver I noticed two patches, named reduce-X-time.patch and driver-disable-flicker.patch, being applied. And in the first patch a small part has been disabled, probably by accident, where the driver asks the panel about dithering support. As a result it assumes that dithering is not supported.

There are two solutions to this. The first is to simply install the official Fedora driver. You will lose whatever customization has been made to the driver. The other solution is to recompile the original driver with a modified patch that doesn't disable dithering.

In order to do so open a terminal, download the source RPM and install it. You may get a few warnings which can be ignored.

wget ftp://guest@csdftp.acer.com.tw/Aspire_One_Linpus_Linux\
/Aspire_One_Srpms/xorg-x11-drv-i810-2.1.1-8.fc8.src.rpm

sudo rpm -i xorg-x11-drv-i810-2.1.1-8.fc8.src.rpm


The code between lines 56-58 and 122-129 needs to be re-enabled. The sed command below automates the process.

sudo sed '56,58s/^+[/]*/+/;122,129s/^+[/]*/+/' -i /usr/src/redhat/SOURCES/reduce-X-time.patch

Install a few packages required to compile the driver.

sudo yum install rpmdevtools yum-utils
sudo yum-builddep xorg-x11-drv-i810-2.1.1-8.fc8.src.rpm


Compile the driver and create the RPM.

sudo rpmbuild --target i586 --clean -bb /usr/src/redhat/SPECS/xorg-x11-drv-i810.spec

If a later image version is pre-installed on your AA1 the previous command may quit with a install: command not found message. In that case just update the package which provides install and run the previous command again.

sudo yum update coreutils

All that's left to do now is to install the just built RPM and enjoy a banding free display after a reboot.

sudo rpm --force -U /usr/src/redhat/RPMS/i586/xorg-x11-drv-i810-2.1.1-8.fc8.i586.rpm

The result will still not be perfect even with dithering enabled, because the physical limitation cannot be overcome, but it will be far less noticeable.
20



sto88
Great job!!! I test this driver and it works very well! Thanks for the guide!

(sorry for the english...but I'm italian :D )
Sep 7, 2008 12:51:00 PM



Emilio (Spain)
Done and runs quite well. Thanks a lot
Just a question (I´m almost new in Linux world and I don´t want to frozen the system)...

Can we erase some files after the installation in order to free disk capacity?

Thanks in advance
Sep 30, 2008 12:45:00 PM



Yes you can erase all files. Most files are already removed right after the build process via the --clean switch, but you can also remove all developer packages via the command below.

sudo yum remove \*devel

Sep 30, 2008 1:19:00 PM



Anonymous
Hey Macles,

after running,

sudo rpmbuild --target i586 --clean -bb /usr/src/redhat/SPECS/xorg-x11-drv-i810.spec

I get the following error after in the terminal, text in brackets is my best translation from Danish to English.

+ mkdir -p /var/tmp/xorg-x11-drv-i810-2.1.1-8.fc8-root-root/usr/share/hwdata/videoaliases
+ install -m 0644 /usr/src/redhat/SOURCES/i810.xinf /var/tmp/xorg-x11-drv-i810-2.1.1-8.fc8-root-root/usr/share/hwdata/videoaliases/
/var/tmp/rpm-tmp.87844: line 33: install: command not found
fejl(error): Fejl-afslutningsstatus fra(error-ending status from) /var/tmp/rpm-tmp.87844 (%install)


RPM opbygningsfejl (RPM build up error):
Fejl-afslutningsstatus fra(error-ending status from) /var/tmp/rpm-tmp.87844 (%install)

Hope you can help, and tnx for all your fine posts. They really help us noobs
Oct 16, 2008 12:53:00 PM



Anonymous
same error :-|

thank you anyhow
Oct 16, 2008 7:40:00 PM



Anonymous
here the console

+ mkdir -p /var/tmp/xorg-x11-drv-i810-2.1.1-8.fc8-root-root/usr/share/hwdata/videoaliases
+ install -m 0644 /usr/src/redhat/SOURCES/i810.xinf /var/tmp/xorg-x11-drv-i810-2.1.1-8.fc8-root-root/usr/share/hwdata/videoaliases/
/var/tmp/rpm-tmp.10594: line 33: install: command not found
error: Bad exit status from /var/tmp/rpm-tmp.10594 (%install)


RPM build errors:
Bad exit status from /var/tmp/rpm-tmp.10594 (%install)
Oct 16, 2008 7:42:00 PM



May be a problem with rpmdevtools, updating the repositories as mentioned here and reinstalling it might help.

Oct 16, 2008 7:59:00 PM



Anonymous
No sorry I already have the newest updated repositories. Hope some one has figured this one out.
Oct 20, 2008 4:38:00 PM



Anonymous
which install
no install in.......

rpm -e --no-deps coreutils
yum install coreutils

which install
/usr/bin/install
Oct 24, 2008 7:57:00 PM



Anonymous
extremely useful post!
thank you
Nov 22, 2008 8:14:00 PM



Marcles, Thank you for this extremely useful tutorial!

I can't believe how big difference it makes on the One. Heck, a LCD screen I used to own had more banding problems than the One have after this patch and that screen supposedly was able to display 16.7M colors.


As previous posters have experienced problems with a missing command so did I but that was quickly remedied with

sudo rpm -e --nodeps coreutils
sudo yum install coreutils

(previous poster of this solution made a typo in the commands so I'll re-post it for the One's that can't spot the typo wont have any problems in the future) -phun intended :)
Dec 20, 2008 12:50:00 PM



Anonymous
sudo yum-builddep Downloads/xorg-x11-drv-i810-2.1.1-8.fc8.src.rpm

im stuck in this part.
it says: sudo: yum-builddep: command not found

what shoud i do? pardon my ignorance. im not familiar with linux
Dec 26, 2008 8:24:00 AM



Anonymous
Also had this problem myself, has anyone found a soltn?
Feb 16, 2009 1:03:00 PM



Anonymous
So much nicer now. Thankyou!
May 26, 2009 8:16:00 PM



Angela
I get

Error: Missing Dependency: glibc-common = 2.7-2 is needed by package glibc

... it seems I have version 2.9-2 of glibc-common. Is there an easy way around this?
Jun 3, 2009 9:19:00 AM



At the line sudo yum install rpmdevtools yum-utils It does a lot and then I get the output

Error: Missing Dependency: libstdc++ = 4.1.2-33 is needed by package gcc-c++
Error: Missing Dependency: libstdc++ = 4.1.2-33 is needed by package libstdc++-devel

Which is then I think why I cant complete the next line, I get the same error as mentioned above. Any ideas why this happening or how I can fix it, I love this site has transformed my aa1. This is first time something hasnt worked exactly as stated.
Jun 7, 2009 8:46:00 PM



The problem with glibc-common 2.9.2 is caused by Patch 180084; installing this will overwrite a whole bunch of files with FC10 equivalents. Since the base of Linpus is FC8, this is likely to cause wholesale incompatibilities. My advice is to make all updates optional (see instructions elsewhere in Macles) and then do not install this patch.

Unfortunately there does not appear to be an uninstall option for this patch, so I did a fresh system install (using the .iso from trrunde listed elsewhere in Macles) and then re-installed everything that I have changed. I now do a system backup (thanks Macles, again) before installing anything so I can revert in case of problems.
Jun 15, 2009 10:51:00 AM



Anonymous
This was annoying me as I wanted to build powertop 1.11 so I got:
cpp-4.3.2-7.i386.rpm
gcc-4.3.2-7.i386.rpm
glibc-devel-2.9-2.i386.rpm
glibc-headers-2.9-2.i386.rpm
kernel-headers-2.6.23.17-88.fc7.i386.rpm
libgcc-4.3.2-7.i386.rpm
libgomp-4.3.2-7.i386.rpm
mpfr-2.3.2-1.fc10.i386.rpm

from rpmfind all fedora versions mostly fc10 (except kernel-headers fc7). I then did rpm -Uvh *.rpm on the directory with them in and all went well. Fingers crossed.

I then tried to build powertop and it was missing some headers so I did yum install ncurses-devel and Robert is your mothers brother working compiler without uninstalling everything!

I would have prefered getting the Linpus kernel headers but they weren't downloading off there website for some reason?
Jul 10, 2009 5:43:00 PM



mark
Could someone explain clearly step by step to a Linux newbee how to do the above install of gcc, given that I have already installed the patch, and don't want to do a clean install?

I need a working c compiler to install GDE to do DNA sequence alignments.

Cheers,
Jul 23, 2009 12:46:00 PM



mark
There is a solution to the library problem set out in the dependencies thread elsewhere on this site. http://macles.blogspot.com/2008/08/dependency-problems-on-acer-aspire-one.html
Jul 23, 2009 12:50:00 PM