]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915: Nuke INTEL_OUTPUT_FORMAT_INVALID
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Fri, 5 Feb 2021 20:23:22 +0000 (22:23 +0200)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Thu, 18 Feb 2021 16:13:49 +0000 (18:13 +0200)
commit68e0f379ddd6f3b34b2e861aa67eb97d1543ee07
treecbabbea8052d0b332657ece640b4078ede4b9634
parent305dc0bcf2259d9255eb268e7a76d768ca6791d1
drm/i915: Nuke INTEL_OUTPUT_FORMAT_INVALID

We tend to use output_format!=RGB as a shorthand for YCbCr, but
this fails if we have a disabled crtc where output_format==INVALID.
We're now getting some fail from intel_color_check() when we have:
 hw.enable==false
 hw.ctm!=NULL
 output_format==INVALID

Let's avoid that by throwing INTEL_OUTPUT_FORMAT_INVALID to the
dumpster, and thus everything defaults to RGB when the crtc
is disabled.

This does beg the deeper question of how much of the state
should we in fact be validating when hw/uapi.enable==false.
And should we even be doing the uapi->hw copy when
uapi.enable==false? So far I've not been able to come up with
satisfactory answers for myself, so I'm putting it off for the
moment.

Cc: Lee Shawn C <shawn.c.lee@intel.com>
Fixes: 8745aa48ed22 ("drm/i915: support two CSC module on gen11 and later")
Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/2964
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210205202322.27608-1-ville.syrjala@linux.intel.com
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
drivers/gpu/drm/i915/display/intel_crtc.c
drivers/gpu/drm/i915/display/intel_display.c
drivers/gpu/drm/i915/display/intel_display_types.h