Go to file
Eric Anholt 72abe983ad intel: Add a new bufmgr alloc function to get BOs ready for rendering to.
This avoids using the oldest BO in the BO cache and waiting for it to be
idle before we turn around and render to it with the GPU.  Thanks to
Chris Wilson for pointing out how silly we were being.
2009-02-21 09:57:06 -08:00
bsd-core [FreeBSD] Fix build on FreeBSD after modesetting import. 2008-12-23 13:56:23 -05:00
libdrm intel: Add a new bufmgr alloc function to get BOs ready for rendering to. 2009-02-21 09:57:06 -08:00
linux-core nouveau: support backlight only when kernel does 2009-02-18 22:46:40 +02:00
scripts drm: add create gpu tree script 2008-10-07 04:07:40 +10:00
shared-core nouveau: Add in-kernel backlight control support 2009-02-18 13:48:33 +10:00
tests modetest: Add syntax to also specify a crtc when setting a mode. 2009-02-04 12:17:32 -05:00
.gitignore libdrm: Fix modetest/modeprint to use automake stuff. 2008-12-17 10:41:21 -08:00
Makefile.am Add some trivial regression tests, one of which fails. 2007-07-19 04:59:59 -07:00
README Clean up README for the current state of kernel module affairs. 2009-01-27 18:00:45 -08:00
autogen.sh update autogen from xserver tree 2005-09-12 06:21:24 +00:00
configure.ac libdrm: make libdrm_nouveau conditional, disabled by default 2009-02-15 21:51:46 +10:00
libdrm.pc.in Better pkgconfig-fu: -ldrm in Libs: 2005-10-13 21:03:31 +00:00

README

DRM README file


There are two main parts to this package: the DRM client library/interface
(libdrm.so) and kernel/hardware-specific device modules (such as radeon.ko).
The kernel device modules are not shipped with libdrm releases and should only
be built from the git tree by developers and bleeding-edge testers of
non-Intel hardware.  The Intel kernel modules are developed in the Linux
kernel tree.


Compiling
---------

By default, libdrm and the DRM header files will install into /usr/local/.
If you want to install this DRM to replace your system copy, say:

	./configure --prefix=/usr --exec-prefix=/

Then,
	make install


To build the device-specific kernel modules from the git tree:

	cd linux-core/
	make
	cp *.ko /lib/modules/VERSION/kernel/drivers/char/drm/
	   (where VERSION is your kernel version: uname -f)

Or,
	cd bsd-core/
	make
	copy the kernel modules to the appropriate place



Tips & Trouble-shooting
-----------------------

1. You'll need kernel sources.  If using Fedora Core 5, for example, you may
   need to install RPMs such as:

	kernel-smp-devel-2.6.15-1.2054_FC5.i686.rpm
	kernel-devel-2.6.15-1.2054_FC5.i686.rpm
	etc.


2. You may need to make a symlink from /lib/modules/VERSION/build to your
   kernel sources in /usr/src/kernels/VERSION (where version is `uname -r`):

	cd /lib/modules/VERSION
	ln -s /usr/src/kernels/VERSION build


3. If you've build the kernel modules but they won't load because of an
   error like this:

	$ /sbin/modprobe drm
	FATAL: Error inserting drm (/lib/modules/2.6.15-1.2054_FC5smp/kernel/drivers/char/drm/drm.ko): Invalid module format

   And 'dmesg|tail' says:

	drm: disagrees about version of symbol struct_module 

   Try recompiling your drm modules without the Module.symvers file.
   That is rm the /usr/src/kernels/2.6.15-1.2054_FC5-smp-i686/Module.symvers
   file (or rename it).  Then do a 'make clean' before rebuilding your drm
   modules.