diff options
Diffstat (limited to 'msm/dsi/dsi_drm.c')
-rw-r--r-- | msm/dsi/dsi_drm.c | 27 |
1 files changed, 23 insertions, 4 deletions
diff --git a/msm/dsi/dsi_drm.c b/msm/dsi/dsi_drm.c index 584b37bc..9ea51375 100644 --- a/msm/dsi/dsi_drm.c +++ b/msm/dsi/dsi_drm.c @@ -11,6 +11,7 @@ #include "sde_connector.h" #include "dsi_drm.h" #include "sde_trace.h" +#include "sde_dbg.h" #define to_dsi_bridge(x) container_of((x), struct dsi_bridge, base) #define to_dsi_state(x) container_of((x), struct dsi_connector_state, base) @@ -415,16 +416,32 @@ static bool dsi_bridge_mode_fixup(struct drm_bridge *bridge, if ((dsi_mode.panel_mode != cur_dsi_mode.panel_mode) && (!(dsi_mode.dsi_mode_flags & DSI_MODE_FLAG_VRR)) && (crtc_state->enable == - crtc_state->crtc->state->enable)) + crtc_state->crtc->state->enable)) { dsi_mode.dsi_mode_flags |= DSI_MODE_FLAG_POMS; + + SDE_EVT32(SDE_EVTLOG_FUNC_CASE1, + dsi_mode.timing.h_active, + dsi_mode.timing.v_active, + dsi_mode.timing.refresh_rate, + dsi_mode.pixel_clk_khz, + dsi_mode.panel_mode); + } /* No DMS/VRR when drm pipeline is changing */ if (!drm_mode_equal(cur_mode, adjusted_mode) && (!(dsi_mode.dsi_mode_flags & DSI_MODE_FLAG_VRR)) && (!(dsi_mode.dsi_mode_flags & DSI_MODE_FLAG_POMS)) && (!(dsi_mode.dsi_mode_flags & DSI_MODE_FLAG_DYN_CLK)) && (!crtc_state->active_changed || - display->is_cont_splash_enabled)) + display->is_cont_splash_enabled)) { dsi_mode.dsi_mode_flags |= DSI_MODE_FLAG_DMS; + + SDE_EVT32(SDE_EVTLOG_FUNC_CASE2, + dsi_mode.timing.h_active, + dsi_mode.timing.v_active, + dsi_mode.timing.refresh_rate, + dsi_mode.pixel_clk_khz, + dsi_mode.panel_mode); + } } /* Reject seamless transition when active changed */ @@ -577,14 +594,16 @@ int dsi_conn_set_info_blob(struct drm_connector *connector, case DSI_OP_VIDEO_MODE: sde_kms_info_add_keystr(info, "panel mode", "video"); sde_kms_info_add_keystr(info, "qsync support", - panel->qsync_min_fps ? "true" : "false"); + panel->qsync_caps.qsync_min_fps ? + "true" : "false"); break; case DSI_OP_CMD_MODE: sde_kms_info_add_keystr(info, "panel mode", "command"); sde_kms_info_add_keyint(info, "mdp_transfer_time_us", mode_info->mdp_transfer_time_us); sde_kms_info_add_keystr(info, "qsync support", - panel->qsync_min_fps ? "true" : "false"); + panel->qsync_caps.qsync_min_fps ? + "true" : "false"); break; default: DSI_DEBUG("invalid panel type:%d\n", panel->panel_mode); |