mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 19:21:31 -04:00
kernel/display : Add dsi pps disable configuration function
Modify: some panel ICs can't decode platform pps code, use panel's own pps parameters.So add this feature do disable platform sent pps. Change-Id: I95926e86f12c3486aa3ebc684a872d7e3fe7d6f2 Reviewed-on: https://gerrit.mot.com/2205094 SME-Granted: SME Approvals Granted SLTApproved: Slta Waiver Tested-by: Jira Key Reviewed-by: Dezhen Hou <[email protected]> Reviewed-by: Yeqing Wang <[email protected]> Reviewed-by: Huosheng Liao <[email protected]> Submit-Approved: Jira Key Reviewed-on: https://gerrit.mot.com/2273817 Reviewed-by: gaoyx9 <[email protected]> Submit-Approved: gaoyx9 <[email protected]> Tested-by: gaoyx9 <[email protected]>
This commit is contained in:
parent
73f16f7298
commit
25c2a63dd5
3 changed files with 11 additions and 5 deletions
|
|
@ -665,6 +665,7 @@ struct dsi_display_mode_priv_info {
|
|||
struct msm_display_dsc_info dsc;
|
||||
struct msm_display_vdc_info vdc;
|
||||
bool dsc_enabled;
|
||||
bool panel_dsc_update_pps_disable;
|
||||
bool vdc_enabled;
|
||||
struct msm_ratio pclk_scale;
|
||||
struct msm_roi_caps roi_caps;
|
||||
|
|
|
|||
|
|
@ -9190,11 +9190,13 @@ int dsi_display_enable(struct dsi_display *display)
|
|||
if ((mode->priv_info->dsc_enabled ||
|
||||
mode->priv_info->vdc_enabled) &&
|
||||
!(mode->dsi_mode_flags & DSI_MODE_FLAG_DMS_FPS)) {
|
||||
rc = dsi_panel_update_pps(display->panel);
|
||||
if (rc) {
|
||||
DSI_ERR("[%s] panel pps cmd update failed, rc=%d\n",
|
||||
display->name, rc);
|
||||
goto error;
|
||||
if(!mode->priv_info->panel_dsc_update_pps_disable){
|
||||
rc = dsi_panel_update_pps(display->panel);
|
||||
if (rc) {
|
||||
DSI_ERR("[%s] panel pps cmd update failed, rc=%d\n",
|
||||
display->name, rc);
|
||||
goto error;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -3277,6 +3277,7 @@ static int dsi_panel_parse_dsc_params(struct dsi_display_mode *mode,
|
|||
priv_info = mode->priv_info;
|
||||
|
||||
priv_info->dsc_enabled = false;
|
||||
priv_info->panel_dsc_update_pps_disable = false;
|
||||
compression = utils->get_property(utils->data,
|
||||
"qcom,compression-mode", NULL);
|
||||
if (compression && !strcmp(compression, "dsc"))
|
||||
|
|
@ -3287,6 +3288,8 @@ static int dsi_panel_parse_dsc_params(struct dsi_display_mode *mode,
|
|||
return 0;
|
||||
}
|
||||
|
||||
priv_info->panel_dsc_update_pps_disable = utils->read_bool(utils->data,
|
||||
"qcom,mdss-dsc-update-pps-disable");
|
||||
rc = utils->read_u32(utils->data, "qcom,mdss-dsc-version", &data);
|
||||
if (rc) {
|
||||
priv_info->dsc.config.dsc_version_major = 0x1;
|
||||
|
|
|
|||
Loading…
Reference in a new issue