Enabling Gma500 in Fedora 16
Update - April 14, 2012. After trying F17 for a bit, I recently reinstalled F16 on my Dell Inspiron Mini 12 netbook. F16 has had version 3.3 kernels for almost a month now. (The kernel version 3.3 has finally merged the gma500 driver. It is no longer in the staging area.) The build currently running on my netbook is kernel-3.3.1-3.fc16.i686. It seems to be working well except for suspend.
April 22, 2012 - same applies for Sony Vaio VGN P11Z. Vaio is freezing at suspend. "freezer" works, but "drivers" fail. This means some driver is not suspended correctly. This is most probably the gma500_gfx. If I blacklist it (means poulsbo stub driver is used), the system can suspend, but fails to resume (lockup). With --quirk-s3-mode or --quirk-vbe-post it can resume, but screen remains blank. Hibernation usually works, but strange things may happen on resumed system (display goes sudenly black and system is frozen). Also the display brightness is only having two levels and does nothing, therefore it generally can not be set to anything else than default.
Once again, the procedure for using this driver is to install Fedora 16 and then run "yum update" to get the latest kernel. After that, you should be able to reboot to the latest kernel and it should work.
For the first time, I installed using the XFCE Live iso instead of the DVD iso. (I have been writing these ISO files to a USB drive.) The steps to do this are as follows:
1. Boot the Live iso. You can accept the default option which is "Start Fedora 16".
2. Press Ctrl-Alt-F2 to get to a command prompt.
3. Log in as "liveuser".
4. Start the Live installer in text mode by entering the "liveinst" command.
5. Once the installation is complete, reboot from the internal drive.
6. When the reboot completes, login as root.
7. Enter the command "yum update" to get the latest kernel.
8. Change the default runlevel to graphical as per these instsructions.
February 18, 2012. I just installed the latest F16 updates on my netbook. I quickly discovered that the open source gma500 driver is no longer being built in new kernels. You might want to try the 3.2.2-1.fc16 kernel. (That is the build that works on my netbook.) I haven't yet tested the instructions below on Linux 3.2 kernels, but you might also want to try that.
January 28, 2012. The latest kernel (3.2.2-1.fc16) includes the open source gma500 driver. It is working well on my Dell Inspiron Mini 12. Suspend and resume are also working now. When the login screen appears after booting, I still have to press Ctrl-Alt-Backspace to fix the display resolution.
Using the new open source gma500 driver, I have been able to run Fedora 15 and 16 on a Dell Inspiron Mini 12 netbook with a display resolution of 1280x800. I am using the XFCE Desktop. I haven't tested GNOME 3 with this driver.
To do this, I compiled a custom kernel which enables the gma500 driver and disables some framebuffer drivers. (I'm not sure why this has to be done. Maybe it is because there is no DDX driver for the gma500 kernel module.)
To build a custom kernel, see Building a custom kernel. You do not have to run
make menuconfig or apply any patches. However, you should modify the SOURCES/config-generic file. Search for each of these options in the file and modify them to be the same as in the following listing.
CONFIG_DRM_PSB=m # CONFIG_FB_VGA16 is not set # CONFIG_FB_VESA is not set # CONFIG_STUB_POULSBO is not set
For the 3.1 kernel, you also need to add three more options to the config-generic file. How you set these depends on what version of the GMA 500 hardware you have.
# CONFIG_DRM_PSB_MRST is not set # CONFIG_DRM_PSB_MFLD is not set # CONFIG_DRM_PSB_CDV is not set
When I boot the computer with the custom kernel, the display is not correct at the GDM Login screen. If I press Control-Alt-Backspace, the display becomes correct.
Suspend doesn't work yet for me, but otherwise this driver seems to be working quite well.