• Chris Wilson's avatar
    drm/i915: Allow DRM_ROOT_ONLY|DRM_MASTER to submit privileged batchbuffers · d7d4eedd
    Chris Wilson authored
    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: default avatarJesse Barnes <jbarnes@virtuousgeek.org>
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
    d7d4eedd
intel_ringbuffer.c 43.5 KB