Thomas Hellstrom
ca1b15d645
Alternative implementation of page table zeroing using zap page_range.
...
(Disabled for now)
Fix bo_wait_idle bug.
Remove stray debug message.
2006-09-18 20:43:31 +02:00
Thomas Hellstrom
c4fad4c961
More verbose error reporting in some cases.
...
Add a buffer object waitIdle user-space function.
Fix some names and minor glitches.
2006-09-18 16:02:33 +02:00
Thomas Hellstrom
49fbeb339c
Some bugfixes.
...
Change the fence object interface somewhat to allow some more flexibility.
Make list IOCTLS really restartable.
Try to avoid busy-waits in the kernel using immediate return to user-space with an -EAGAIN.
2006-09-15 11:18:35 +02:00
Thomas Hellstrom
861b26578c
Use lazy fence wait when possible even for RW fences. Saves some CPU.
...
Lindent.
2006-09-12 16:28:34 +02:00
Thomas Hellstrom
191e284709
More bugfixes.
...
Disable the i915 IRQ turnoff for now since it seems to be causing problems.
2006-09-12 12:01:00 +02:00
Thomas Hellstrom
99acb79366
Various bugfixes.
2006-09-08 17:24:38 +02:00
Thomas Hellstrom
e3f54ecdd9
Multithreaded application note.
2006-09-05 19:36:45 +02:00
Thomas Hellstrom
6042153968
Fence all unfenced buffers function.
2006-09-05 18:00:25 +02:00
Thomas Hellstrom
f88c32fd4c
Libdrm function headers. Some renaming.
2006-09-04 22:05:21 +02:00
Thomas Hellstrom
405b5d9ca8
Flag bit pattern bugfixes. Remove some error messages.
2006-09-01 18:11:05 +02:00
Thomas Hellstrom
ef8e618cf3
Export buffer info on map and validate ioctls.
...
Add an info ioctl operation.
2006-09-01 16:38:06 +02:00
Thomas Hellstrom
4edb95d6e0
Various bugfixes.
2006-09-01 11:23:21 +02:00
Thomas Hellstrom
ec8c79b79d
More mapping synchronization.
...
libdrm validate and fencing functions.
2006-08-31 14:10:13 +02:00
Thomas Hellstrom
d39055174b
Remove the buffer object hint field and use it only
...
as an argument.
Validate stub.
2006-08-30 17:40:07 +02:00
Thomas Hellstrom
ff95ea5536
Add missing map flags.
2006-08-30 15:11:50 +02:00
Thomas Hellstrom
14a835be61
Buffer object mapping and mapping synchronization for multiple clients.
2006-08-30 15:08:40 +02:00
Thomas Hellstrom
e47a4fda2e
Memory manager init and takedown.
2006-08-30 13:04:08 +02:00
Thomas Hellstrom
de144ba23c
Part of buffer object libdrm interface.
2006-08-29 21:57:37 +02:00
Thomas Hellstrom
23f01c9fe8
Checkpoint commit. Buffer object flags and IOCTL argument list.
2006-08-29 18:40:08 +02:00
Thomas Hellstrom
279e8d26c6
64-bit IOCTL integer (Michel Dänzer & Brian Paul)
2006-08-29 10:45:34 +02:00
Thomas Hellstrom
e181f594a4
Add a 64-bit drm unsigned type for 64-bit clean IOCTLS.
...
Conversion functions in drmP.h and xf86drm.c.
2006-08-28 09:49:09 +02:00
Thomas Hellstrom
886d3b3061
Bugfixes.
2006-08-27 22:01:33 +02:00
Thomas Hellstrom
b4b7b99760
Remove the ioctl multiplexing, and instead allow for generic
...
drm ioctls 0x80 - 0xFF.
2006-08-27 21:16:13 +02:00
Thomas Hellstrom
a6535c8db4
Add a fence object class field for future use (For example VSYNC fence objects)
2006-08-22 10:44:09 +02:00
Thomas Hellstrom
166da9355d
User / Kernel space fence objects (device-independent part).
2006-08-21 21:02:08 +02:00
Michel Dänzer
b9243ce3d5
.cvsignore -> .gitignore
...
Sort the merged file, remove the redundant explicit .ko lines and add
some generated symlinks.
2006-07-19 18:31:43 +02:00
Adam Jackson
14d1219442
Avoid walking off the end of the hash table. (Coverity report #465 )
2006-03-15 01:02:54 +00:00
Adam Jackson
22e41ef083
Formatting cleanup, dead code removal. Remove N() namespacing macro,
...
useless. Remove SIGIO handling functions as they're server-only and
properly belong in libdri.
2006-02-20 23:09:00 +00:00
Eric Anholt
26462b9aa4
Initialize sv.drm_dd_minor to "don't care" along with dd_major, to appease
...
valgrind.
2005-12-31 11:48:12 +00:00
Adam Jackson
7d735a8c9f
Bump package and DSO numbers to 2.0 to reflect 32/64 ABI change
2005-11-30 18:44:54 +00:00
Adam Jackson
f28dddb551
Resync from Xorg head: conditional include of xorg-config.h
2005-11-30 03:51:46 +00:00
Adam Jackson
ea08b613bd
Resync from Xorg head (Bug #3815 , GNU/kFreeBSD hack)
2005-11-30 02:55:14 +00:00
Adam Jackson
b3189730e7
Add TODO based on my email from a while ago
2005-11-29 21:10:59 +00:00
Adam Jackson
6941b375e8
Remove redundant #ifdef stanza
2005-11-29 20:03:38 +00:00
Adam Jackson
48198970ce
Error checking for drmStrdup (Tilman Sauerbeck)
2005-11-29 20:02:34 +00:00
Dave Airlie
7ede209ce0
fixup xf86drm.c for new headers
2005-11-29 09:50:47 +00:00
Dave Airlie
645e2d411d
fixes from Egbert for 64bit
2005-11-29 09:19:20 +00:00
Adam Jackson
ec0ef9a78d
remove xf86drmCompat.*, unused since about XFree86 4.2.
2005-11-28 22:18:12 +00:00
Brian Paul
0472ac5d11
fix mem leak in HashHash() (bug 5171)
2005-11-28 17:33:01 +00:00
Adam Jackson
79f30e79ec
Bug #328 : Silence read-from-uninitialized warnings in DRM_CAS on Alpha.
...
(David Dawes)
2005-10-22 05:50:22 +00:00
Adam Jackson
d74376779f
Remove the remaining references to Xlib. libdrm is totally independent now.
2005-10-20 17:53:02 +00:00
Adam Jackson
b3631ba02c
Remove bogus Xlib dependency.
2005-10-20 17:32:31 +00:00
Eric Anholt
9942cad1f6
Add missing .cvsignore files for autotoolery.
2005-08-25 23:11:28 +00:00
Eric Anholt
7d5130d8fb
Include appropriate CFLAGS to find X headers, needed to build libdrm.
2005-08-25 02:59:21 +00:00
Dave Airlie
5a52e533e1
add options for x86_64 and amd will small letters
2005-08-23 04:10:50 +00:00
Adam Jackson
017174085f
Fix silly install issue by moving the header install rules for shared-core
...
into shared-core/Makefile.am. Bump to 1.0.3.
2005-08-20 03:32:09 +00:00
Adam Jackson
1abd165f5b
Add r300_reg.h. Bump to 1.0.2.
2005-08-19 20:14:10 +00:00
Adam Jackson
5a5478de7a
distcheck fixes
2005-07-13 00:13:12 +00:00
Adam Jackson
07d23f9c60
autoconfiscate libdrm
2005-07-10 22:42:42 +00:00
Dave Airlie
a0454aba71
mirror changes made in main tree.. just happened to be doing this myself
2005-04-04 04:08:29 +00:00
Adam Jackson
caa4212faa
momentary revert. libdrm build may be broken now, but no one uses it yet...
2005-02-01 22:09:46 +00:00
Adam Jackson
4b23b5fc3e
Final pass of libdrm.so work:
...
- Add $(DESTDIR) for distributors doing package creation
- Remove OS-specific include path from build
- Add /usr/include/drm for driver-kernel API
- Install all of shared-core/*.h in /usr/include/drm
- Rename xf86drm.h to libdrm.h since we're not X biased anymore
- Include backwards compat for xf86drm.h name, with a warning
- Fix libdrm source to account for drm.h living in /usr/include/drm
2005-01-30 03:30:45 +00:00
Adam Jackson
3df805bd4a
Add drm.h to the install target.
2005-01-22 08:24:36 +00:00
Adam Jackson
c74052cfae
Add xf86drm.h to the install target.
2005-01-17 00:02:04 +00:00
Adam Jackson
e5cc0b8f6f
Shared libdrm work:
...
- create libdrm.so target
- build it by default
- drop xf86drmCompat.c from the build
- make 'clean' target never fail
- use pattern rules for .c -> .o for parallelism
- add 'install' target
2005-01-16 23:50:58 +00:00
Dave Airlie
354dd17d25
The patch makes drmAddBufs/drmMapBufs can handle buffers in video memory
...
The attached patch adds a new buffer type DRM_FB_BUFFER. It works like AGP
memory but uses video memory.
From: austinyuan@viatech.com.cn (fd.o bug 1668) Signed-off-by: Dave Airlie
<airlied@linux.ie>
2005-01-16 05:40:12 +00:00
Felix Kuehling
ed165a2529
Added a new DRM map type _DRM_CONSISTENT for consistent PCI memory. It uses
...
drm_pci_alloc/free for allocating/freeing the memory. Only implemented
in the Linux DRM so far.
2005-01-01 20:03:15 +00:00
Dave Airlie
c21cdee38a
respect cc and cflags
2004-11-07 02:15:11 +00:00
Jon Smirl
993a75a5d1
Makefile and missing file to build libxf86drm.a
2004-09-17 20:01:59 +00:00
Adam Jackson
fd62869a0f
Bug #979 : Don't include <sys/sysmacros.h> on linux, it occasionally emits
...
makedev() as a function call that elfloader can't resolve. Originally
Gentoo Bug #41962 , reported by Ryan Breen, fix feedback from Ryan
Lortie.
2004-08-11 23:23:35 +00:00
Dave Airlie
cc4d03930c
Patch picked up from Redhat xorg release:
...
Patch by John Dennis <jdennis@redhat.com> which fixes DRI locking bug on
ia64 architecture.
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=104338
http://bugs.xfree86.org/show_bug.cgi?id=778
2004-07-31 08:12:39 +00:00
Jon Smirl
8696e71db2
Make drm/libdrm/xf86drm.c match
...
xc/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/xf86drm.c so
that it matches the prototypes in xf86drm.h XFree86 bug: Reported by:
Submitted by: Reviewed by: Obtained from:
2004-07-07 04:36:36 +00:00
Jon Smirl
deed1eca09
Add xf86drm.h back to drm/libdrm until it's true home can be found.
...
mesa-solo needs this file to build. XFree86 bug: Reported by: Submitted
by: Reviewed by: Obtained from:
2004-07-07 04:22:17 +00:00
Michel Daenzer
27f9c5f016
build fix
2003-11-04 00:59:52 +00:00
Eric Anholt
06cb132e86
- Introduce a new ioctl, DRM_IOCTL_SET_VERSION. This ioctl allows the
...
server or client to notify the DRM that it expects a certain version of
the device dependent or device independent interface. If the major
doesn't match or minor is too large, EINVAL is returned. A major of -1
means that the requestor doesn't care about that portion of the
interface. The ioctl returns the actual versions in the same struct.
- Introduce DRM DI interface version 1.1. If the server requests version
1.1, then the DRM sets the unique itself according to the busid of the
device it probed, which may then be accessed as normal using getunique.
- Request version 1.1 in libdrm's drmOpenByBusID, allowing the X Server to
request based on a BusID. Introduce a wrapper for DRM_IOCTL_SET_VERSION
and bump libdrm minor version.
- Pass the busid in DRIScreenInit if libdrm can handle both a busid and
name. This allows drmOpenByBusID to be used to find the DRM instead of
just the driver name, which allows us in the future to tie a DRM more
strongly to the device it probed to. Introduce a function
DRICreatePCIBusID which creates a busid in the form pci:oooo:bb:dd.f
similar to linux's pci_name() function. This matches the format used by
the DRM in version 1.1. libdrm knows how to match both this format and
the old PCIðŸ…±ï¸ d:f format.
- Use the new DRICreatePCIBusID function in the *_dri.c to request the new,
more exact busid format.
2003-10-23 02:23:31 +00:00
Alan Hourihane
b0a928557c
post merge fix
2003-09-24 14:39:25 +00:00
Alan Hourihane
decf9e2297
compatibility layer still uses agp (not gart)
2003-09-13 00:25:59 +00:00
Alan Hourihane
c5168016cc
linux drm fixes
2003-09-12 20:00:59 +00:00
Eric Anholt
ebca51d8da
Update to reflect renaming of SIS ioctls.
2003-08-29 21:41:32 +00:00
Michel Daenzer
b83d2f909e
Rename agp to gart for radeon
2003-08-26 16:49:33 +00:00
Jose Fonseca
d2443b2186
Merged DRM documentation.
2003-05-27 00:37:33 +00:00
Michel Daenzer
23a76c3759
deal correctly with read() from the DRM failing
2003-04-23 14:21:17 +00:00
Alan Hourihane
b3eb34e0ea
linux merge for drm
2003-03-25 11:36:43 +00:00
Alan Hourihane
c14006ba9f
XFree86 4.3.0 merge
2003-03-25 00:29:14 +00:00
Eric Anholt
cfa778af9c
Merge from bsd-4-0-0-branch.
2003-02-21 23:23:09 +00:00
Michel Daenzer
c7d471b6ae
don't inflate relative vblank sequence numbers on repeated calls (e.g. when
...
interrupted by a signal)
2003-02-02 03:06:47 +00:00
Brian Paul
c869f4a1e5
added missing return fd (Alexander Stohr)
2002-11-25 16:03:20 +00:00
Alan Hourihane
b3a20ce219
final part of XFree86 4.2.99.2 merge
2002-10-22 23:38:53 +00:00
Michel Daenzer
55acd0d5a6
common ioctl to wait for vertical blank IRQs
2002-09-25 17:18:19 +00:00
Eric Anholt
d51ec6b972
Remove compat functions for FreeBSD for drivers which weren't available in
...
X4.2
2002-08-30 21:06:21 +00:00
Eric Anholt
d2f2b42f1d
Try to open the /dev/dri/cardX device once, then only if it fails check the
...
device number and recreate it if necessary. Fixes xf86drm.c to allow
linux binaries to be used for emulation on FreeBSD.
2002-08-08 21:23:46 +00:00
Alan Hourihane
74ef13fd00
merged bsd-3-0-0-branch
2002-07-05 08:31:11 +00:00
Jens Owen
3903e5ac94
Merged drmcommand-0-0-1
2002-04-09 21:54:56 +00:00
David Dawes
44aa4d6297
First pass merge of XFree86 4.2.0 import.
2002-01-27 20:05:42 +00:00
David Dawes
9e69d0dac6
- Remove the rest of the unneeded client-side libraries.
...
- Use installed libraries that are not built here.
- Don't build/install client-library related file and headers.
2001-08-25 03:13:04 +00:00
David Dawes
c6bf9bae8e
First part of XFree86 4.1.99.1 merge.
2001-08-22 18:24:52 +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
ae5b4effc0
Remove module name hacks because we aren't going to implement this anymore
...
because of Linus' comments
2001-07-20 20:31:30 +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
David Dawes
d87c873df0
First pass of 4.1.0 merge.
2001-06-14 22:23:44 +00:00
David Dawes
9c775d0b2f
finish struct stat type cleanup Fix a build dependencies for the tdfx drm
...
module
2001-05-14 14:49:58 +00:00
Alan Hourihane
0813760110
add some commented enclosures around the BUS_BASE calls for Alpha
...
platforms.
2001-05-04 14:05:13 +00:00
David Dawes
2ea12226a6
Initial merge for XFree86 4.0.99.3 import
2001-05-01 21:39:35 +00:00
Kevin E Martin
df76f81292
- PCIGART patches for Alpha from Compaq
2001-04-30 15:07:18 +00:00
David Dawes
49781fcf37
put back BUS_BASE
2001-04-18 18:45:20 +00:00
David Dawes
18fc5ee923
First pass of XFree86 4.0.99.2 merge.
2001-04-09 21:56:31 +00:00
Kevin E Martin
5d6ddbca26
Merged ati-pcigart-1-0-0
2001-04-05 22:16:12 +00:00
David Dawes
fcc21069b7
- Move xf86ConfigDRI declaration from xf86Priv.h to xf86.h.
...
- Don't include xf86Priv.h in the drm module.
- Fix 'struct stat' in loader libc wrapping to avoid unnecessary
XFree86LOADER #ifdefs in code that uses it.
- Make drmOpenMinor() static.
2001-03-30 17:16:20 +00:00
Kevin E Martin
74e19a4018
Merged sarea-1-0-0
2001-03-14 22:22:50 +00:00
Gareth Hughes
e2b2bffc6b
Rest of MGA dualhead patch.
2001-03-13 00:22:05 +00:00
Rik Faith
88dbee54ed
Implement drmOpen* without /proc dependence (Fallback to /proc is included
...
for backward compatibility.) Move statistic-gathering drm* calls from
dristat.c to xf86drm.c
2001-02-28 09:27:44 +00:00
Gareth Hughes
360475376c
Merge mga-1-0-0-branch into trunk.
2001-02-15 08:12:14 +00:00
David Dawes
94071289a4
merge with 4.0.1d
2000-11-08 00:07:17 +00:00
Alan Hourihane
c7558d8fa4
commit xfree86 4.0.1d-pre update
2000-09-24 09:34:10 +00:00
Alan Hourihane
f1bb3c5f5f
Merged tdfx-2-1-branch
2000-09-07 12:40:41 +00:00
David Dawes
cba4d3504c
first part of 4.0.1b merge
2000-08-16 18:29:06 +00:00
Alan Hourihane
8751b6774d
Merge XFree86 4.0.1
2000-07-11 11:41:07 +00:00
Rik Faith
1c8b2b5e06
Update email addresses and copyright notices to reflect VA Linux Systems
2000-06-13 14:22:03 +00:00
Brian Paul
569da5a42e
Merged glxmisc-3-0-0
2000-06-08 14:38:22 +00:00
Kevin E Martin
99efe3c247
Merged ati-4-0-1
2000-05-18 06:14:27 +00:00
Brian Paul
01836824d5
Merged glxmisc-1-0-0
2000-04-20 16:36:40 +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
Jeff Hartmann
adc03d3661
Import of XFree86 4.0
2000-03-15 21:40:23 +00:00
Kevin E Martin
d9ff0e3884
3.9.18 merge
2000-02-22 22:10:28 +00:00
Rik Faith
9243a76e03
Merge between X_3_9_16 and X_3_9_17 Compiles but may not run.
2000-01-07 06:54:54 +00:00
Daryll Strauss
0371c290a1
Rename the device to be /dev/dri instead of /dev/dri to avoid a conflict.
...
Rename proc entry from /proc/graphics to /proc/dri to be consistent.
1999-12-18 18:34:59 +00:00
Daryll Strauss
e1dba5c3a7
Move Mesa to xc/extras Update to the latest Mesa 3.2 code Fix the Q3Demo
...
bugs (white railgun and texture mapping) Simplify driver texture
mapping routines Fix device driver for 2.3 kernels Improve performance
1999-12-07 03:37:16 +00:00
Daryll Strauss
b6a28bfe98
First DRI release of 3dfx driver.
1999-12-05 23:10:37 +00:00
Daryll Strauss
b3a5766992
Initial revision
1999-12-05 01:19:48 +00:00