HardwareSupportComponentsVideoCardsPoulsbo

Differences between revisions 206 and 207
Revision 206 as of 2012-04-25 18:28:54
Size: 14628
Editor: bodhi.zazen
Comment:
Revision 207 as of 2012-04-26 23:41:12
Size: 14900
Editor: bzq-84-109-193-57
Comment:
Deletions are marked like this. Additions are marked like this.
Line 105: Line 105:
'''After installation'''

Add 'console=tty1' to the Grub options.
'''Post installation'''

To prevent the black screen on boot, run

  gksudo gedit /etc/default/grub

find the following line: GRUB_CMDLINE_LINUX=""

and add console=tty1 in between the quotes, the end result looking as follows

  GRUB_CMDLINE_LINUX="console=tty1"

save and exit, then update grub with

  sudo update-grub

Driver overview

This page details support for the Intel GMA500 "Poulsbo" video hardware in various Ubuntu releases. Unfortunately the support for this hardware is extremely limited on Linux. There are several drivers, but all lacking certain basic features, future and current maintenance or support for things like suspend.

The list of drivers including its major properties and below tables with a features matrix:

  • PSB-GFX driver - maintained "upstream" at kernel.org

    • Open-source kernel module, works on any distribution running a 3.2 kernel or higher.
    • Excellent 2D performance, with some minor bugs (see below for work around).
    • Much easier to maintain then any other choice, driver of choice unless you have specific needs.
    • No 3D, Xv, Hardware Accelerated Video and such available
    • Written by Alan Cox at lkml.org.

    • Whether a full set of features will ever be supported is unclear.

  • EMGD driver ("supported", long term viability in question)
    • Closed-source userspace (Xorg driver, libva support, and 3D rendering).
    • Open-source kernel module.
      • Includes the full implementation of Intel's "HAL" for programming the display controller, and performing operations such as memory management and mode setting.
    • Mediocre performance.
    • Supported by Intel Embedded division.
    • Intel does not release up-to-date drivers. This driver is now a Full Ubuntu release cycle behind, testing in 11.10, no ETA for 12.04.

    • EMGD only officially supports a limited set of Linux distributions (Meego).
    • Nobody knows how long Intel will support it; And when support stops, this driver is directly dead.
    • Requires moderate technical knowledge to install and maintain, requires significant changes to the system (downgrading xorg) and patched packages maintained by the Ubuntu “GMA500 Team” team. The Ubuntu GMA500 team does not maintain packages for other distributions.

    • The Ubuntu gma500 team is always looking for help, but is growing smaller as less people continue to run a gma500 or move to other projects. If they can continue to maintain this driver and the various patches remains to be seen.
  • PSB driver (obsolete)
    • Closed-source core
    • Good performance, but no longer supported (original developers - Tungsten Graphics).
  • IEGD driver (obsolete)
    • Closed-source core and glue
    • Mediocre performance
    • No longer supported by Intel Embedded division; Intel recommends to use EMGD driver instead.
  • Other

PSB-GFX driver

Release

Kernel

Xorg

2D accel

3D compiz

Normal Video Playback (Xv)

Hardware Video Acceleration1

Precise (12.04)

3.2.0-x

1.10

Excellent

N/A

Acceptable

N/A

Oneiric (11.10)

linux-libre 3.3.x

1.10

Excellent

N/A

Acceptable

N/A

Oneiric (11.10)

3.0.0-x

1.10

Extremely unstable

Natty (11.04)

Upgraded 2.6.39-rc1

1.10

Excellent

N/A

N/A

N/A

2.6.38-x

1.10

N/A

EMGD driver

Release

Kernel

Xorg

EMGD Version

2D accel

3D compiz

Normal Video Playback (Xv)

Hardware Video Acceleration1

Oneiric (11.10)

3.0.0-x

1.10

1.10

Testing

Testing

Testing

Testing

3.0.0-x

Downgraded 1.9

1.8

Acceptable

Excellent

Excellent

Acceptable

Natty (11.04)

2.6.xx

1.10

N/A

2.6.38-x

Downgraded 1.9

1.8

Acceptable

Excellent

Excellent

Acceptable

Maverick (10.10)

2.6.35-x

1.9

1.6

Acceptable

Excellent

Excellent

Acceptable

Lucid (10.04)

2.6.32-x

Upgraded 1.8

1.6

Acceptable

Excellent

Excellent

N/A

PSB driver

Release

Kernel

Xorg

2D accel

3D compiz

Normal Video Playback (Xv)

Hardware Video Acceleration1

Oneiric (11.10)

3.0.0-x

1.10

N/A

Natty (11.04)

Upgraded 2.6.39-rc1

1.10

N/A

2.6.38-x

1.10

N/A

Downgraded 2.6.35-x

1.10

Excellent

Bad

Acceptable

Excellent

Maverick (10.10)

2.6.35-x

1.9

Excellent

Excellent

Acceptable

Excellent

Lucid (10.04)

2.6.32-x

1.7

Excellent

N/A

Acceptable

Excellent

Karmic (9.10)

2.6.30-x

1.6

Excellent

Excellent

Excellent

Excellent

IEGD driver

Release

Kernel

Xorg

2D accel

3D compiz

Normal Video Playback (Xv)

Hardware Video Acceleration1

Oneiric (11.10)

N/A

Natty (11.04)

N/A

Maverick (10.10)

N/A

Lucid (10.04)

N/A

Karmic (9.10)

2.6.30-x

1.6

Acceptable

Acceptable

Excellent

N/A

Drivers installation

PSB-GFX drivers

This driver is called psb_gfx starting with 3.0 and is also called gma500_gfx in later kernels.

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 This repository

After adding the repository,

sudo apt-get update && sudo apt-get install linux-image-3.3.2-gnu-686 

12.04

A functioning psb_gfx driver is included and works almost "out of the box" with Precise Beta2 version. When booting from USB, you'll either get a black screen, or some pretty horrible distortion.

  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

To prevent the black screen on boot, run

  • gksudo gedit /etc/default/grub

find the following line: GRUB_CMDLINE_LINUX=""

and add console=tty1 in between the quotes, the end result looking as follows

  • GRUB_CMDLINE_LINUX="console=tty1"

save and exit, then update grub with

  • sudo update-grub

Emgd drivers (currently supported)

Drivers are available in the gma500 PPA repository for Natty and Oneiric. The current released version of the driver is EMGD 1.8. The newer version in testing is EMGD 1.10.

EMGD 1.8

Repository page: https://launchpad.net/~gma500/+archive/emgd-1.8
Instructions for Natty and Oneiric only. Open a terminal and type:

sudo add-apt-repository ppa:gma500/emgd-1.8
sudo apt-get update
sudo apt-get install xorg-emgd emgd-dkms
sudo emgd-xorg-conf

reboot for the changes to take effect.

EMGD 1.10 (under testing)

Repository page: https://launchpad.net/~gma500/+archive/emgd110
Instructions for Oneiric only. Open a terminal and type:

sudo add-apt-repository ppa:gma500/emgd110
sudo apt-get update
sudo apt-get install emgd-support
sudo emgd-xorg-conf

reboot for the changes to take effect.

EMGD Known Workarounds

Known workarounds that address problems such as Plymouth (startup screen), Brightness keys, Hibernate/Suspend, and Mplayer can be found on this page:

https://answers.launchpad.net/emgd/+faq/1450

PSB drivers (outdated)

Drivers are available in the gma500 PPA repository for Maverick, Lucid, Karmic, Jaunty and Intrepid. With the note that Jaunty and Intrepid versions are no longer supported and guaranteed to work.

Open a terminal and type:

sudo add-apt-repository ppa:gma500/ppa && sudo apt-get update && sudo apt-get install poulsbo-driver-3d

reboot for the changes to take effect.

(At least on Lucid, poulsbo-driver-3d conflicts with compiz packages. You need to uninstall them first.)

sudo apt-get -y remove compiz*

Note: remember to perform after a version upgrade the commands in the terminal again to update to the gma500 packages matching your Ubuntu version.

Optimized software matching the PSB drivers

The gma500 PPA repository also ships mplayer, gnome-mplayer and vlc (currently vlc has still some issues and does not always work) with enabled vaapi backend. These are only available for Natty, Maverick and Lucid. They can be installed with the package manager of your choice.


Driver Removal

Emgd drivers

If you installed from live ISO, remove all packages installed by the PPA:

sudo apt-get purge emgd-support*

Afterwards, use a package manager like Synaptic (System->Administration->Synaptic Package Manager) or muon to remove the rest of the packages called "emgd*"


Known issues and tweaks

Feedback

When applying any tweaks from below we kindly request you to provide feedback concerning the results from the chosen tweaks on your laptop. Please fill out this form to send your findings to the gma500 team.

Tweaks only for PSB drivers (outdated)

Known tweaks and workarounds for Karmic and Lucid (installed by default for Maverick)

Suspend by moving 99video

sudo mv /usr/lib/pm-utils/sleep.d/99video /usr/lib/pm-utils/99video

Suspend by using uswsusp (alternative)

sudo apt-get purge vbetool && sudo apt-get install uswsusp

and suspend using:

sudo s2ram --force

to make this permanent, run:

sudo gedit /etc/pm/config.d/00sleep_module

and set in the file:

SLEEP_MODULE="uswsusp"

and run:

sudo gedit /etc/pm/config.d/defaults

and add in the file:

S2RAM_OPTS="--force"
QUIRK_NONE="true"

After that, you can run  pm-suspend  instead of  s2ram --force .

But suspending via gnome-power-manager (for example, through the suspend menu) doesn't work.


Brightness hotkeys

sudo gedit /etc/default/grub

add the following parameters to grub configuration:

GRUB_CMDLINE_LINUX="acpi_osi=Linux acpi_backlight=vendor"

next run:

sudo update-grub

After adding the parameters to grub, functional keys such as wireless and volume also work.


Memory allocation optimization

You can often improve peformance 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"

next run:

sudo update-grub


Flash plugin replacement for Firefox

(for all Ubuntu releases):

* install gnome-mplayer and gecko-mediaplayer

* tune gnome-mplayer settings like the following screenshots:

http://lukaszklich.pl/wp-content/uploads/2010/05/vaapi_output.png

http://lukaszklich.pl/wp-content/uploads/2010/05/vaapi_va.png

(This should already be automatically done by the gnome-mplayer package from the gma500 repository)

* install this firefox addons: http://flvideoreplacer-extension.blogspot.com/


Hardy (8.04)

The Poulsbo hardware is not supported in the community version of Ubuntu. However, it is reputed to "just work" on Hardy version shipped by a netbook manufacturer.

For example, the support for GMA 500 hardware by Dell Ubuntu Hardy 8.04 is provided by the following repository

deb http://dell-mini.archive.canonical.com/updates hardy-dell-mini public

Contribution

The Ubuntu community is a great example of free software community in action, and is arguable one of the greatest examples of free software community in the world. To make Ubuntu better, You would like to take a look on new project Intel GMA500 'Poulsbo' and provide any help.

Common problems

X doesn't start (PSB)

Double check that the psb kernel module can be loaded into the running kernel by running sudo modprobe psb.

3D Graphics (OpenGL) does not work after suspend and resume (PSB)

This is a known bug with psb kernel driver. Due to partial close nature of the driver, because Intel has not released an open source driver, the bug fix is currently no available. There are reports2 that a new driver will be available shortly.

Additional Reading

Why GMA 500 hardware doesn't work out of the box? Read "How To Kick Your Friends in the Face: GMA500" by Shawn Powers and the Intel "apology" "Blaming Intel for how the world is" by Henry Kingman

EMGD driver description from Intel: http://www.intel.com/p/en_US/embedded/hwsw/software/emgd

http://arstechnica.com/open-source/news/2009/12/poulsbo-mess-casts-a-shadow-on-intels-moblin-project.ars

Other problems?

If you're still having problems, please mail ubuntu-mobile@lists.ubuntu.com, and do not submit bug reports.


CategoryHardware

  1. Refers to Hardware-Accelerated playback using vaapi, that is, libva library http://en.wikipedia.org/wiki/Intel_GMA#GMA_500_on_Linux (1 2 3 4)

  2. http://www.phoronix.com/scan.php?page=news_item&px=NzY2Mg (5)

HardwareSupportComponentsVideoCardsPoulsbo (last edited 2013-11-11 16:58:16 by 157)