disp: msm: dsi: Add support for clk switch with constant FPS
There is lag or lead in the FPS during dynamic clock change, along with the increment or decrement in clock. So, HFP or VFP are adjusted to ensure a constant FPS. Change-Id: I87ba7a185104a0f5f1d13734a7e487e728d6b2c0 Signed-off-by: Lipsa Rout <lrout@codeaurora.org> Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
This commit is contained in:

committed by
Satya Rama Aditya Pinapala

parent
5644d01f7a
commit
5e09ea2aed
@@ -1175,6 +1175,7 @@ static int dsi_panel_parse_dyn_clk_caps(struct dsi_panel *panel)
|
||||
struct dsi_dyn_clk_caps *dyn_clk_caps = &panel->dyn_clk_caps;
|
||||
struct dsi_parser_utils *utils = &panel->utils;
|
||||
const char *name = panel->name;
|
||||
const char *type;
|
||||
|
||||
supported = utils->read_bool(utils->data, "qcom,dsi-dyn-clk-enable");
|
||||
|
||||
@@ -1207,6 +1208,24 @@ static int dsi_panel_parse_dyn_clk_caps(struct dsi_panel *panel)
|
||||
|
||||
dyn_clk_caps->dyn_clk_support = true;
|
||||
|
||||
type = utils->get_property(utils->data,
|
||||
"qcom,dsi-dyn-clk-type", NULL);
|
||||
if (!type) {
|
||||
dyn_clk_caps->type = DSI_DYN_CLK_TYPE_LEGACY;
|
||||
dyn_clk_caps->maintain_const_fps = false;
|
||||
return 0;
|
||||
}
|
||||
if (!strcmp(type, "constant-fps-adjust-hfp")) {
|
||||
dyn_clk_caps->type = DSI_DYN_CLK_TYPE_CONST_FPS_ADJUST_HFP;
|
||||
dyn_clk_caps->maintain_const_fps = true;
|
||||
} else if (!strcmp(type, "constant-fps-adjust-vfp")) {
|
||||
dyn_clk_caps->type = DSI_DYN_CLK_TYPE_CONST_FPS_ADJUST_VFP;
|
||||
dyn_clk_caps->maintain_const_fps = true;
|
||||
} else {
|
||||
dyn_clk_caps->type = DSI_DYN_CLK_TYPE_LEGACY;
|
||||
dyn_clk_caps->maintain_const_fps = false;
|
||||
}
|
||||
DSI_DEBUG("Dynamic clock type is [%s]\n", type);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user