-/* Copyright (c) 2012-2017, The Linux Foundation. All rights reserved.
+/* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
mdata = ctl->mdata;
- pinfo->prg_fet = mdss_mdp_get_prefetch_lines(pinfo);
if (!pinfo->prg_fet) {
pr_debug("programmable fetch is not needed/supported\n");
ctx->intf_num);
return -EINVAL;
}
+
+ pinfo->prg_fet = mdss_mdp_get_prefetch_lines(pinfo);
mdss_mdp_fetch_start_config(ctx, ctl);
if (test_bit(MDSS_QOS_VBLANK_PANIC_CTRL, mdata->mdss_qos_map))
{
if (!pdata->panel_info.default_fps) {
+ pdata->panel_info.default_prg_fet =
+ mdss_mdp_get_prefetch_lines(&pdata->panel_info);
+
/*
* This value will change dynamically once the
* actual dfps update happen in hw.
dfps_update_fps(&pdata->panel_info, new_fps);
+ /*
+ * Fetch start is pinned to default fps.
+ * Adjust programmable fetch accordingly.
+ */
pdata->panel_info.prg_fet =
- mdss_mdp_get_prefetch_lines(&pdata->panel_info);
+ (pdata->panel_info.default_prg_fet) ?
+ (pdata->panel_info.default_prg_fet + add_v_lines) : 0;
} else if (pdata->panel_info.dfps_update ==
DFPS_IMMEDIATE_PORCH_UPDATE_MODE_HFP) {
-/* Copyright (c) 2008-2017, The Linux Foundation. All rights reserved.
+/* Copyright (c) 2008-2018, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
int new_fps;
/* stores initial fps after boot */
u32 default_fps;
+ /* store programmable fetch corresponding to default fps */
+ u32 default_prg_fet;
/* stores initial vtotal (vfp-method) or htotal (hfp-method) */
u32 saved_total;
/* stores initial vfp (vfp-method) or hfp (hfp-method) */