disp: msm: use upstream dsc config data

This change enforces dp, dsi and the sde drivers to use the
drm framework defined dsc_config data structure. As a part of this,
it introduces the sde_dsc_helper API to configure the dsc params
and creating a PPS command. Earlier each driver implemented it's
private versions leading to duplication of code. Additionaly the
helper api supports DSC spec 1.2 422 and 420 mode.

Change-Id: I25933fab08cdabbc6787079926885d1a78945e97
Signed-off-by: Abhijit Kulkarni <kabhijit@codeaurora.org>
Esse commit está contido em:
Abhijit Kulkarni
2019-05-14 10:21:07 -07:00
commit acb8d98e66
14 arquivos alterados com 705 adições e 930 exclusões

Ver arquivo

@@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-2.0-only
/*
* Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
* Copyright (c) 2017-2020, The Linux Foundation. All rights reserved.
*/
#include <linux/module.h>
@@ -2085,8 +2085,9 @@ static enum drm_mode_status dp_display_validate_mode(
dp_display->convert_to_dp_mode(dp_display, panel, mode, &dp_mode);
dsc_en = dp_mode.timing.comp_info.comp_ratio ? true : false;
mode_bpp = dsc_en ? dp_mode.timing.comp_info.dsc_info.bpp :
dp_mode.timing.bpp;
mode_bpp = dsc_en ?
DSC_BPP(dp_mode.timing.comp_info.dsc_info.config)
: dp_mode.timing.bpp;
mode_rate_khz = mode->clock * mode_bpp;
rate = drm_dp_bw_code_to_link_rate(dp->link->link_params.bw_code);