summaryrefslogtreecommitdiff
path: root/linux-core/drmP.h
AgeCommit message (Collapse)Author
2003-11-04Memory layout transition:Michel Daenzer
the 2D driver initializes MC_FB_LOCATION and related registers sanely the DRM deduces the layout from these registers clients use the new SETPARAM ioctl to tell the DRM where they think the framebuffer is located in the card's address space the DRM uses all this information to check client state and fix it up if necessary This is a prerequisite for things like direct rendering with IGP chips and video capturing.
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.
2003-10-17- Move IRQ functions from drm_dma.h to new drm_irq.h and disentangle themEric Anholt
from __HAVE_DMA. This will be useful for adding vblank sync support to sis and tdfx. Rename dma_service to irq_handler, which is more accurately what it is. - Fix the #if _HAVE_DMA_IRQ in radeon, r128, mga, i810, i830, gamma to have the right number of underscores. This may have been a problem in the case that the server died without doing its DRM_IOCTL_CONTROL to uninit.
2003-10-17- Converted Linux drivers to initialize DRM instances based on PCI IDs, notEric Anholt
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-08-29Add DRM(calloc), which is convenient, used by the new sis code, and takesEric Anholt
advantage of M_ZERO on BSDs.
2003-07-29IRQ code cleanup suggested by Linus TorvaldsMichel Daenzer
i830 build fix
2003-07-25Compile fixes for recent 2.5/2.6 Linux kernels. I hope this doesn't breakMichel Daenzer
the i830 driver or the BSDs. :)
2003-07-04Don't need to include linux/wrapper.h - we only use Set/ClearPageReservedLeif Delgass
from linux/mm.h now and wrapper.h has been removed in 2.5.69 and later.
2003-06-19Revert the janitorial - that works is now on the new branchJose Fonseca
newdrm-0-0-1-branch.
2003-06-14Move the linux AGP includes into drm_agp.h and only define the AGP dataJose Fonseca
structures if AGP support is enabled in the kernel (__REALLY_HAVE_AGP). This fixes the compile errors on kernels without AGP support.
2003-06-03Split declarations/definitions in drm_scatter.h into drm_sg.h/drm_sg_tmp.hJose Fonseca
respectively. Splited the work out of the ioctls and renamed (with the _ioctl prefix). Added some more documentation. Did the same for drm_sgpsupport.h.
2003-05-27Merged DRM documentation.Jose Fonseca
2003-05-16Support AGP bridges where the AGP aperture can't be accessed directly byMichel Daenzer
the CPU (David Mosberger, Benjamin Herrenschmidt, myself, Paul Mackerras, Jeff Wiedemeier)
2003-04-26move prototypes for gamma functions to gamma_drv.hKeith Whitwell
2003-04-24Remove unused dev->map_count. We always iterate the maplist withLeif Delgass
list_for_each() and the count is not updated or used for stats.
2003-04-24Remove #if 0'd code and some unused string functionsKeith Whitwell
2003-04-23Install dummy/noop read & poll fops unless the driver has replacements.Keith Whitwell
2003-04-22Rename drm_lists.h to gamma_lists.hKeith Whitwell
2003-04-22Move the excitingly named DRM(flush_block_and_flush) and friends toKeith Whitwell
gamma-specific code. Fix templates so i8x0 drivers don't have to define __HAVE_DMA_WAITLIST.
2003-04-22Move a chunk of gamma-specific code out of drm_dma.h. Remove unusedKeith Whitwell
'DRM_FLAG_NOCTX' option.
2003-04-22remove unused dma histogram codeKeith Whitwell
2003-04-22remove DRM read, poll and write_stringKeith Whitwell
2003-04-17Bring some drm module changes over from the XFree86 trunk:David Dawes
- Reset 'bound' flag for an agp entry after undbind succeeded in drm_agpsupport.h (Egbert Eich). - Ignore hw_lock for drm device if lock was set by a different instance (ie Xserver) to prevent second server from spinning in driver release function (currently only relevant for i8xx drm drivers) (David Dawes). - Use the agpgart "key" for the unique handle for bindings rather than the memory address (the key is guaranteed to be unique) (David Dawes).
2003-04-17Fix DRM module build on 2.5.41 and later kernels (tqueue -> workqueue).David Dawes
2003-04-08Use list_entry() to get container struct from struct list_head pointers.Leif Delgass
Build fix for RedHat 9 kernel (5 args to remap_page_range()).
2003-03-28merged drm-filp-0-1-branchKeith Whitwell
2003-03-25linux merge for drmAlan Hourihane
2003-02-21Merge from bsd-4-0-0-branch.Eric Anholt
2003-01-11limit number of pending vblank signals to 100 to prevent DoS, and minorMichel Daenzer
cleanups
2002-12-11remove agpgart informationalKeith Whitwell
2002-12-03vertical blank interrupt cleanups: use spinlock instead of semaphore, sendMichel Daenzer
signal directly from interrupt handler instead of using a taskqueue (based on feedback by Linus Torvalds)
2002-11-30vertical blank ioctl can send signal instead of blockingMichel Daenzer
2002-09-25common ioctl to wait for vertical blank IRQsMichel Daenzer
2002-09-11- Fix various bugs in the DRI support for the i830 and i845G (KeithDavid Dawes
Whitwell). - Major rework of the 2D i830/i845G support, including: - Improve VESA mode selection, and fix refresh rate selection. - Don't duplicate functions provided in the vbe modules. - Don't duplicate functions provided in the vgahw module. - Rewrite memory allocation. - Rewrite initialisation and save/restore state handling. - Decouple the i810 support from i830 and later. - Remove various unnecessary hacks and workarounds. - Fix an 845G problem with the ring buffer not in pre-allocated memory. - Fix screen blanking. - Fix some HW cursor glitches, and turn HW cursor off at VT switch and exit. - Don't attempt to use the i830's function 1 entity. - Fix problems with option handling. (David Dawes). - Add mode VBE-aware mode handling functions to the vbe module (David Dawes).
2002-08-29standardize use of __FUNCTION__ (Linus)Keith Whitwell
2002-08-22Don't (re)define vmalloc_to_page for kernel >= 2.4.19, as it has beenLeif Delgass
backported from 2.5.x. Also fix a couple of incorrect LINUX_VERSION_CODE tests and fix header dependency for r128, radeon when building without AGP.
2002-07-05merged bsd-3-0-0-branchAlan Hourihane
2002-05-16Allow drm to build under 2.4 and 2.5(.14)Keith Whitwell
2002-02-02wrapper for ioremap_nocache() like for ioremap() (Paul Mundt)Michel Daenzer
2001-10-22merge kernel 2.4.13-pre6.Alan Hourihane
2001-09-25merge with 2.4.10 kernelAlan Hourihane
2001-09-18remove Linux 2.3.x cruft.Alan Hourihane
2001-08-19No one's maintaining 2.2.x support - so remove all the cruft.Alan Hourihane
2001-08-14A few warning fixes when actually building under 2.4.9-pre2 + someJeff Hartmann
reformating
2001-08-13Sync with Linus 2.4.9-pre2 + make all nopage routines more alikeJeff Hartmann
2001-08-10Commit Keith Owens kernel Makefile changes, merge and commit alpha patchJeff Hartmann
set from Jay Estabrook (sans some mga modifications which broke other arch's.)
2001-08-08Update to the code I sent Linus and Alan this morning. Added some missingJeff Hartmann
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-04-30- PCIGART patches for Alpha from CompaqKevin E Martin
2001-04-06Handle drivers that don't have __HAVE_SG defined.Alan Hourihane
2001-04-05Merged ati-pcigart-1-0-0Kevin E Martin