diff --git a/drivers/video/fbdev/msm/mdss_mdp.c b/drivers/video/fbdev/msm/mdss_mdp.c index b7e6f778f367..ee665ee92513 100644 --- a/drivers/video/fbdev/msm/mdss_mdp.c +++ b/drivers/video/fbdev/msm/mdss_mdp.c @@ -3384,14 +3384,17 @@ static int mdss_mdp_parse_dt_pipe(struct platform_device *pdev) mdata->has_panic_ctrl = of_property_read_bool(pdev->dev.of_node, "qcom,mdss-has-panic-ctrl"); if (mdata->has_panic_ctrl) { - mdss_mdp_parse_dt_pipe_panic_ctrl(pdev, - "qcom,mdss-pipe-vig-panic-ctrl-offsets", + if (mdata->vig_pipes) + mdss_mdp_parse_dt_pipe_panic_ctrl(pdev, + "qcom,mdss-pipe-vig-panic-ctrl-offsets", mdata->vig_pipes, mdata->nvig_pipes); - mdss_mdp_parse_dt_pipe_panic_ctrl(pdev, - "qcom,mdss-pipe-rgb-panic-ctrl-offsets", + if (mdata->rgb_pipes) + mdss_mdp_parse_dt_pipe_panic_ctrl(pdev, + "qcom,mdss-pipe-rgb-panic-ctrl-offsets", mdata->rgb_pipes, mdata->nrgb_pipes); - mdss_mdp_parse_dt_pipe_panic_ctrl(pdev, - "qcom,mdss-pipe-dma-panic-ctrl-offsets", + if (mdata->dma_pipes) + mdss_mdp_parse_dt_pipe_panic_ctrl(pdev, + "qcom,mdss-pipe-dma-panic-ctrl-offsets", mdata->dma_pipes, mdata->ndma_pipes); } diff --git a/drivers/video/fbdev/msm/mdss_mdp_wfd.c b/drivers/video/fbdev/msm/mdss_mdp_wfd.c index 656967831810..f04450e9974c 100644 --- a/drivers/video/fbdev/msm/mdss_mdp_wfd.c +++ b/drivers/video/fbdev/msm/mdss_mdp_wfd.c @@ -430,7 +430,7 @@ int mdss_mdp_cwb_validate(struct msm_fb_data_type *mfd, return rc; fmt = mdss_mdp_get_format_params(layer->buffer.format); - if (!(fmt->flag & VALID_MDP_WB_INTF_FORMAT)) { + if (!fmt || (fmt && !(fmt->flag & VALID_MDP_WB_INTF_FORMAT))) { pr_err("wb does not support dst fmt:%d\n", layer->buffer.format); return -EINVAL;