[Intel-gfx] [PATCH] drm/i915: Handle max_bpc==16
Souza, Jose
jose.souza at intel.com
Mon Nov 16 20:23:34 UTC 2020
On Tue, 2020-11-10 at 23:04 +0200, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> EDID can declare the maximum supported bpc up to 16,
> and apparently there are displays that do so. Currently
> we assume 12 bpc is tha max. Fix the assumption and
> toss in a MISSING_CASE() for any other value we don't
> expect to see.
>
> This fixes modesets with a display with EDID max bpc > 12.
> Previously any modeset would just silently fail on platforms
> that didn't otherwise limit this via the max_bpc property.
> In particular we don't add the max_bpc property to HDMI
> ports on gmch platforms, and thus we would see the raw
> max_bpc coming from the EDID.
>
> I suppose we could already adjust this to also allow 16bpc,
> but seeing as no current platform supports that there is
> little point.
Reviewed-by: José Roberto de Souza <jose.souza at intel.com>
>
> Cc: stable at vger.kernel.org
> Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/2632
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_display.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
> index 2729c852c668..2a6eb1ca9c8e 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -13060,10 +13060,11 @@ compute_sink_pipe_bpp(const struct drm_connector_state *conn_state,
> case 10 ... 11:
> bpp = 10 * 3;
> break;
> - case 12:
> + case 12 ... 16:
> bpp = 12 * 3;
> break;
> default:
> + MISSING_CASE(conn_state->max_bpc);
> return -EINVAL;
> }
>
>
>
>
More information about the Intel-gfx
mailing list