RE: [2/2] drm/amd: use fixed dsc bits-per-pixel from edid

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



[Public]

Hi,

Thanks for the patch and it LGTM.
Feel free to add
Reviewed-by: Wayne Lin <Wayne.Lin@xxxxxxx>

> -----Original Message-----
> From: Yaroslav Bolyukin <iam@xxxxxxx>
> Sent: Sunday, February 13, 2022 9:31 PM
> To: linux-kernel@xxxxxxxxxxxxxxx; dri-devel@xxxxxxxxxxxxxxxxxxxxx; amd-gfx@xxxxxxxxxxxxxxxxxxxxx
> Cc: Thomas Zimmermann <tzimmermann@xxxxxxx>; David Airlie <airlied@xxxxxxxx>; Rodrigo Siqueira <Rodrigo.Siqueira@xxxxxxx>; Pan,
> Xinhui <Xinhui.Pan@xxxxxxx>; Leo Li <sunpeng.li@xxxxxxx>; Alex Deucher <alexander.deucher@xxxxxxx>; Christian K?nig
> <christian.koenig@xxxxxxx>; Yaroslav Bolyukin <iam@xxxxxxx>
> Subject: [2/2] drm/amd: use fixed dsc bits-per-pixel from edid
>
> VESA vendor header from DisplayID spec may contain fixed bit per pixel rate, it should be respected by drm driver
>
> Signed-off-by: Yaroslav Bolyukin <iam@xxxxxxx>
> ---
>  drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c | 2 ++
>  drivers/gpu/drm/amd/display/dc/core/dc_stream.c           | 3 ++-
>  drivers/gpu/drm/amd/display/dc/dc_types.h                 | 3 +++
>  3 files changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c
> b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c
> index 29f07c26d..b34dd89ae 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c
> @@ -118,6 +118,8 @@ enum dc_edid_status dm_helpers_parse_edid_caps(
>
>       edid_caps->edid_hdmi = connector->display_info.is_hdmi;
>
> +     edid_caps->dsc_fixed_bits_per_pixel_x16 =
> +connector->display_info.dp_dsc_bpp;
> +
>       sad_count = drm_edid_to_sad((struct edid *) edid->raw_edid, &sads);
>       if (sad_count <= 0)
>               return result;
> diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_stream.c b/drivers/gpu/drm/amd/display/dc/core/dc_stream.c
> index 57cf4cb82..f8516ec70 100644
> --- a/drivers/gpu/drm/amd/display/dc/core/dc_stream.c
> +++ b/drivers/gpu/drm/amd/display/dc/core/dc_stream.c
> @@ -105,6 +105,8 @@ static bool dc_stream_construct(struct dc_stream_state *stream,
>
>       /* EDID CAP translation for HDMI 2.0 */
>       stream->timing.flags.LTE_340MCSC_SCRAMBLE = dc_sink_data->edid_caps.lte_340mcsc_scramble;
> +     stream->timing.dsc_fixed_bits_per_pixel_x16 =
> +             dc_sink_data->edid_caps.dsc_fixed_bits_per_pixel_x16;
>
>       memset(&stream->timing.dsc_cfg, 0, sizeof(stream->timing.dsc_cfg));
>       stream->timing.dsc_cfg.num_slices_h = 0; @@ -738,4 +740,3 @@ void dc_stream_log(const struct dc *dc, const struct
> dc_stream_state *stream)
>                       "\tlink: %d\n",
>                       stream->link->link_index);
>  }
> -
> diff --git a/drivers/gpu/drm/amd/display/dc/dc_types.h b/drivers/gpu/drm/amd/display/dc/dc_types.h
> index 0285a4b38..ce2e11d70 100644
> --- a/drivers/gpu/drm/amd/display/dc/dc_types.h
> +++ b/drivers/gpu/drm/amd/display/dc/dc_types.h
> @@ -227,6 +227,9 @@ struct dc_edid_caps {
>       bool edid_hdmi;
>       bool hdr_supported;
>
> +     /* DisplayPort caps */
> +     uint32_t dsc_fixed_bits_per_pixel_x16;
> +
>       struct dc_panel_patch panel_patch;
>  };
>
--
Regards,
Wayne Lin




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux