Commit Graph

48 Commits (0774090d5b7d3eba734086b437021039bc19c365)

Author SHA1 Message Date
Dave Airlie 1bab514c0a remove config.h from build no longer exists kbuild does it 2006-10-14 23:38:20 +10:00
Eric Anholt c789ea1521 Rename the driver hooks in the DRM to something a little more
understandable: preinit -> load postinit -> (removed) presetup ->
    firstopen postsetup -> (removed) open_helper -> open prerelease ->
    preclose free_filp_priv -> postclose pretakedown -> lastclose
    postcleanup -> unload release -> reclaim_buffers_locked version ->
    (removed)
postinit and version were replaced with generic code in the Linux DRM
    (drivers now set their version numbers and description in the driver
    structure, like on BSD). postsetup wasn't used at all. Fixes the savage
    hooks for initializing and tearing down mappings at the right times.
    Testing involved at least starting X, running glxgears, killing
    glxgears, exiting X, and repeating.
Tested on: FreeBSD (g200, g400, r200, r128) Linux (r200, savage4)
2005-08-05 03:50:23 +00:00
Jon Smirl 5e8838fd11 Add a poll function that alternates between zero and normal poll return to
bring DRM into conformance with normal poll().
2004-10-13 16:40:53 +00:00
Jon Smirl ad70dc676e Breakout heads into their own data structures. 2004-10-12 03:59:17 +00:00
Jon Smirl ad549c5ae6 Rename fn_tbl to driver. Core driver now uses pci_driver name which
reflects the personality name.
2004-10-10 22:54:55 +00:00
Jon Smirl 9f9a8f1382 Lindent of core build. Drivers checked for no binary diffs. A few files
weren't Lindent's because their comments didn't convert very well. A
    bunch of other minor clean up with no code implact included.
2004-09-30 21:12:10 +00:00
Jon Smirl 3aef3841d0 Make fops per driver instead of global, remove default flush, poll, read
functions
2004-09-30 18:13:33 +00:00
Jon Smirl fa6b1d129e First check in for DRM that splits core from personality modules 2004-09-27 19:51:38 +00:00
Jon Smirl c158a36c4c 1) switches from class_sysfs to drm sysfs implementation to allow
customization
2) compiles again on 2.4, but doesn't work
2004-09-23 05:39:15 +00:00
Dave Airlie d4dbf45781 Merged drmfntbl-0-0-2 2004-08-24 11:15:53 +00:00
Dave Airlie 5c9ed83094 Merged drmfntbl-0-0-1 2004-08-17 13:10:05 +00:00
Eric Anholt ff58476011 - Converted Linux drivers to initialize DRM instances based on PCI IDs, not
just a single instance. Moved the PCI ID lists from <card>_drv.c in BSD
    to <card>.h. The PCI ID lists include a driver private field, which may
    be used by drivers for chip family or other information. Based on work
    by jonsmirl.
- Make tdfx_drv.c and tdfx.h match other drivers.
- Fixed up linking of sis shared files.
Tested with Radeon and SiS on Linux and FreeBSD, including a Linux setup
    with
2 SiS cards in a machine, but only one head being used (with DRI)
2003-10-17 03:14:39 +00:00
Alan Hourihane 74ef13fd00 merged bsd-3-0-0-branch 2002-07-05 08:31:11 +00:00
Alan Hourihane 2d4b2cf6f6 new multihead code was missing Voodoo3 2000 and Voodoo4 support. 2001-08-11 15:48:00 +00:00
Jeff Hartmann b6923b3953 Update to the code I sent Linus and Alan this morning. Added some missing
agp chipsets to drm_agpsupport.h, redid the card detection common code
    to use a structure (avoids endian porting issues), changed the tdfx
    driver to use the kernel pci id '#defines'
2001-08-08 16:10:47 +00:00
David Dawes 56bd9c2077 Merge the multihead-1-0-0 branch into the trunk, with the exception of the
glide header files.
The changes include:
- Brian Paul's changes to the tdfx client-side 3D driver to make it
    dlopen() the correct glide library (Voodoo3 or Voodoo5). This allows
    both types of the glide library to co-exist, and allows Voodoo3/Voodoo5
    cards to be mixed in multi-head configs.
- DRM kernel driver changes to allow a driver to set up multiple instances
    (minor numbers), one for each card present that the driver supports.
    This is currently implemented and tested only for the tdfx DRM driver.
- Add some missing missing <stdarg.h> includes.
- Some log message cleanups.
- Change the 2D tdfx driver to access VGA legacy registers via their PCI
    I/O space access points rather than their legacy addresses, and fix
    some problems with the way the VGA-related bits are initialised.
Status:
- With these changes, multi-head direct rendering works with multiple
    Voodoo3 and/or Voodoo5 cards. This has been tested with two PCI Voodoo3
    cards and an AGP Voodoo5 card, and all permutations of those.
Caveats:
- Xinerama is not supported. If Xinerama is enabled, then direct rendering
    gets disabled.
- The text mode on secondary screens will show junk after the X server
    exits.
- On some hardware, starting the X server on multiple 3dfx cards will
    result in a hard lockup. One workaround is to enable APIC support in a
    uni-processor kernel, or use an SMP kernel.
2001-07-30 19:59:39 +00:00
Jeff Hartmann 84a5e71087 Fixes that allow the modules to be built into the kernel 2001-07-23 20:25:38 +00:00
Jeff Hartmann 4eafeec960 Add module version name at a lower layer of the code, allows things to be
more flexible and allow older module versions to still work. Might not
    be final code if we move over to DRI kernel module version, but will be
    if we use XFree86 version. + Only build tdfx.o instead of tdfx-4_1_0.o
    since tdfx.o has never changed its API.
2001-07-18 21:02:58 +00:00
Jeff Hartmann d5749d7603 Added version string to the end of the kernel module name. This allows
multiple versions of the kernel module to co-exist on one machine.
2001-07-16 22:42:36 +00:00
Alan Hourihane 07f761bfae surround agp calls in drm_memory with __REALLY_HAVE_AGP instead of
CONFIG_... remove include for agpsupport in tdfx_drv.c - not needed.
2001-03-07 08:53:15 +00:00
Gareth Hughes 01a14789ed - Clean up the way customization of the templates is done.
- Fix old-style DMA for gamma driver (please test).
- Pull out IRQ handling into drm_dma.h (please test on i810, gamma).
- Lots of general cleanups, remove compiler warnings etc.
2001-02-16 05:24:06 +00:00
Gareth Hughes f2f5bf6f5f - Fix up merge.
- Update date stamps.
2001-02-15 10:26:03 +00:00
Gareth Hughes 360475376c Merge mga-1-0-0-branch into trunk. 2001-02-15 08:12:14 +00:00
Nathan Hand 61c15f4a2d Merged tdfx-3-0-0 2001-01-08 16:21:42 +00:00
Rik Faith 679531e166 Sync with Linux 2.4.0-test11-pre5 Provide backward compatibility tested
against 2.2.18pre21
As usual, since all 2.4.0-test* kernels set LINUX_VERSION_CODE to the same
    value, if you are running a 2.4.0-test kernel, you MUST be running
    2.4.0-test11-pre4 or later (although anything after 2.4.0-test11-pre1
    should work fine -- I tested with pre4/pre5). I expect 2.2.x support to
    continue to work for all recent kernels, but I tested with 2.2.18pre21
    -- we use the old intermodule symbol communication for 2.2.x kernels,
    so they should all continue to work.
2000-11-15 15:47:51 +00:00
Rik Faith 39a659e877 Audit calls to schedule() Remove tags from files shared with Linux kernel
tree Remove debugging statements to make debugging more useful Other
    minor cleanups in preparation for sync with Linux 2.4.0-test9-pre7
2000-09-29 01:47:11 +00:00
Jeff Hartmann 550dff98b0 Merged the mga-lock-debug-0-2-0-branch with the trunk. This includes
several fixes including: (Jeff) Really disable multitexture (Broken
    since Mesa 3.4 integration.)
(Jeff) Various changes in mga_state.c in the kernel module, which includes
    a fix to the bug where the first OGL application hangs the machine
    w/out rendering anything. This also includes defines for the warp
    registers so they are easily human readable.
(Rik and Jeff) Fixed all the schedule loops in the kernel to look like they
    are supposed too.
(Jeff) Configurable agp modes: Add the option "AGPMode2x" or "AGPMode4x" to
    your XF86Config file.
(Rik) Various cleanups to the mga kernel driver to make it easier to read
    and debug.
(Rik) Removed alot of DRM_DEBUG statements from the kernel driver.
2000-09-27 21:32:19 +00:00
Alan Hourihane c7558d8fa4 commit xfree86 4.0.1d-pre update 2000-09-24 09:34:10 +00:00
Gareth Hughes bda40b4146 Sync with 2.4.0-test8 kernel. 2000-09-10 04:59:05 +00:00
Gareth Hughes 7db6449142 Sync with 2.4.0-test8-pre5 kernel. 2000-09-06 20:56:34 +00:00
Rik Faith 6f07e1ff6b Sync with Linux 2.4.0-test7 Add signal blocking support to all drivers
(using control-z on a running direct-rendering client should work now)
2000-08-26 10:36:44 +00:00
Rik Faith 8b9363d1b1 Sync with Linux 2.4.0-test6-pre8 2000-08-08 16:04:21 +00:00
Rik Faith f3ae6786f8 Sync with Linux 2.4.0-test6-pre2 2000-08-04 10:04:55 +00:00
Rik Faith 6dd96a15ed Revert some changes and try alternative way to clean up AGP handling. 2000-07-21 16:57:00 +00:00
Rik Faith 81da79d1ed Changes to make AGP optional for in-kernel builds 2000-07-21 14:20:57 +00:00
Rik Faith b4722ec943 More fixups for kernel build: EXPORT_SYMTAB warning removal
put_module_symbol clean up of tdfx tdfx_cleanup routine Makefile.kernel
    fix
2000-07-20 05:17:49 +00:00
Rik Faith 742c33bf61 Fix signature for *_options function 2000-07-20 00:59:40 +00:00
Rik Faith c459c9ead3 Added support for building as modules or as part of monolithic kernel 2000-07-20 00:48:12 +00:00
Rik Faith 1d3c4d2ed2 Bump driver dates and add descriptions 2000-07-19 20:59:35 +00:00
Rik Faith aed8549e91 Sync with Linux 2.4.0-test4 kernel 2000-07-19 18:38:41 +00:00
Rik Faith 2fbd4bf018 Unify code with kernel: Change some spacing in comments Add #include
<linux/config.h> to all *_drv.c files
2000-06-13 14:34:13 +00:00
Brian Paul 569da5a42e Merged glxmisc-3-0-0 2000-06-08 14:38:22 +00:00
Jeff Hartmann ba1b1ae380 Merged mga branch with trunk 2000-04-04 22:08:14 +00:00
Jeff Hartmann 5bd8014f27 Merge with 4.0 2000-03-16 03:37:30 +00:00
Kevin E Martin d9ff0e3884 3.9.18 merge 2000-02-22 22:10:28 +00:00
Daryll Strauss aa724a52b9 Add a drm_poll function to the tdfx driver. This fixes the problem with
3.9.17 where the server hangs when the mouse is first moved.
2000-01-12 21:47:44 +00:00
Rik Faith 1c33c69095 Import of XFree86 3.9.17 2000-01-06 12:55:00 +00:00
Daryll Strauss b6a28bfe98 First DRI release of 3dfx driver. 1999-12-05 23:10:37 +00:00