summaryrefslogtreecommitdiffstats
path: root/drivers/char/drm/i915_drv.h
Commit message (Collapse)AuthorAgeFilesLines
* drm: reorganise drm tree to be more future proof.Dave Airlie2008-07-141-1142/+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>
* drm/i915: add support for Intel series 4 chipsets.Zhenyu Wang2008-06-201-2/+9
| | | | | Signed-off-by: Zhenyu Wang <zhenyu.z.wang@intel.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
* drm/i915: save and restore dsparb and d_state registers.Keith Packard2008-05-071-0/+10
| | | | Signed-off-by: Dave Airlie <airlied@redhat.com>
* drm/i915: fix off by one in VGA save/restore of AR & CR regs.Jesse Barnes2008-05-071-2/+2
| | | | | | turns out it's important to save/restore AR14 in particular. Signed-off-by: Dave Airlie <airlied@redhat.com>
* Revert "drm/vbl rework: rework how the drm deals with vblank."Dave Airlie2008-05-071-90/+11
| | | | | | | | | | 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>
* drivers/char: replace remaining __FUNCTION__ occurrencesHarvey Harrison2008-04-301-1/+1
| | | | | | | | __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>
* drm/vbl rework: rework how the drm deals with vblank.Jesse Barnes2008-04-261-11/+90
| | | | | | | | | | | | | 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>
* drm/i915: Handle tiled buffers in vblank taskletKeith Packard2008-04-261-0/+2
| | | | | | | The vblank tasklet update code must build 2D blt commands with the appropriate tiled flags Signed-off-by: Dave Airlie <airlied@redhat.com>
* fix IS_I9XX macro in i915 DRM driverJesse Barnes2008-04-061-2/+2
| | | | | | | | | | | | | | Now that we're mapping registers in the DRM driver at load time, the driver actually checks the PCI ID, so we need to make sure the macros have all the right bits (and longer term use the DRM headers as the sole copy of the PCI & register definitions). This patch adds 945GME support to the DRM headers, fixing a regression reported in http://bugzilla.kernel.org/show_bug.cgi?id=10395. Tested-by: Alexander Oltu <alexander@all-2.com> Signed-off-by: Jesse Barnes <jesse.barnes@intel.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* drm/i915 more registers for S3 (DSPCLK_GATE_D, CACHE_MODE_0, MI_ARB_STATE)Keith Packard2008-02-201-0/+10
| | | | | | | Failing to preserve the MI_ARB_STATE register was causing FIFO underruns on the VGA output on my HP 2510p after resume. Signed-off-by: Dave Airlie <airlied@redhat.com>
* drm/i915: save/restore interrupt stateJesse Barnes2008-02-201-0/+5
| | | | | | | | | On resume, if the interrupt state isn't restored correctly, we may end up with a flood of unexpected or ill-timed interrupts, which could cause the kernel to disable the interrupt or vblank events to happen at the wrong time. So save/restore them properly. Signed-off-by: Dave Airlie <airlied@linux.ie>
* i915: wrap chipset types requiring hw status set ioctlZhenyu Wang2008-02-201-0/+2
| | | | | | | 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>
* i915: Fix GR register array size off-by-one bugJesse Barnes2008-02-071-1/+1
| | | | | | | | | | Make sure we have enough room for all the GR registers or we'll end up clobbering the AR index register (which should actually be harmless unless the BIOS is making an assumption about it). Noticed-by: Jens Axboe <jens.axboe@oracle.com> Signed-off-by: Jesse Barnes <jesse.barnes@intel.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* i915: Add chipset id for Intel Integrated Graphics DeviceZhenyu Wang2008-02-071-2/+5
| | | | | | | This adds new chipset id in drm. Signed-off-by: Zhenyu Wang <zhenyu.z.wang@intel.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
* drm: cleanup DRM_DEBUG() parametersMárton Németh2008-02-071-3/+2
| | | | | | | | | | 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>
* drm/i915: add support for E7221 chipsetCarlos Martín2008-02-071-1/+1
| | | | | | E7221 chipset is a server version of the i915. Signed-off-by: Dave Airlie <airlied@linux.ie>
* i915: add suspend/resume supportJesse Barnes2008-02-071-1/+789
| | | | | | | | | 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>
* drm: run cleanfile across drm treeDave Airlie2008-02-071-25/+25
| | | | Signed-off-by: Dave Airlie <airlied@linux.ie>
* drm: Replace DRM_IOCTL_ARGS with (dev, data, file_priv) and remove DRM_DEVICE.Eric Anholt2007-10-151-10/+19
| | | | | | | | | 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>
* drm: Replace filp in ioctl arguments with drm_file *file_priv.Eric Anholt2007-10-151-3/+4
| | | | | | | | | | 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>
* i915: make vbl interrupts work properly on i965g/gm hw.Dave Airlie2007-09-271-0/+6
| | | | | | | | | | | | This code is ported from the DRM git tree and allows the vblank interrupts to function on the i965 hw. It also requires a change in Mesa's 965 driver to actually use them. [ Without this patch, my 965GM drops vblank interrupts - Jesse ] Signed-off-by: Dave Airlie <airlied@linux.ie> Acked-by: Jesse Barnes <jesse.barnes@intel.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* drm/i915: Fix i965 secured batchbuffer usageDave Airlie2007-08-061-0/+1
| | | | | | | | | | 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>
* drm: remove drm_file_t, drm_device_t and drm_head_t typedefsDave Airlie2007-07-111-11/+11
| | | | | | some drivers still todo. Signed-off-by: Dave Airlie <airlied@linux.ie>
* drm/i915: Add support for the G33, Q33, and Q35 chipsets.Wang Zhenyu2007-06-101-0/+2
| | | | | | | | 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>
* drm: i915 updates=?utf-8?q?Michel_D=C3=A4nzer?=2006-12-071-1/+3
| | | | | | | | | Add support for DRM_VBLANK_NEXTONMISS. Bump minor for swap scheduling ioctl and secondary vblank support. Avoid mis-counting vblank interrupts when they're only enabled for pipe A. Only schedule vblank tasklet if there are scheduled swaps pending. Signed-off-by: Dave Airlie <airlied@linux.ie>
* drm: i915: Add ioctl for scheduling buffer swaps at vertical blanks.=?utf-8?q?Michel_D=C3=A4nzer?=2006-12-071-0/+17
| | | | | | | 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>
* drm: add support for secondary vertical blank interrupt to i915=?utf-8?q?Michel_D=C3=A4nzer?=2006-12-071-0/+1
| | | | | | | | When the vertical blank interrupt is enabled for both pipes, pipe A is considered primary and pipe B secondary. When it's only enabled for one pipe, it's always considered primary for backwards compatibility. Signed-off-by: Dave Airlie <airlied@linux.ie>
* drm: Add support for Intel i965G chipsets.Alan Hourihane2006-09-221-4/+6
| | | | | | | | 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>
* Add i915 ioctls to configure pipes for vblank interrupt.Dave Airlie2006-06-241-1/+5
| | | | | | | | | 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>
* drm: i915 patches from Tungsten GraphicsDave Airlie2006-01-251-2/+4
| | | | | | | | 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>
* drm: update to i915 1.3.0Dave Airlie2006-01-021-16/+23
| | | | | | | Add support for vblank ioctls to i915 driver From: Dave Airlie <airlied@linux.ie> Signed-off-by: Dave Airlie <airlied@linux.ie>
* drm: rename driver hooks more understandablyDave Airlie2005-11-101-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* drm: fix all sparse warning on 32-bit x86Dave Airlie2005-09-301-0/+3
| | | | | | Finally cleaned up the sparse warnings for the drm. Signed-off-by: Dave Airlie <airlied@linux.ie>
* drm: lindent the drm directory.Dave Airlie2005-09-251-7/+6
| | | | | | | | | 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>
* drm: add test for AGP devices and driver override for it.Dave Airlie2005-07-101-0/+1
| | | | | | | | | | | | | | | | | | 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>
* drm: update support for drm pci buffersDave Airlie2005-07-101-1/+2
| | | | | | | | 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>
* drm: fix stupid missing semicolon.Dave Airlie2005-07-101-1/+1
| | | | | | I fixed this in one git tree but that wasn't the one I pushed... Signed-off-by: Dave Airlie <airlied@linux.ie>
* Merge head 'drm-fixes' of ↵Linus Torvalds2005-07-091-10/+0
|\ | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/airlied/drm-2.6
| * drm: misc cleanupDave Airlie2005-07-071-10/+0
| | | | | | | | | | | | | | | | | | | | | | 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>
* | drm: add 32/64 support for MGA/R128/i915Dave Airlie2005-07-071-0/+4
|/ | | | | | | This adds compatiblity ioctls for mga/r128 and i915 DRM drivers. From: Paul Mackerras, David Airlie, Alan Hourihane, Egbert Eich. Signed-off-by: David Airlie <airlied@linux.ie>
* Add missing license texts from Tungsten Graphics.Dave Airlie2005-06-231-2/+22
| | | | | From: Alan Hourihane Signed-off-by: David Airlie <airlied@linux.ie>
* Linux-2.6.12-rc2v2.6.12-rc2Linus Torvalds2005-04-161-0/+243
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!
OpenPOWER on IntegriCloud