From 2a62dcb194e09f067aa19c6e9f93a2e7b843a56a Mon Sep 17 00:00:00 2001 From: Ping Li Date: Tue, 19 Apr 2016 18:52:10 -0700 Subject: [PATCH] msm: mdss: Properly set the PP feature cfg_payload in layers Set the PP feature cfg_payload properly to avoid invalid pointer cases. CRs-Fixed: 1004933 Change-Id: I44314b49a6ebb5dedfdedfcddd88c12eabd1f125 Signed-off-by: Ping Li --- drivers/video/fbdev/msm/mdss_mdp_pp.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/drivers/video/fbdev/msm/mdss_mdp_pp.c b/drivers/video/fbdev/msm/mdss_mdp_pp.c index 6b37100a78bf..f1247b3d0c58 100644 --- a/drivers/video/fbdev/msm/mdss_mdp_pp.c +++ b/drivers/video/fbdev/msm/mdss_mdp_pp.c @@ -7170,6 +7170,8 @@ int mdss_mdp_copy_layer_pp_info(struct mdp_input_layer *layer) pr_err("Failed to copy IGC payload, ret = %d\n", ret); goto exit_pp_info; } + } else { + pp_info->igc_cfg.cfg_payload = NULL; } if (ops & MDP_OVERLAY_PP_HIST_LUT_CFG) { ret = pp_copy_layer_hist_lut_payload(pp_info); @@ -7178,6 +7180,8 @@ int mdss_mdp_copy_layer_pp_info(struct mdp_input_layer *layer) ret); goto exit_igc; } + } else { + pp_info->hist_lut_cfg.cfg_payload = NULL; } if (ops & MDP_OVERLAY_PP_PA_V2_CFG) { ret = pp_copy_layer_pa_payload(pp_info); @@ -7185,6 +7189,8 @@ int mdss_mdp_copy_layer_pp_info(struct mdp_input_layer *layer) pr_err("Failed to copy PA payload, ret = %d\n", ret); goto exit_hist_lut; } + } else { + pp_info->pa_v2_cfg_data.cfg_payload = NULL; } if (ops & MDP_OVERLAY_PP_PCC_CFG) { ret = pp_copy_layer_pcc_payload(pp_info); @@ -7192,6 +7198,8 @@ int mdss_mdp_copy_layer_pp_info(struct mdp_input_layer *layer) pr_err("Failed to copy PCC payload, ret = %d\n", ret); goto exit_pa; } + } else { + pp_info->pcc_cfg_data.cfg_payload = NULL; } layer->pp_info = pp_info;