Loading drivers/video/msm/mdss/mdss_mdp_intf_writeback.c +9 −1 Original line number Diff line number Diff line Loading @@ -251,6 +251,7 @@ static int mdss_mdp_writeback_prepare_rot(struct mdss_mdp_ctl *ctl, void *arg) struct mdss_mdp_writeback_arg *wb_args; struct mdss_mdp_rotator_session *rot; struct mdss_data_type *mdata; struct mdss_mdp_format_params *fmt; u32 format; ctx = (struct mdss_mdp_writeback_ctx *) ctl->priv_data; Loading Loading @@ -288,8 +289,15 @@ static int mdss_mdp_writeback_prepare_rot(struct mdss_mdp_ctl *ctl, void *arg) ctx->rot90 = !!(rot->flags & MDP_ROT_90); fmt = mdss_mdp_get_format_params(rot->format); if (!fmt) { pr_err("invalid pipe format %d\n", rot->format); return -EINVAL; } if (ctx->bwc_mode || (ctx->rot90 && (mdata->mdp_rev < MDSS_MDP_HW_REV_102))) ((mdata->mdp_rev < MDSS_MDP_HW_REV_102) || !fmt->is_yuv))) format = mdss_mdp_get_rotator_dst_format(rot->format, 1); else format = mdss_mdp_get_rotator_dst_format(rot->format, 0); Loading drivers/video/msm/mdss/mdss_mdp_overlay.c +11 −5 Original line number Diff line number Diff line Loading @@ -414,16 +414,22 @@ static int mdss_mdp_overlay_pipe_setup(struct msm_fb_data_type *mfd, pr_debug("pipe ctl=%u req id=%x mux=%d\n", mdp5_data->ctl->num, req->id, mixer_mux); fmt = mdss_mdp_get_format_params(req->src.format); if (!fmt) { pr_err("invalid pipe format %d\n", req->src.format); return -EINVAL; } if ((req->flags & MDP_BWC_EN) || ((req->flags & MDP_SOURCE_ROTATED_90) && (mdata->mdp_rev < MDSS_MDP_HW_REV_102))) && ((mdata->mdp_rev < MDSS_MDP_HW_REV_102) || !fmt->is_yuv))) { req->src.format = mdss_mdp_get_rotator_dst_format(req->src.format, 1); fmt = mdss_mdp_get_format_params(req->src.format); if (!fmt) { pr_err("invalid pipe format %d\n", req->src.format); return -EINVAL; } } ret = mdss_mdp_overlay_req_check(mfd, req, fmt); if (ret) Loading Loading
drivers/video/msm/mdss/mdss_mdp_intf_writeback.c +9 −1 Original line number Diff line number Diff line Loading @@ -251,6 +251,7 @@ static int mdss_mdp_writeback_prepare_rot(struct mdss_mdp_ctl *ctl, void *arg) struct mdss_mdp_writeback_arg *wb_args; struct mdss_mdp_rotator_session *rot; struct mdss_data_type *mdata; struct mdss_mdp_format_params *fmt; u32 format; ctx = (struct mdss_mdp_writeback_ctx *) ctl->priv_data; Loading Loading @@ -288,8 +289,15 @@ static int mdss_mdp_writeback_prepare_rot(struct mdss_mdp_ctl *ctl, void *arg) ctx->rot90 = !!(rot->flags & MDP_ROT_90); fmt = mdss_mdp_get_format_params(rot->format); if (!fmt) { pr_err("invalid pipe format %d\n", rot->format); return -EINVAL; } if (ctx->bwc_mode || (ctx->rot90 && (mdata->mdp_rev < MDSS_MDP_HW_REV_102))) ((mdata->mdp_rev < MDSS_MDP_HW_REV_102) || !fmt->is_yuv))) format = mdss_mdp_get_rotator_dst_format(rot->format, 1); else format = mdss_mdp_get_rotator_dst_format(rot->format, 0); Loading
drivers/video/msm/mdss/mdss_mdp_overlay.c +11 −5 Original line number Diff line number Diff line Loading @@ -414,16 +414,22 @@ static int mdss_mdp_overlay_pipe_setup(struct msm_fb_data_type *mfd, pr_debug("pipe ctl=%u req id=%x mux=%d\n", mdp5_data->ctl->num, req->id, mixer_mux); fmt = mdss_mdp_get_format_params(req->src.format); if (!fmt) { pr_err("invalid pipe format %d\n", req->src.format); return -EINVAL; } if ((req->flags & MDP_BWC_EN) || ((req->flags & MDP_SOURCE_ROTATED_90) && (mdata->mdp_rev < MDSS_MDP_HW_REV_102))) && ((mdata->mdp_rev < MDSS_MDP_HW_REV_102) || !fmt->is_yuv))) { req->src.format = mdss_mdp_get_rotator_dst_format(req->src.format, 1); fmt = mdss_mdp_get_format_params(req->src.format); if (!fmt) { pr_err("invalid pipe format %d\n", req->src.format); return -EINVAL; } } ret = mdss_mdp_overlay_req_check(mfd, req, fmt); if (ret) Loading