disp: msm: dsi: enable dfps trigger at mdp intf flush
This change allows dynamic refresh trigger to sw trigger and mdp intf flush. With this we can make sure that DSI timing/clock update and mdp intf timings are updated in one vsync. Change-Id: Ic807f498e2e47be6dd0f1e11ff1fc0896a8ec758 Signed-off-by: Vara Reddy <varar@codeaurora.org>
This commit is contained in:
@@ -1196,6 +1196,32 @@ void dsi_phy_config_dynamic_refresh(struct msm_dsi_phy *phy,
|
||||
mutex_unlock(&phy->phy_lock);
|
||||
}
|
||||
|
||||
/**
|
||||
* dsi_phy_dynamic_refresh_trigger_sel() - trigger dynamic refresh and
|
||||
* update the video timings at next frame flush call.
|
||||
* @phy: DSI PHY handle
|
||||
* @is_master: Boolean to indicate if for master or slave.
|
||||
*/
|
||||
void dsi_phy_dynamic_refresh_trigger_sel(struct msm_dsi_phy *phy,
|
||||
bool is_master)
|
||||
{
|
||||
if (!phy)
|
||||
return;
|
||||
|
||||
mutex_lock(&phy->phy_lock);
|
||||
/*
|
||||
* program DYNAMIC_REFRESH_CTRL.TRIGGER_SEL for master.
|
||||
*/
|
||||
if (phy->hw.ops.dyn_refresh_ops.dyn_refresh_trigger_sel)
|
||||
phy->hw.ops.dyn_refresh_ops.dyn_refresh_trigger_sel
|
||||
(&phy->hw, is_master);
|
||||
phy->dfps_trigger_mdpintf_flush = true;
|
||||
|
||||
SDE_EVT32(is_master, phy->index);
|
||||
|
||||
mutex_unlock(&phy->phy_lock);
|
||||
}
|
||||
|
||||
/**
|
||||
* dsi_phy_dynamic_refresh_trigger() - trigger dynamic refresh
|
||||
* @phy: DSI PHY handle
|
||||
|
Reference in New Issue
Block a user