summaryrefslogtreecommitdiff
path: root/drivers/char/drm/i915_dma.c
AgeCommit message (Collapse)AuthorFilesLines
2008-07-14drm: reorganise drm tree to be more future proof.Dave Airlie1-858/+0
With the coming of kernel based modesetting and the memory manager stuff, the everything in one directory approach was getting very ugly and starting to be unmanageable. This restructures the drm along the lines of other kernel components. It creates a drivers/gpu/drm directory and moves the hw drivers into subdirectores. It moves the includes into an include/drm, and sets up the unifdef for the userspace headers we should be exporting. Signed-off-by: Dave Airlie <airlied@redhat.com>
2008-05-07Revert "drm/vbl rework: rework how the drm deals with vblank."Dave Airlie1-119/+41
This reverts commit ac741ab71bb39e6977694ac0cc26678d8673cda4. Okay this looks like wasn't as fully baked as I'd led myself to believe. Revert for now for further baking. Signed-off-by: Dave Airlie <airlied@redhat.com>
2008-04-30drivers/char: replace remaining __FUNCTION__ occurrencesHarvey Harrison1-2/+2
__FUNCTION__ is gcc-specific, use __func__ Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-04-26drm/vbl rework: rework how the drm deals with vblank.Jesse Barnes1-41/+119
Other Authors: Michel Dänzer <michel@tungstengraphics.com> mga: Ian Romanick <idr@us.ibm.com> via: Thomas Hellstrom <thomas-at-tungstengraphics-dot-com> This re-works the DRM internals to provide a better interface for drivers to expose vblank on multiple crtcs. It also includes work done by Michel on making i915 triple buffering and pageflipping work properly. Signed-off-by: Dave Airlie <airlied@redhat.com>
2008-03-30drm/i915: fix oops on agp=offDave Airlie1-0/+3
From Kernel BZ 10289 - not sure why anyone would boot an intel with no agp but it shouldn't crash. Signed-off-by: Dave Airlie <airlied@redhat.com>
2008-02-20i915: wrap chipset types requiring hw status set ioctlZhenyu Wang1-1/+4
Also applys to recent added new chipset. Signed-off-by: Zhenyu Wang <zhenyu.z.wang@intel.com> Signed-off-by: Dave Airlie <airlied@linux.ie>
2008-02-07drm: cleanup DRM_DEBUG() parametersMárton Németh1-3/+3
As DRM_DEBUG macro already prints out the __FUNCTION__ string (see drivers/char/drm/drmP.h), it is not worth doing this again. At some other places the ending "\n" was added. airlied:- I cleaned up a few that this patch missed also Signed-off-by: Dave Airlie <airlied@linux.ie>
2008-02-07drm: add _DRM_DRIVER flag, and re-order unload.Dave Airlie1-1/+2
Allow drivers to addmaps that won't be removed by lastclose or unload. The unload needs to be re-ordered to avoid removing the hashs before the driver has removed the final maps. Signed-off-by: Dave Airlie <airlied@linux.ie>
2008-02-07i915: add suspend/resume supportJesse Barnes1-56/+57
Add suspend/resume support to the i915 driver. Moves some of the initialization into the driver load routine, and fixes up places where we assumed no dev_private existed in some of the cleanup paths. This allows us to suspend/resume properly even if X isn't running. Signed-off-by: Dave Airlie <airlied@linux.ie>
2008-02-07drm: Initialize the AGP structure's base address at init rather than enable.Eric Anholt1-1/+1
Not all drivers call enable (intel), but they would still like to use this member in driver code. Signed-off-by: Dave Airlie <airlied@linux.ie>
2008-02-07drm: run cleanfile across drm treeDave Airlie1-1/+1
Signed-off-by: Dave Airlie <airlied@linux.ie>
2007-10-15drm: Replace DRM_IOCTL_ARGS with (dev, data, file_priv) and remove DRM_DEVICE.Eric Anholt1-81/+63
The data is now in kernel space, copied in/out as appropriate according to t This results in DRM_COPY_{TO,FROM}_USER going away, and error paths to deal with those failures. This also means that XFree86 4.2.0 support for i810 DR is lost. Signed-off-by: Dave Airlie <airlied@linux.ie>
2007-10-15drm: Replace filp in ioctl arguments with drm_file *file_priv.Eric Anholt1-6/+6
As a fallout, replace filp storage with file_priv storage for "unique identifier of a client" all over the DRM. There is a 1:1 mapping, so this should be a noop. This could be a minor performance improvement, as everyth on Linux dereferenced filp to get file_priv anyway, while only the mmap ioct went the other direction. Signed-off-by: Dave Airlie <airlied@linux.ie>
2007-10-15drm: Remove DRM_ERR OS macro.Eric Anholt1-29/+29
This was used to make all ioctl handlers return -errno on linux and errno on *BSD. Instead, just return -errno in shared code, and flip sign on return f shared code to *BSD code. Signed-off-by: Dave Airlie <airlied@linux.ie>
2007-08-07drm/i915: Fix i965 secured batchbuffer usageDave Airlie1-3/+11
This 965G and above chipsets moved the batch buffer non-secure bits to another place. This means that previous drm's allowed in-secure batchbuffers to be submitted to the hardware from non-privileged users who are logged into X and and have access to direct rendering. Signed-off-by: Dave Airlie <airlied@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-07-11drm: remove drm_file_t, drm_device_t and drm_head_t typedefsDave Airlie1-16/+16
some drivers still todo. Signed-off-by: Dave Airlie <airlied@linux.ie>
2007-07-11drm: remove a bunch of typedefs on the userspace interfaceDave Airlie1-5/+5
This moves a bunch of typedefs into a !defined __KERNEL__ to keep userspace API compatiblity, it changes all internal usages to structs/enum/unions. Signed-off-by: Dave Airlie <airlied@linux.ie>
2007-07-11drm: remove DRM_GETSAREA and replace with drm_getsarea functionDave Airlie1-1/+1
Signed-off-by: Dave Airlie <airlied@linux.ie>
2007-06-10drm/i915: Add support for the G33, Q33, and Q35 chipsets.Wang Zhenyu1-17/+70
These require that the status page be referenced by a pointer in GTT, rather than phsyical memory. So, we have the X Server allocate that memory and tell us the address, instead. Signed-off-by: Dave Airlie <airlied@linux.ie>
2007-06-10i915: add new pciids for 945GME, 965GME/GLEWang Zhenyu1-1/+2
Signed-off-by: Dave Airlie <airlied@linux.ie>
2007-04-26drm/i915: Add 965GM pci id updateWang Zhenyu1-1/+2
Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-12-07drm: i915: Add ioctl for scheduling buffer swaps at vertical blanks.=?utf-8?q?Michel_D=C3=A4nzer?=1-0/+2
This uses the core facility to schedule a driver callback that will be called ASAP after the given vertical blank interrupt with the HW lock held. Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-09-21drm: add device/vendor id to drm_device_t for compat with FreeBSD driversEric Anholt1-4/+4
Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-09-21drm: fixup i915 error codesDave Airlie1-2/+2
Frederik Deweerdt <deweerdt@free.fr> pointed this out, I fixed a missing DRM error wrapper also. Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-09-21drm: fix i965 build bugAndrew Morton1-1/+1
Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-09-21drm: Add support for Intel i965G chipsets.Alan Hourihane1-10/+31
This is a patch prepared by Guangdeng Liao based off of Tungsten Graphics's final code drop. From: Alan Hourihane <alanh@tungstengraphics.com> Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-06-24Add i915 ioctls to configure pipes for vblank interrupt.Dave Airlie1-1/+3
i915 vblanks can be generated from either pipe a or b, however a disabled pipe generates no interrupts. This change allows the X server to select which pipe generates vblank interrupts. From: Keith Packard <keith.packard@intel.com> via DRM CVS Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-03-19drm: fixup i915 breadcrumb read/writeDave Airlie1-2/+0
Some minor issues in the i915 breadcrumb code. Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-01-25drm: i915 patches from Tungsten GraphicsDave Airlie1-12/+30
Fix CMDBUFFER path, add heap destroy and flesh out sarea for rotation (Tungsten Graphics) From: Alan Hourihane <alanh@tungstengraphics.com> Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-01-02drm: update to i915 1.3.0Dave Airlie1-5/+7
Add support for vblank ioctls to i915 driver From: Dave Airlie <airlied@linux.ie> Signed-off-by: Dave Airlie <airlied@linux.ie>
2006-01-02drm: move ioctl flags to a bit field of flagsDave Airlie1-12/+12
From: Dave Airlie Signed-off-by: Dave Airlie <airlied@linux.ie>
2005-11-10drm: rename driver hooks more understandablyDave Airlie1-2/+14
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) From: Eric Anholt <anholt@freebsd.org> Signed-off-by: Dave Airlie <airlied@linux.ie>
2005-09-25drm: fix some lindent damageDave Airlie1-22/+11
Signed-off-by: Dave Airlie <airlied@linux.ie>
2005-09-25drm: lindent the drm directory.Dave Airlie1-27/+38
I've been threatening this for a while, so no point hanging around. This lindents the DRM code which was always really bad in tabbing department. I've also fixed some misnamed files in comments and removed some trailing whitespace. Signed-off-by: Dave Airlie <airlied@linux.ie>
2005-07-10drm: add test for AGP devices and driver override for it.Dave Airlie1-0/+16
Added device_is_agp callback to drm_driver. This function is called by the platform-specific drm_device_is_agp function. Added implementation of this function the the Linux-specific portion of the MGA driver to detect PCI G450 cards. Added code to the Linux-specific portion of the generic DRM layer to not initialize AGP infrastructure if the card is not AGP (this matches what already existed in BSD). Fix up i810/i830 and i915 drivers to always return AGP as they don't always report the capability. Fix the MGA to not report AGP for a card that has an AGP chip behind a PCI bridge. From: Ian Romanick, Dave Airlie, Alan Hourihane Signed-off-by: Dave Airlie <airlied@linux.ie>
2005-07-10drm: update support for drm pci buffersDave Airlie1-7/+8
The DRM needs to change the drm_pci interface for FreeBSD compatiblity, this patch introduces the drm_dma_handle_t and uses it in the Linux code. From: Tonnerre Lombard, Eric Anholt, and Sergey Vlasov Signed-off-by: David Airlie <airlied@linux.ie>
2005-07-07drm: misc cleanupDave Airlie1-36/+24
This patch contains the following cleanups: - make needlessly global functions static - remove the following unused global functions: - drm_fops.c: drm_read - i915_dma.c: i915_do_cleanup_pageflip Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Dave Airlie <airlied@linux.ie>
2005-06-23Add missing license texts from Tungsten Graphics.Dave Airlie1-2/+22
From: Alan Hourihane Signed-off-by: David Airlie <airlied@linux.ie>
2005-04-17Linux-2.6.12-rc2v2.6.12-rc2Linus Torvalds1-0/+725
Initial git repository build. I'm not bothering with the full history, even though we have it. We can create a separate "historical" git archive of that later if we want to, and in the meantime it's about 3.2GB when imported into git - space that would just make the early git days unnecessarily complicated, when we don't have a lot of good infrastructure for it. Let it rip!