||<>|| = Driver overview = This page details support for the Intel GMA500 "Poulsbo" video hardware with Ubuntu 12.04 and higher. Unfortunately the support for this hardware is extremely limited on Linux. There are several drivers, but all lack certain basic features, such as future and current maintenance or support for suspend and hardware acceleration. Currently, the best supported driver for Ubuntu is '''gma500_gfx'''. For obsolete and unsupported drivers see [[https://wiki.ubuntu.com/PoulsboObsoleteDrivers|GMA500 Obsolete Drivers]] = GMA500_GFX driver = With kernel 2.6.39, a new '''psb_gfx''' module appeared in the kernel source developed by [[http://en.wikipedia.org/wiki/Alan_Cox|Alan Cox]] to support Poulsbo hardware. As of kernel 3.3.rc1 the driver has left staging and been renamed '''gma500_gfx''' and is thus the default, supported driver for Ubuntu 12.04 and higher. '''''Starting with kernel 3.3.4 , the gma500_gfx driver works without adding any boot options.''''' The gma500_gfx does not (yet) support 3d graphics and it is unclear if it will in the future. == Live (Desktop) CD 12.04 == The default Ubuntu 12.04 kernel works, but requires a custom boot option. Without that option, you will either get a black screen or distortions, such as top half of the screen only. 1. Switch to a console - Ctrl-Alt-F1 2. Restart X with 'sudo service lightdm restart' That should bring you back to a functional graphical desktop, so that you can proceed testing or installing. == Post installation == === Ubuntu 12.10 + === No workarounds should be required, however, upgrading from 12.04 is not recommended because of general UI sluggishness. === Ubuntu 12.04 === With the default settings, Ubuntu 12.04 boots to either a black screen or or top half screen. There are several potential solutions: '''console=tty1''', '''disable splash''', or '''915 Resolution''' ==== Option 1 - console=tty1 ==== Perhaps the easiest method is to use "console=tty1" as a boot option. {{{ gksudo gedit /etc/default/grub }}} Find the following line: '''GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" ''' Add console=tty1 in between the quotes, the end result looking as follows GRUB_CMDLINE_LINUX_DEFAULT="quiet splash console=tty1" save and exit, then update grub with sudo update-grub ==== Option 2 - Disable splash ==== Some people find they need to disable the splash. Essentially the same as above, just remove '''splash''' from the GRUB_CMDLINE_DEFAULT options. ==== Option 3 - 915 Resolution ==== First, you need to know what your desired resolution is. Common netbook resolutions are 1366x768, 1024x600 and 1024x576. The examples below will feature 1366x768, but be sure to change it to the actual resolution of your screen. Using any editor, create a file '''/etc/grub.d/01_915resolution''' , add in lines {{{ echo insmod 915resolution echo 915resolution 58 1366 768 32 }}} Make the file executable {{{ sudo chmod a+x /etc/grub.d/01_915resolution }}} Next, edit '''/etc/default/grub''', assign value 1366x768x32 to variables GRUB_GFXMODE and GRUB_GFXPAYLOAD_LINUX: {{{ GRUB_GFXPAYLOAD_LINUX=1366x768x32 }}} Then update grub. {{{ sudo update-grub }}} '''''NOTE: some gma500 users may have to switch to a different tty and then back to tty7 even after performing the above modification to have a correct desktop. To do this press Ctrl-Alt-F6 then press Ctrl-Alt-F7.''''' ==== Option 4 - Update kernel ==== The final option is to use the 12.10 kernel in 12.04. A higher kernel is available in backports. Alternatively, you can try the mainline kernel: http://packages.qa.dev.stgraber.org/qatracker/milestones/223/builds/16265/downloads The problem with the mainline kernel is that it does not have all the Ubuntu patches (such as Apparmor) and is not supported (it is provided "as is" for testing only). = Video Playback = Due to the lack of Hardware accelerated video playback in the gma500_gtx kernel driver, at current video playback can be very slow, it can freeze, jump and the audio and video can desynchronise, However it is possible to avoid this by using mplayer with multithreading : Follow these instructions : 1. Install mplayer: {{{sudo apt-get install mplayer}}} 2. cd into the directory containing your video 3. run {{{mplayer -lavdopts threads=4 -framedrop yourvideofile.avi}}} This will drop frames when needed, and use 4 threads (You should change this depending on your Atom Processor) meaning playing HD video is possible. = Problem solving = Most of the problems and workarounds listed are BIOS and Vendor specific. If your hardware is not listed, you may need to experiment. == Fix suspend == If suspend does not work for you, there are various quirk options you can try. See the manpage for pm-suspend for a list of them all. One that has been reported to help is quirk-vbemode-restore, which saves and restores the current VESA mode. To test it, open a terminal and use the following commands sudo pm-suspend --quirk-vbemode-restore That should suspend your system. If you are able to resume, you'll want to configure Ubuntu to use this option every time you suspend. To do this open a terminal and use the following commands: {{{ gksudo gedit /etc/pm/config.d/gma500 }}} Add in the following code and save the file: {{{ ADD_PARAMETERS='--quirk-vbemode-restore' }}} If it isn't working yet, you can try setting your resolution from 1366x768 to 1360x768 before suspend, then back to 1366x768 after resume. You can automate it in a script : in a terminal, type : {{{ gksudo gedit /etc/pm/sleep.d/01_survive_modeswitch }}} Copy/paste the following : {{{ #!/bin/bash case "$1" in hibernate | suspend) { xrandr --output LVDS-0 --mode 1360x768 ; } ;; thaw | resume) { xrandr --output LVDS-0 --mode 1366x768 ; } ;; esac }}} Save and close. Then, in the terminal : {{{ sudo chmod a+x /etc/pm/sleep.d/01_survive_modeswitch }}} Suspend and resume ; it should resume well. == Memory allocation optimization == You can often improve performance by limiting the amount of RAM used by the system so that there will be more available for the videocard: {{{ sudo gedit /etc/default/grub }}} Add the following parameters to grub configuation if you have for example 1GB RAM: {{{ GRUB_CMDLINE_LINUX="mem=896mb" }}} or if you have 2GB RAM: {{{ GRUB_CMDLINE_LINUX="mem=1920mb" }}} Update GRUB: {{{ sudo update-grub }}} == Brightness hotkeys == Problems with brightness keys are most often vendor and bios dependent. === Acer === {{{ sudo gedit /etc/default/grub }}} Add the following parameters to grub configuration: {{{ GRUB_CMDLINE_LINUX="acpi_osi=Linux acpi_backlight=vendor" }}} For the Acer AO751h, try blacklisting acer_wmi. GRUB_CMDLINE_LINUX_DEFAULT="acpi_backlight=vendor acpi_osi=Linux acer_wmi.blacklist=yes"" Update Grub: {{{ sudo update-grub }}} After adding the parameters to grub, functional keys such as wireless and volume also work. == Have xrandr (multi-screen, color management) work correctly == By default (at least on 12.04, didn't test 12.10), Xorg uses the fbdev driver. Here is what to do to use modesetting : install xserver-xorg-video-modesetting from this ppa : https://launchpad.net/~xorg-edgers/+archive/ppa, then : {{{ gksudo gedit /usr/share/X11/xorg.conf.d/00-modesetting.conf }}} Put the following : {{{ Section "Device" Identifier "gma500_gfx" Driver "modesetting" Option "SWCursor" "ON" EndSection }}} Save and close gedit, then disconnect/reconnect (or reboot your computer). = Ubuntu 11.10 = The default 3.0.x kernel does not work. The linux-libre 3.3.x kernel is working. You can obtain it from [[http://jxself.org/linux-libre/|This repository]] After adding the repository, {{{sudo apt-get update && sudo apt-get install linux-image-3.3.2-gnu-686 }}} = References = * [[http://blog.bodhizazen.net/linux/ubuntu-12-04-gma500-poulsbo-boot-options/|bodhi.zazen's blog : gma500 boot options]] * [[http://ubuntuforums.org/showthread.php?t=1984236|GMA500 (Poulsbo) gma500_gfx support thread on ubuntuforums]] ---- CategoryHardware