Nouveau

From Gentoo Linux Wiki

Jump to: navigation, search
Warning: This page is out of date and needs updating. Nouveau ebuilds are in portage now.

Nouveau is a reverse engineered free/open-source driver for nVidia chips. The Nouveau driver supports 2D acceleration, KMS, dual-head display and for some chipsets, work on 3D acceleration has begun (but is currently UNSUPPORTED by the Nouveau developers). See Nouveau Feature Matrix for details further details.

Contents

[edit] Installation

You need recent versions of the kernel, libdrm and the xf86-video-nouveau driver. The Nouveau ebuilds are available in the x11 overlay (live ebuilds) or from the sunrise overlay (snapshot ebuilds). Nouveau DRM support is available in kernel version 2.6.33.

[edit] Kernel

If you're building a kernel version prior to 2.6.33 you need to use the out-of-tree DRM module(provided by either the x11 or sunrise overlay). For this to work you need to disable DRM in the kernel:

Linux Kernel Configuration: DRM kernel config
Device Drivers  --->
	Graphics support  --->
		< > Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)

If you are using a 2.6.33 kernel, enable Nouveau support in the Staging drivers submenu. Do NOT enable any framebuffer devices.

Linux Kernel Configuration: DRM kernel config
Device Drivers  --->
	Graphics support  --->
		<*> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)
		[*] Staging drivers --->
	<M> Nouveau (nVidia) cards
		[*] Support for backlight control

(Re)build and (re)install. If you build nouveau as a module, add it do be loaded at startup:

File: /etc/conf.d/modules
modules="nouveau"

[edit] Firmware

The firmware needs to be available when nouveau is loaded. The easiest way to avoid problems with firmware is to build Nouveau as a module, and not put it into initramfs. If you put nouveau.ko to initramfs, put the firmware there, too. If you build Nouveau into the kernel (and not as a module), you need to make the firmware available before the root file system is mounted.

Note: If you have a NV04-NV40 class card, firmware will not be necessary.

To install the firmware, download the latest package from here. Decompress it in to /lib/firmware:

tar zxf nouveau-firmware-XXXXXXXX.tar.gz -C /lib/firmware

Replace XXXXXXXX with whatever version you downloaded.

[edit] Overlays

There are two overlays that provide the nouveau ebuild, x11 and sunrise. x11 provides live ebuilds which will pull the source code from the X.Org source code repositories. sunrise on the other hand provides snapshot ebuilds, which might be more stable. If you're unsure about overlays and Layman, see their respective articles.

[edit] x11

Warning: Live ebuilds may not compile if upstream is broken.

Add the x11 overlay:

layman -a x11

Then unmask the libdrm ebuild by adding the following to /etc/portage/package.unmask:

File: /etc/portage/package.unmask
=x11-libs/libdrm-9999

VIDEO_CARDS must be set to "nouveau" in /etc/make.conf:

File: /etc/make.conf
VIDEO_CARDS="nouveau"

Now it's time to emerge the drm and nouveau packages:

emerge -av =x11-libs/libdrm-9999 =x11-base/nouveau-drm-99999999 =x11-drivers/xf86-video-nouveau-9999

[edit] sunrise

Warning: The snapshots in the sunrise overlay are UNSUPPORTED by nouveau developers, switch to the git head ebuilds from the x11 overlay before reporting any problems to them

Add the sunrise overlay:

layman -a sunrise

If you are running an unstable (~arch) system simply run:

emerge -av xf86-video-nouveau

For users of stable systems, add the following to /etc/portage/package.keywords first:

File: /etc/portage/package.keywords
x11-drivers/xf86-video-nouveau
x11-libs/libdrm
x11-base/nouveau-drm

[edit] Configuration

Make sure you set opengl to xorg-x11:

eselect opengl set xorg-x11

Tell the X server to use the nouveau driver in /etc/X11/xorg.conf:

File: xorg.conf
Section "Device"
	Identifier	"nVidia card"
	Driver		"nouveau"
EndSection

[edit] Links

Personal tools
In other languages