Intel GMA 500
Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary wiki Template:Article summary wiki Template:Article summary wiki Template:Article summary heading Template:Article summary link Template:Article summary end
The Intel Poulsbo Chipset, also known by its official name "GMA 500", is typically found on boards for the Atom Z processor series. It embeds a graphics core that was developed by PowerVR and is licensed by Intel. Its major feature is the hardware decoding capability of FullHD video content in various state-of-the-art codecs, e.g. h.264.
As the graphics hardware was not developed by Intel themselves, regular Intel drivers do not work with this hardware. Furthermore, two different accelerated Linux drivers for this hardware exist; both of which have major problems. Alternatively, there is a generic framebuffer driver solution, but this is unaccelerated.
On this page you find comprehensive information about how to get the best out of your Poulsbo hardware using Arch Linux.
- 1 What to expect
- 2 Installing the IEGD driver
- 3 Installing the Poulsbo driver
- 4 Installing the FBDEV Xorg framebuffer driver
What to expect
If you choose to go with the IEGD driver you will at the end of the day you will be able to run X on your hardware. Furthermore, you will be able to use basic OpenGL capabilities, some may even get GL compositing working. You may use your display at its native resolution and maybe even have decent 2D acceleration. With the IEGD driver, you will not be able to use suspend states anymore. You may play FullHD videos without stuttering, but only some will play correctly, others will show artifacts. But you will not be able to run an up-to-date arch installation because the IEGD driver doesn't work with kernel26 > 2.6.31 and Xorg server > 1.6.
If you choose the Poulsbo driver you will, as of now, be able to run an up-to-date arch installation. But you can't expect the same performance as with the IEGD driver. With the drivers currently in AUR you will only have 2D performance, but it is possible to get 3D also(ubuntu has it working). You will be able to play youtube videos smoothly.
Or if you choose to use framebuffer driver you will be able to get the correct resolution for your screen and an up-to-date arch installation. You will not be able to play any kind of video smoothly. A plus for this option is that you will only use official arch packages.
Installing the IEGD driver
This guide is not complete and will not give you a working X unless you figure out the rest of yourself.
First thing to notice is that, regardless of which driver you use, Intel currently only supports kernel versions up to 2.6.31 and Xorg server versions up to 1.6. You may be able to use newer software without hardware acceleration.
Installing Xorg server 1.6
Please note that Kernel 2.6.31 and Xorg server 1.6 is no longer officially suported by the Arch Linux team.
At this time, the Xorg 1.6 files are available for i686 from the following sites:
Download the following files from one the the repositories listed above. It is recommended to create a separate folder in your home directory to ensure that it is easy to locate the files.
Open a terminal, change to the directory you downloaded the files to, and enter the following commands.
sudo pacman -R xorg-server xf86-input-evdev xf86-input-mouse xf86-input-synaptics xf86-input-keyboard xf86-video-vesa xf86-video-fbdev sudo pacman -U xf86-evdev-2.2.51-i686.pkg.tar.gz xorg-server-188.8.131.521-1-i686.pkg.tar.gz \ xf86-input-keyboard-1.3.2-2-i686.pkg.tar.gz xf86-input-mouse-1.4.0-2-i686.pkg.tar.gz \ xf86-input-synaptics-1.1.3-1-i686.pkg.tar.gz xf86-video-vesa-2.2.0-1-i686.pkg.tar.gz
The second command may be entered as one line, without the backslashes.
An older version of libssl is also needed. This requirement can be fufilled with the openssl-compatibility package from the Arch User Repository. You must have the prerequisites installed to build this.
mkdir openssl-compatibility cd openssl-compatibility wget http://aur.archlinux.org/packages/openssl-compatibility/openssl-compatibility/PKGBUILD makepkg -s sudo pacman -U openssl-compatibility*.pkg.tar.xz
Once this is done, you may reboot the computer. Alternatively, close all instances of Xorg and run
The Xorg 1.6 server should start without issue.
Troubleshooting Xorg 1.6
Driver cannot be found
If it complains that the driver cannot be found, you probably have the FBDEV driver specified in your /etc/X11/xorg.conf file, but didn't install the FBDEV driver as described above . Change the
and everything should be fine.
Installing IEGD-enabled kernel
This process is still under development. Some info may be found here.
Installing IEGD binary drivers
Installing the Poulsbo driver
This is fairly easy. All the packages you need can be built from AUR, use yaourt or whatever you prefer.
yaourt -S xorg-x11-drv-psb
On of this packages dependencies is libdrm-poulsbo, after building this the installation will fail(if you have mesa or libgl installed) because this package conflicts libdrm. What you need to do is installed it manually:
pacman -U /path/to/the/package/libdrm-poulsbo-2.3.0-2-i686.pkg.tar.xz
When you have libdrm-poulsbo successfully installed you will need to restart the installation:
yaourt -S xorg-x11-drv-psb
Now you have the Poulsbo driver installed, but you need to make some changes to /etc/X11/xorg.conf. Change the driver to poulsbo:
Right after this line append this line:
option "shadowFB" "true"
Now you can start X and everything should be working.
Installing the FBDEV Xorg framebuffer driver
Using the FBDEV driver results in somewhat better performance than using the plain VESA driver, i.e. you can get the right resolution. This work with latest xorg and kernel, so no downgrading.
Download v86d and xf86-video-fbdev:
pacman -S v86d xf86-video-fbdev
You will also need to install 915resolution-static from the AUR:
yaourt -S resolution-static
Make the file /etc/modprobe.d/uvesafb.conf and add this:
options uvesafb mode_option=1280x800-32 scroll=ywrap
Make sure you use the right resolution for your setup.
Edit /lib/initcpio/hooks/915resolution and make sure it has the right resoultion for your setup.
Edit /etc/mkinitcpio.conf and add 915resolution and v86d to the "HOOKS", like this:
HOOKS="base udev 915resolution v86d ..."
Make sure you run mkinitcpio:
mkinitcpio -p kernel26
Edit /etc/X11/xorg.conf and change driver to fbdev:
See the Uvesafb article for more information.
Using the FBDEV driver results in somewhat better performance than using the plain VESA driver. It is not, however, currently in the Chakra Project's repositories. Fortunately an Arch user found the package in his backups, and has posted it online at http://drop.io/hh6gtvv. Feel free to download it, but please do not abuse the URL given below (via multiple-threaded download or otherwise) as the traffic limit is currently unknown.
sudo pacman -U xf86-video-fbdev-0.4.1-1-i686.pkg.tar.gz
to install the FBDEV driver.