diff options
author | Eva Huang <evahuang@google.com> | 2021-09-07 11:18:20 +0800 |
---|---|---|
committer | Eva Huang <evahuang@google.com> | 2021-09-07 11:18:20 +0800 |
commit | 662bb3b0f4c1f9e03430d2643d37ff620c22f98f (patch) | |
tree | 46268d3a59aa87bc476682907a9dcf62f66cb757 | |
parent | e471ed45e9ffa031b3a34f3fdb18d48f187cd52b (diff) | |
parent | 5c0a3b864e0c2cffe994d970b4bcea8a8066e903 (diff) | |
download | display-drivers-662bb3b0f4c1f9e03430d2643d37ff620c22f98f.tar.gz |
Merge branch 'android-msm-pixel-4.19-sc-security' into android-msm-pixel-4.19-scandroid-12.0.0_r0.14android-msm-redbull-4.19-android12
Nov 2021.1
Bug: 198397628
Change-Id: I31883ee9614843a2df8081e3b00a4ed9b0c871e8
-rw-r--r-- | msm/dsi/dsi_defs.h | 1 | ||||
-rw-r--r-- | msm/dsi/dsi_panel.c | 18 |
2 files changed, 12 insertions, 7 deletions
diff --git a/msm/dsi/dsi_defs.h b/msm/dsi/dsi_defs.h index 30fb2206..476a84e1 100644 --- a/msm/dsi/dsi_defs.h +++ b/msm/dsi/dsi_defs.h @@ -626,6 +626,7 @@ struct dsi_display_mode_priv_info { struct msm_display_topology topology; struct msm_display_dsc_info dsc; bool dsc_enabled; + bool pps_created; struct msm_roi_caps roi_caps; void *switch_data; diff --git a/msm/dsi/dsi_panel.c b/msm/dsi/dsi_panel.c index 2d9a35b9..18c4cb28 100644 --- a/msm/dsi/dsi_panel.c +++ b/msm/dsi/dsi_panel.c @@ -4574,12 +4574,17 @@ int dsi_panel_update_pps(struct dsi_panel *panel) set = &priv_info->cmd_sets[DSI_CMD_SET_PPS]; - dsi_dsc_create_pps_buf_cmd(&priv_info->dsc, panel->dsc_pps_cmd, 0); - rc = dsi_panel_create_cmd_packets(panel->dsc_pps_cmd, - DSI_CMD_PPS_SIZE, 1, set->cmds); - if (rc) { - DSI_ERR("failed to create cmd packets, rc=%d\n", rc); - goto error; + if (!priv_info->pps_created) { + dsi_dsc_create_pps_buf_cmd(&priv_info->dsc, panel->dsc_pps_cmd, 0); + rc = dsi_panel_create_cmd_packets(panel->dsc_pps_cmd, + DSI_CMD_PPS_SIZE, 1, set->cmds); + if (rc) { + DSI_ERR("failed to create cmd packets, rc=%d\n", rc); + goto error; + } + else { + priv_info->pps_created = true; + } } rc = dsi_panel_tx_cmd_set(panel, DSI_CMD_SET_PPS); @@ -4588,7 +4593,6 @@ int dsi_panel_update_pps(struct dsi_panel *panel) panel->name, rc); } - dsi_panel_destroy_cmd_packets(set); error: mutex_unlock(&panel->panel_lock); return rc; |