diff options
| author | Ping Li <pingli@codeaurora.org> | 2015-03-17 18:36:55 -0700 |
|---|---|---|
| committer | David Keitel <dkeitel@codeaurora.org> | 2016-03-23 20:41:00 -0700 |
| commit | 0e4cb72b71dfa0503a9ac9f16f67e1cdee112cd0 (patch) | |
| tree | 4cca07ff1738938af48de9cb2b5a6a61a8f9f9bb | |
| parent | 699a73beab1352938dad254ef29451e97946a505 (diff) | |
msm: mdss: Unblock PP and hist ioctls when PU is enabled
Currently driver has checks to ensure that partial update feature
and post-processing feature are mutually exclusive. Ideally, this
enforcement should be done by clients of PP driver. This patch
removes all the partial update status checks for PP ioctls.
Change-Id: I0e50c16c3647dcebdf2eff37c632e554cc51002b
Signed-off-by: Ping Li <pingli@codeaurora.org>
| -rw-r--r-- | drivers/video/fbdev/msm/mdss_mdp_overlay.c | 70 |
1 files changed, 0 insertions, 70 deletions
diff --git a/drivers/video/fbdev/msm/mdss_mdp_overlay.c b/drivers/video/fbdev/msm/mdss_mdp_overlay.c index 235b06a921f7..7a2da7717def 100644 --- a/drivers/video/fbdev/msm/mdss_mdp_overlay.c +++ b/drivers/video/fbdev/msm/mdss_mdp_overlay.c @@ -3463,62 +3463,6 @@ static int mdss_bl_scale_config(struct msm_fb_data_type *mfd, return ret; } -static int mdss_mdp_pp_is_disable_op(struct msmfb_mdp_pp *pp) -{ - int flags = 0, ret = 0; - switch (pp->op) { - case mdp_op_pa_cfg: - flags = pp->data.pa_cfg_data.pa_data.flags; - break; - case mdp_op_pa_v2_cfg: - flags = pp->data.pa_v2_cfg_data.pa_v2_data.flags; - break; - case mdp_op_pcc_cfg: - flags = pp->data.pcc_cfg_data.ops; - break; - case mdp_op_lut_cfg: - switch (pp->data.lut_cfg_data.lut_type) { - case mdp_lut_igc: - flags = pp->data.lut_cfg_data.data.igc_lut_data.ops; - break; - case mdp_lut_pgc: - flags = pp->data.lut_cfg_data.data.pgc_lut_data.flags; - break; - case mdp_lut_hist: - flags = pp->data.lut_cfg_data.data.hist_lut_data.ops; - break; - default: - break; - } - break; - case mdp_op_dither_cfg: - flags = pp->data.dither_cfg_data.flags; - break; - case mdp_op_gamut_cfg: - flags = pp->data.gamut_cfg_data.flags; - break; - case mdp_op_ad_cfg: - flags = pp->data.ad_init_cfg.ops; - break; - case mdp_bl_scale_cfg: - flags = MDP_PP_OPS_DISABLE; - break; - case mdp_op_ad_input: - case mdp_op_calib_cfg: - case mdp_op_calib_mode: - case mdp_op_calib_buffer: - case mdp_op_calib_dcm_state: - break; - default: - pr_err("Unsupported request to MDP_PP IOCTL. %d = op\n", - pp->op); - break; - } - if (flags & MDP_PP_OPS_DISABLE) - ret = 1; - return ret; -} - static int mdss_mdp_pp_ioctl(struct msm_fb_data_type *mfd, void __user *argp) { @@ -3526,18 +3470,11 @@ static int mdss_mdp_pp_ioctl(struct msm_fb_data_type *mfd, struct msmfb_mdp_pp mdp_pp; u32 copyback = 0; u32 copy_from_kernel = 0; - struct mdss_overlay_private *mdp5_data = mfd_to_mdp5_data(mfd); ret = copy_from_user(&mdp_pp, argp, sizeof(mdp_pp)); if (ret) return ret; - if (mfd->panel_info->partial_update_enabled && mdp5_data->dyn_pu_state - && !mdss_mdp_pp_is_disable_op(&mdp_pp)) { - pr_debug("Partial update feature is enabled.\n"); - return -EPERM; - } - /* Supprt only MDP register read/write and exit_dcm in DCM state*/ if (mfd->dcm_state == DCM_ENTER && @@ -3646,17 +3583,10 @@ static int mdss_mdp_histo_ioctl(struct msm_fb_data_type *mfd, u32 cmd, struct mdss_data_type *mdata = mdss_mdp_get_mdata(); u32 block; static int req = -1; - struct mdss_overlay_private *mdp5_data = mfd_to_mdp5_data(mfd); if (!mdata) return -EPERM; - if (mfd->panel_info->partial_update_enabled && mdp5_data->dyn_pu_state - && (cmd != MSMFB_HISTOGRAM_STOP)) { - pr_debug("Partial update feature is enabled.\n"); - return -EPERM; - } - switch (cmd) { case MSMFB_HISTOGRAM_START: if (mdss_fb_is_power_off(mfd)) |
