OSDN Git Service

drm/i915: Turn off the CUS when turning off a HDR plane
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Fri, 15 Mar 2019 19:54:45 +0000 (21:54 +0200)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Mon, 18 Mar 2019 15:47:03 +0000 (17:47 +0200)
We're currently leaving the CUS enabled if we disable the
master plane directly after scanning out NV12.

Could perhaps cause the selected slave plane to misbehave
if we try to use it for scanning out something non-NV12?

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190315195445.26527-2-ville.syrjala@linux.intel.com
Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110032

drivers/gpu/drm/i915/intel_sprite.c

index e00559d..268fb34 100644 (file)
@@ -622,6 +622,9 @@ skl_disable_plane(struct intel_plane *plane,
 
        spin_lock_irqsave(&dev_priv->uncore.lock, irqflags);
 
+       if (icl_is_hdr_plane(dev_priv, plane_id))
+               I915_WRITE_FW(PLANE_CUS_CTL(pipe, plane_id), 0);
+
        skl_write_plane_wm(plane, crtc_state);
 
        I915_WRITE_FW(PLANE_CTL(pipe, plane_id), 0);