linux/include/drm
Chris Wilson d7d4eeddb8 drm/i915: Allow DRM_ROOT_ONLY|DRM_MASTER to submit privileged batchbuffers
With the introduction of per-process GTT space, the hardware designers
thought it wise to also limit the ability to write to MMIO space to only
a "secure" batch buffer. The ability to rewrite registers is the only
way to program the hardware to perform certain operations like scanline
waits (required for tear-free windowed updates). So we either have a
choice of adding an interface to perform those synchronized updates
inside the kernel, or we permit certain processes the ability to write
to the "safe" registers from within its command stream. This patch
exposes the ability to submit a SECURE batch buffer to
DRM_ROOT_ONLY|DRM_MASTER processes.

v2: Haswell split up bit8 into a ppgtt bit (still bit8) and a security
bit (bit 13, accidentally not set). Also add a comment explaining why
secure batches need a global gtt binding.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> (v1)
[danvet: added hsw fixup.]
Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2012-10-17 21:06:59 +02:00
..
i2c drm: Import driver for the sil164 I2C TMDS transmitter. 2010-08-02 10:21:13 +10:00
ttm drm/ttm: remove stale declaration and field 2012-07-24 15:30:36 +10:00
Kbuild drm/exynos: exynos_drm.h header file fixes 2012-02-15 10:29:12 +09:00
drm.h drm/prime: expose capability flags for userspace. 2012-05-18 11:12:16 +01:00
drmP.h drm/i915: Replace the array of pages with a scatterlist 2012-09-20 14:22:57 +02:00
drm_buffer.h drm: Add generic multipart buffer. 2010-02-23 09:46:20 +10:00
drm_cache.h drm/ttm: consolidate cache flushing code in one place. 2009-08-27 09:53:47 +10:00
drm_core.h drm: Fix support for PCI domains 2010-08-10 08:20:20 +10:00
drm_crtc.h drm: Export drm_probe_ddc() 2012-09-26 14:09:36 +02:00
drm_crtc_helper.h drm: Make the .mode_fixup() operations mode argument a const pointer 2012-07-19 21:52:38 -04:00
drm_dp_helper.h drm/dp: Make sink count DP 1.2 aware 2012-09-26 14:26:06 +02:00
drm_edid.h drm/edid: Add packed attribute to new gtf2 and cvt structs 2012-04-23 17:41:17 +01:00
drm_encoder_slave.h drm: Make the .mode_fixup() operations mode argument a const pointer 2012-07-19 21:52:38 -04:00
drm_fb_cma_helper.h DRM: Add DRM KMS/FB CMA helper 2012-09-18 12:28:21 +02:00
drm_fb_helper.h drm fb helper: remove unused variable crtc_id 2012-02-03 09:55:52 +00:00
drm_fixed.h drm: fixed: Add dfixed_frac 2012-04-27 09:29:35 +01:00
drm_fourcc.h Linux 3.6-rc7 2012-09-24 18:17:12 +02:00
drm_gem_cma_helper.h DRM: Add DRM GEM CMA helper 2012-09-18 12:28:21 +02:00
drm_global.h drm: move ttm global code to core drm 2010-08-04 09:46:06 +10:00
drm_hashtab.h drm: Remove unused members from struct drm_open_hash 2011-02-23 11:16:40 +10:00
drm_mem_util.h introduce SIZE_MAX 2012-05-31 17:49:26 -07:00
drm_memory.h includecheck fix: include/drm, drm_memory.h 2009-09-20 16:02:58 +05:30
drm_mm.h drm: Add colouring to the range allocator 2012-07-16 05:59:37 +10:00
drm_mode.h drm: Check for invalid cursor flags 2012-08-24 09:38:40 +10:00
drm_os_linux.h drm/i915: add i915_lp_ring_sync helper 2009-11-05 14:47:07 -08:00
drm_pciids.h drm/radeon: add some new SI pci ids 2012-08-13 10:50:53 -04:00
drm_sarea.h drm: Define SAREA_MAX for Loongson (PageSize = 16KB). 2012-08-24 09:41:10 +10:00
drm_sysfs.h drm: Enable drm drivers to add drm sysfs devices. 2009-08-19 16:08:51 +10:00
drm_usb.h drm: add usb framework 2011-02-07 13:09:42 +10:00
exynos_drm.h drm/exynos: add property for plane zpos 2012-07-27 11:13:54 +09:00
gma_drm.h gma500: fix ioctl confict 2012-03-10 13:06:04 +00:00
i810_drm.h
i915_drm.h drm/i915: Allow DRM_ROOT_ONLY|DRM_MASTER to submit privileged batchbuffers 2012-10-17 21:06:59 +02:00
intel-gtt.h drm/i915: Replace the array of pages with a scatterlist 2012-09-20 14:22:57 +02:00
mga_drm.h Fix common misspellings 2011-03-31 11:26:23 -03:00
nouveau_drm.h drm/nouveau: mark most of our ioctls as deprecated, move to compat layer 2012-07-26 10:28:15 +10:00
r128_drm.h
radeon_drm.h drm/radeon/kms: implement timestamp userspace query (v2) 2012-08-13 10:50:56 -04:00
savage_drm.h Fix common misspellings 2011-03-31 11:26:23 -03:00
sis_drm.h drm/sis: fixup sis_mm ioctl structs 2012-07-19 22:51:58 -04:00
via_drm.h drm/via: track obj->drm_fd relations in the driver 2011-12-22 00:33:19 +01:00
vmwgfx_drm.h vmwgfx: Reinstate the update_layout ioctl 2011-11-02 08:30:31 +00:00