Retinal Burn

Unified DRI and XVideo Support for Mach64
Home
World Trip
More Photos
Linux
Links
 
Last Updated: Feb. 3, 2005

Patches / Binaries | README | LICENSE

READ THIS FIRST:
On April 23, 2003 Marc Aurele La France, the maintainer of the XFree86 mach64 driver, committed XVideo overlay/scaling support for mach64 (based in part on the GATOS code) to XFree86 CVS. It is available (without 3D support) in XFree86 releases starting with 4.4.0. Since X.org forked from what is essentially the XFree86 4.4.0 codebase, Marc's XVideo code is also included in X.org releases.

The mach64-0-0-7-branch of DRI CVS has this code merged in as well, and so supports both XVideo and accelerated 3D. From there, the DDX (X server driver) portion of the code to support DRI has been merged into the X.org tree. However, DRI is disabled by default in the build config since it is still insecure. The 3D driver (along with the other DRI drivers) is now maintained in the Mesa tree. The drm kernel component still lives in DRI cvs. Confused yet?

If you'd like to get the most current driver, check the DRI download page on the DRI site for instructions on getting the source or binary snapshots that will support both DRI and XVideo.

The patches here are based on the older mach64-0-0-6-branch of DRI CVS, before XVideo support was merged in. I'll continue to make them available here for a while, but I am no longer maintaining or updating them.

Patches and Binaries

Source patches are available against the DRI CVS branches tagged as: mach64-0-0-6-branch (XFree86 4.3.0) and mach64-0-0-5-branch (XFree86 4.2.0). The patch files are gzipped unidiff text files (generated with 'diff -u'). There are now binaries available which were built from the mach64-0-0-6-branch DRI branch and XFree86 4.3.0. The new binary package includes everything you need. Just download it, unpack it and run the installer. The older binary packages are based on the mach64-0-0-5-branch and XFree86 4.2.0. If you are using those, you'll need to install the DRI snaphot package first and then the dri-xv binaries. All these patches and binaries include my experimental TV-out patch. For more information on building the mach64 DRI branch, check out my mini-HOWTO, and be sure to read the README below.

Patch and Binaries for mach64-0-0-6-branch (XFree86 4.3.0)
Source patch: mach64-dri-xv-20030331.diff.gz
Binaries: mach64-dri-xv-20030413.i386.tar.bz2

Patch and Binaries for mach64-0-0-5-branch (XFree86 4.2.0):
Source patch: mach64-dri-xv-20020917.diff.gz
DRI binaries: mach64-20020920-linux.i386.tar.bz2 (install this first)
Binaries: mach64-dri-xv-20020917.i386.tar.bz2 (requires DRI binaries above or branch build to be installed first)
For installation instructions, read the old README for installing the 4.2.0 packages.

Download via FTP

README:
Unified DRI and XVideo drivers for mach64 chips
-----------------------------------------------

Both the source patch and binaries include experimental TV-out code for x86 
which can be enabled with Option "TVOut" in the Device section for your card
in XF86Config (though you should probably disable it when you're not using it).
If you have a DRI source tree from CVS, use the source patch; otherwise, you 
can download and install the binary package as described below.  

For more information on TV-out, check here:

http://www.retinalburn.net/linux/tvout.html

And for information on the status of the DRI driver, check here:

http://www.retinalburn.net/linux/dri_status.html

SOURCE PATCH: mach64-dri-xv-XXX.diff.gz
---------------------------------------
This patch should be applied against the mach64-0-0-6-branch CVS branch of DRI.
You'll need an existing installation of XFree86 4.3.0 to build it.

To apply the patch:

If you aren't starting with a fresh checkout, update 
your cvs tree and remove any old patches (run this in
the cvs branch root: 'xc/xc'):
% cvs update -C

Now move to the 2D driver directory of the tree:
% cd programs/Xserver/hw/xfree86/drivers/ati

Now move the patch file to this directory, e.g.:
% mv ~/mach64-dri-xv-XXX.diff.gz .

Apply the patch:
% gunzip -c mach64-dri-xv-XXX.diff.gz | patch -p1

Then build the branch according to the DRI Compilation Guide:
http://dri.sourceforge.net/doc/DRIcompile.html

BINARIES: mach64-dri-xv-XXX.i386.tar.bz2
----------------------------------------
NOTE: These instructions apply to the unified DRI and GATOS binary
packages for XFree86 4.3.0.

This package contains binary driver modules for a DRI and XVideo capable
'ati' XFree86 DDX driver, tuner and capture card drivers from the GATOS
project, the Mesa 3D client driver for mach64, and the DRM kernel module 
sources.

To install this package: 
1. exit X
2. unpack the tarball (e.g. 'bunzip2 -c filename.tar.bz2 | tar -xf -')
3. cd dripkg/
3. run './install.sh' as root
4. Follow the directions

Make sure that the mach64.o kernel module compiled and was installed in 
/lib/modules/`uname -r`/kernel/drivers/char/drm.  If you have an AGP card, 
make sure the agpgart.o kernel module is loaded before starting the X server.

To restore files backed-up by the install script, run './install restore' as 
root.

NOTE: If the dripkg directory contains empty 'core' and 'GL' directories, it's
not a problem.  There will only be files in these directories if there have 
been changes in the core libraries and modules (libGL.so, libdrm.a, libdri.a, 
libGLcore.a, etc.).

MORE INFO
---------
For the latest source patches and binaries, check here:

http://www.retinalburn.net/linux/dri_xv.html

If you have questions or problems concerning these packages, you can email 
me here:

http://www.retinalburn.net/email.html

However, as I can't guarantee that I'll be able to respond, you may also 
want to address bug reports to these mailing lists:

For 3D issues:              dri-devel@lists.sourceforge.net
For XVideo/capture issues:  gatos-devel@lists.sourceforge.net
For general XFree86 issues: xfree86@XFree86.Org

More information on these projects can be found here:

GATOS:   http://gatos.sourceforge.net
DRI:     http://dri.sourceforge.net
XFree86: http://www.xfree86.org
License:
The source code and binaries on this page are based on the XFree86 project and are subject to the XFree86 Version 1.0 License. Note that code on this site is NOT subject to the new Version 1.1 XFree86 license.

   

All images and text © 1998-2008 Leif Delgass, All Rights Reserved
(Unless otherwise specified).

Home | World Trip | Photos | Linux | Links



[Blue Ribbon Campaign]