Find a file
Dave Airlie d21a889fe8 Move i915 to "cleaner" ioctl interface
This is just an idea at this stage, some ioctls don't lend themselves to this
type of thing, mostly ones which needs multiple levels of copy_from_user to
bring across structs from userspace
2007-04-28 16:48:47 +10:00
bsd-core Catch up to new interrupt API, and retire FreeBSD 4.x support here. 2007-03-24 09:39:09 -07:00
libdrm libdrm: remove HAVE_XORG_CONFIG_H and XFree86LOADER ifdef's. 2007-04-26 14:15:55 +03:00
linux-core Move i915 to "cleaner" ioctl interface 2007-04-28 16:48:47 +10:00
scripts update create_lk_drm.sh script 2007-04-26 17:54:06 +10:00
shared-core Move i915 to "cleaner" ioctl interface 2007-04-28 16:48:47 +10:00
tests Checkpoint commit. 2007-02-07 17:25:13 +01:00
.gitignore Make git ignore generated config.h.in. 2007-02-02 13:24:19 +01:00
autogen.sh update autogen from xserver tree 2005-09-12 06:21:24 +00:00
configure.ac Bump version patchlevel so it can be tested for new functionality. 2007-03-10 17:13:54 +01:00
libdrm.pc.in Better pkgconfig-fu: -ldrm in Libs: 2005-10-13 21:03:31 +00:00
Makefile.am Fix silly install issue by moving the header install rules for shared-core 2005-08-20 03:32:09 +00:00
README More detailed instructions, tips. 2007-04-25 14:52:29 -06:00

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 i915.ko).



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:

	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.