Search:  
Gentoo Wiki

RadeonHD

This article is part of the HOWTO series.
Installation Kernel & Hardware Networks Portage Software System X Server Gaming Non-x86 Emulators Misc

Installation

Configuration

HIDevices

Fonts

Video Cards

OpenGL Compositing

Fonts

Monitors

edit

This article is still a Stub. You can help Gentoo-Wiki by expanding it.

This guide explains how to install the open-source RadeonHD drivers.

Contents

Introduction

There have been complaints about catalyst ("fglrx") for ages. There already was an open-source driver called "radeon" (see Radeon), but it lacked (and as of March 2008, still lacks) support for some newer devices. In September 2007, Novell started developing another open-source driver called RadeonHD, for use with the Radeon HD GPU series. As of March 2008, this driver isn't useful for any accelerated drawing either, but you might still be interested in using it, even though fglrx might support 3D for your card (see ATI drivers).

See http://www.x.org/wiki/radeonhd for the official page, the supported cards are listed under 3. and include X1200-1950 and HD2300-3870 for desktop as well as the Mobility version.

Installing

Configuring the kernel

DRI support has been added for some r5xx cards in May, while r6xx DRI is being worked on. So you'll want to start enabling DRM support in your kernel now, especially if you have an r5xx RadeonHD:

Linux Kernel Configuration: Kernel 2.6
Device Drivers  --->
  Character devices  --->
    <M> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)

Option one: AGP GPUs

If you have an AGP GPU, enable the following options:

Linux Kernel Configuration: Kernel 2.6.24 or earlier
Device Drivers  --->
  Character devices  --->
     Graphics support --->
    <M> /dev/agpgart (AGP Support)
    <M>   Enable whatever your AGP chipset as well (see lspci for this information)
Linux Kernel Configuration: Kernel 2.6.25
Device Drivers  --->
  Graphics support  --->
    <M> /dev/agpgart (AGP Support)
    <M>   Enable whatever your AGP chipset as well (see lspci for this information)

Option two: PCI-e GPUs

If you have a PCI-e GPU, enable the following:

Linux Kernel Configuration: Kernel 2.6.24 and earlier
Bus options (PCI, PCMCIA, EISA, MCA, ISA)  --->
  [*] PCI support
  [*]   PCI Express support
Linux Kernel Configuration: Kernel 2.6.25
Bus options (PCI etc.)  --->
  [*] PCI Express support

Finishing kernel configuration

Compile and install your kernel. Don't forget to add the modules you enabled to /etc/modules.autoload.d/kernel-2.6:

File: /etc/modules.autoload.d/kernel-2.6
intel-agp (only if your GPU uses AGP) (or whatever your AGP chipset is)
agpgart (only if your GPU uses AGP)

You probably do not need to add the drm module to the list, it will be autoloaded as soon as support for it is there.

Building and installing the sources

There are already releases of the RadeonHD driver. The releases will be relatively outdated though, and certainly with such a young project it might be worth it to try to use the git version. If it works for you and really want, for example, some initial acceleration for your card, the git version might suit you best. If you just want a working driver, go for the release version.

Option one: release version

If you simply want to use a release version:

File: /etc/portage/package.keywords
x11-drivers/xf86-video-radeonhd ~amd64

Replace amd64 with your own architecture, obviously.

# emerge -av xf86-video-radeonhd

Option three: get sources from git

FIXME: to be added
Warning: The rest of this section about git is a work in progress. If you are about to install RadeonHD from git, don't use this guide (yet). Feel free to contribute.

Currently, there's no git ebuild for RadeonHD in portage, so we'll have to choose from three sub-options. Either install the compiled driver manually (sub-option one). Or add an ebuild to a local overlay (sub-option two). Or finally you can use an existing ebuild found in zen-overlay (sub-option three).

Sub-option one: fetch and install sources manually

The first step, of course, would be to make sure you have a git client installed:

emerge -avu dev-util/git

Now go to a directory to download the sources to, usually /usr/src/.

cd /usr/src/

And checkout those sources:

git clone git://anongit.freedesktop.org/git/xorg/driver/xf86-video-radeonhd

Now build that s*cker!

cd xf86-video-radeonhd/
./autogen.sh --prefix=/usr
make
make install

This should install the RadeonHD driver for you. Please note that it might be nontrivial to completely uninstall the driver now.

Also note that you can also drop off the --prefix=/usr part so the driver will be installed to /usr/local. Then do symlinks

ln -s /usr/local/lib/xorg/modules/drivers/radeonhd_drv.la usr/lib/xorg/modules/drivers/radeonhd_drv.la 
ln -s /usr/local/lib/xorg/modules/drivers/radeonhd_drv.so /usr/lib/xorg/modules/drivers/radeonhd_drv.so

This way you if make uninstall doesn't work properly for you, you can always just remove the symlinks and forget about the driver installed inside /usr/local - or even wipe /usr/local if you have nothing else installed there. In an optimal case you should be able to uninstall the driver installed trivially with make uninstall but this might not always be the case.

Sub-option two: add an ebuild to a local overlay
Warning: UNTESTED

Update: The ebuild works for a RV770 based Radeon HD 4850.

File: /usr/local/portage/x11-drivers/xf86-video-radeonhd/xf86-video-radeonhd-9999.ebuild
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

EGIT_REPO_URI="git://anongit.freedesktop.org/git/xorg/driver/xf86-video-radeonhd"
EGIT_BRANCH="master"
EGIT_BOOTSTRAP="./autogen.sh"

XDPVER=-1
inherit git x-modular

DESCRIPTION="Experimental Radeon HD video driver."
HOMEPAGE="http://wiki.x.org/wiki/radeonhd"

SRC_URI=""

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""

RDEPEND=">=x11-base/xorg-server-1.3.0"

DEPEND="${RDEPEND}
        x11-proto/xextproto
        x11-proto/xproto"

Add this file to your overlay and emerge it.

Sub-option three: install from zen-overlay

It appears there's a live git ebuild in zen-overlay now.

# layman -a zen-overlay
# emerge -av xf86-video-radeonhd

Configuring xorg.conf to use the RadeonHD drivers

Start with a working configuration. See Xorg for a little bit more information on this, as well as the official X server configuration howto. As of march 2008, the RadeonHD driver does not yet have support for composite/AIGLX, you need to disable this explicitly:

File: /etc/X11/xorg.conf
Section "Extensions"
        Option "Composite" "Off"
EndSection

Section "ServerFlags"
        Option "AIGLX" "Off"
EndSection

In your "device" section, add the following option:

File: /etc/X11/xorg.conf
Section "Device"
        Driver      "radeonhd"
EndSection

Obviously, keep intact the other options of your Device section.

Known limitations

Troubleshooting

FIXME: find possible trouble
Retrieved from "http://www.gentoo-wiki.info/RadeonHD"

Last modified: Tue, 07 Oct 2008 06:43:00 +0000 Hits: 12,746