disp: msm: sde: dump clock state before entering suspend

Add debug capability to dump clocks before entering pm suspend.
This will help debug invalid register access when clocks are off
during adversarial test cases.

Change-Id: I80d19b751a3b9a1de0cc64699a21a1852d614ced
Signed-off-by: Amine Najahi <anajahi@codeaurora.org>
此提交包含在:
Amine Najahi
2020-06-12 16:54:49 -04:00
提交者 Gerrit - the friendly Code Review server
父節點 743dc695c4
當前提交 8479ed7278
共有 6 個檔案被更改,包括 101 行新增0 行删除

查看文件

@@ -7799,6 +7799,44 @@ int dsi_display_update_pps(char *pps_cmd, void *disp)
return 0;
}
int dsi_display_dump_clks_state(struct dsi_display *display)
{
int rc = 0;
if (!display) {
DSI_ERR("invalid display argument\n");
return -EINVAL;
}
if (!display->clk_mngr) {
DSI_ERR("invalid clk manager\n");
return -EINVAL;
}
if (!display->dsi_clk_handle || !display->mdp_clk_handle) {
DSI_ERR("invalid clk handles\n");
return -EINVAL;
}
mutex_lock(&display->display_lock);
rc = dsi_display_dump_clk_handle_state(display->dsi_clk_handle);
if (rc) {
DSI_ERR("failed to dump dsi clock state\n");
goto end;
}
rc = dsi_display_dump_clk_handle_state(display->mdp_clk_handle);
if (rc) {
DSI_ERR("failed to dump mdp clock state\n");
goto end;
}
end:
mutex_unlock(&display->display_lock);
return rc;
}
int dsi_display_unprepare(struct dsi_display *display)
{
int rc = 0, i;