summaryrefslogtreecommitdiff
path: root/libdrm/xf86drm.c
AgeCommit message (Collapse)Author
2006-11-08libdrm: add support for server side functionality in libdrmDave Airlie
This adds APIs to allow the X server to use libdrm from the system rather than its own in-built copy.
2006-10-29Minor bugfix, indentation and removal of unnused variables.Thomas Hellstrom
2006-10-27Reserve the new IOCTLs also for *bsd.Thomas Hellstrom
Bump libdrm version number to 2.2.0
2006-10-27Last minute changes to support multi-page size buffer offset alignments.Thomas Hellstrom
This will come in very handy for tiled buffers on intel hardware. Also add some padding to interface structures to allow future binary backwards compatible changes.
2006-10-17Remove some debugging messages.Thomas Hellstrom
2006-10-17Remove max number of locked pages check and call, sinceThomas Hellstrom
that is now handled by the memory accounting.
2006-10-17Implement mm_lock and mm_unlock functions.Thomas Hellstrom
The mm_lock function is used when leaving vt. It evicts _all_ buffers. Buffers with the DRM_BO_NO_MOVE attribute set will be guaranteed to get the same offset when / if they are rebound.
2006-10-17Extend generality for more memory types.Thomas Hellstrom
Fix up init and destruction code.
2006-10-11Compatibility code for 2.6.15-2.6.18. It is ugly but a little comfort is thatThomas Hellstrom
it will go away in the mainstream kernel. Some bugfixes, mainly in error paths.
2006-10-11Big update:Thomas Hellstrom
Adapt for new functions in the 2.6.19 kernel. Remove the ability to have multiple regions in one TTM. This simplifies a lot of code. Remove the ability to access TTMs from user space. We don't need it anymore without ttm regions. Don't change caching policy for evicted buffers. Instead change it only when the buffer is accessed by the CPU (on the first page fault). This tremendously speeds up eviction rates. Current code is safe for kernels <= 2.6.14. Should also be OK with 2.6.19 and above.
2006-10-02Make the user_token 44-bit for TTMs, and have them occupy a unique file spaceThomas Hellstrom
starting at 0x00100000000. This will hopefully allow us to use unmap_mapping_range(). Note that user-space will need 64-bit file offset support.
2006-09-29Add support for tracking drawable information to coreMichel Dänzer
Actually make the existing ioctls for adding and removing drawables do something useful, and add another ioctl for the X server to update drawable information. The only kind of drawable information tracked so far is cliprects. (cherry picked from 29598e5253ff5c085ccf63580fd24b84db848424 commit)
2006-09-26Silence valgrind.Thomas Hellstrom
2006-09-18Alternative implementation of page table zeroing using zap page_range.Thomas Hellstrom
(Disabled for now) Fix bo_wait_idle bug. Remove stray debug message.
2006-09-18More verbose error reporting in some cases.Thomas Hellstrom
Add a buffer object waitIdle user-space function. Fix some names and minor glitches.
2006-09-15Some bugfixes.Thomas Hellstrom
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-12Use lazy fence wait when possible even for RW fences. Saves some CPU.Thomas Hellstrom
Lindent.
2006-09-12More bugfixes.Thomas Hellstrom
Disable the i915 IRQ turnoff for now since it seems to be causing problems.
2006-09-08Various bugfixes.Thomas Hellstrom
2006-09-05Multithreaded application note.Thomas Hellstrom
2006-09-05Fence all unfenced buffers function.Thomas Hellstrom
2006-09-04Libdrm function headers. Some renaming.Thomas Hellstrom
2006-09-01Flag bit pattern bugfixes. Remove some error messages.Thomas Hellstrom
2006-09-01Export buffer info on map and validate ioctls.Thomas Hellstrom
Add an info ioctl operation.
2006-09-01Various bugfixes.Thomas Hellstrom
2006-08-31More mapping synchronization.Thomas Hellstrom
libdrm validate and fencing functions.
2006-08-30Remove the buffer object hint field and use it onlyThomas Hellstrom
as an argument. Validate stub.
2006-08-30Add missing map flags.Thomas Hellstrom
2006-08-30Buffer object mapping and mapping synchronization for multiple clients.Thomas Hellstrom
2006-08-30Memory manager init and takedown.Thomas Hellstrom
2006-08-29Part of buffer object libdrm interface.Thomas Hellstrom
2006-08-29Checkpoint commit. Buffer object flags and IOCTL argument list.Thomas Hellstrom
2006-08-2964-bit IOCTL integer (Michel Dänzer & Brian Paul)Thomas Hellstrom
2006-08-28Add a 64-bit drm unsigned type for 64-bit clean IOCTLS.Thomas Hellstrom
Conversion functions in drmP.h and xf86drm.c.
2006-08-27Bugfixes.Thomas Hellstrom
2006-08-27Remove the ioctl multiplexing, and instead allow for genericThomas Hellstrom
drm ioctls 0x80 - 0xFF.
2006-08-22Add a fence object class field for future use (For example VSYNC fence objects)Thomas Hellstrom
2006-08-21User / Kernel space fence objects (device-independent part).Thomas Hellstrom
2006-02-20Formatting cleanup, dead code removal. Remove N() namespacing macro,Adam Jackson
useless. Remove SIGIO handling functions as they're server-only and properly belong in libdri.
2005-12-31Initialize sv.drm_dd_minor to "don't care" along with dd_major, to appeaseEric Anholt
valgrind.
2005-11-30Resync from Xorg head: conditional include of xorg-config.hAdam Jackson
2005-11-30Resync from Xorg head (Bug #3815, GNU/kFreeBSD hack)Adam Jackson
2005-11-29Remove redundant #ifdef stanzaAdam Jackson
2005-11-29Error checking for drmStrdup (Tilman Sauerbeck)Adam Jackson
2005-11-29fixup xf86drm.c for new headersDave Airlie
2005-10-20Remove bogus Xlib dependency.Adam Jackson
2005-04-04mirror changes made in main tree.. just happened to be doing this myselfDave Airlie
2004-08-11Bug #979: Don't include <sys/sysmacros.h> on linux, it occasionally emitsAdam Jackson
makedev() as a function call that elfloader can't resolve. Originally Gentoo Bug #41962, reported by Ryan Breen, fix feedback from Ryan Lortie.
2004-07-07Make drm/libdrm/xf86drm.c matchJon Smirl
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:
2003-10-23- Introduce a new ioctl, DRM_IOCTL_SET_VERSION. This ioctl allows theEric Anholt
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:b:d:f format. - Use the new DRICreatePCIBusID function in the *_dri.c to request the new, more exact busid format.