Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fe0bf0e3 authored by Padmanabhan Komanduru's avatar Padmanabhan Komanduru Committed by Nirmal Abraham
Browse files

msm: mdss: add support to program of HSTX drivers for DSI 12nm PHY



Add support to program HSTX drivers in DSI 12nm PHY which is
needed for HS data transfer.

Change-Id: If3823f5a425f6d1c7781bd5d62d16d097f3b8ca0
Signed-off-by: default avatarPadmanabhan Komanduru <pkomandu@codeaurora.org>
parent 1c1a5462
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -152,4 +152,18 @@ int mdss_dsi_12nm_phy_config(struct mdss_dsi_ctrl_pdata *ctrl);
 */
int mdss_dsi_12nm_phy_shutdown(struct mdss_dsi_ctrl_pdata *ctrl);

/*
 * mdss_dsi_12nm_phy_hstx_drv_ctrl() - enable/disable HSTX drivers
 *
 * @ctrl: pointer to DSI controller structure
 * @enable: boolean to specify enable/disable the HSTX drivers
 *
 * Perform a sequence of register writes to enable/disable HSTX drivers.
 * This function assumes that the DSI bus clocks are turned on.
 */

void mdss_dsi_12nm_phy_hstx_drv_ctrl(
	struct mdss_dsi_ctrl_pdata *ctrl, bool enable);


#endif /* MDSS_DSI_PHY_H */
+16 −0
Original line number Diff line number Diff line
@@ -1446,6 +1446,13 @@ void mdss_dsi_phy_init(struct mdss_dsi_ctrl_pdata *ctrl)
	}
}

static void mdss_dsi_phy_hstx_drv_ctrl(
	struct mdss_dsi_ctrl_pdata *ctrl, bool enable)
{
	if (ctrl->shared_data->phy_rev == DSI_PHY_REV_12NM)
		mdss_dsi_12nm_phy_hstx_drv_ctrl(ctrl, enable);
}

void mdss_dsi_core_clk_deinit(struct device *dev, struct dsi_shared_data *sdata)
{
}
@@ -2446,6 +2453,12 @@ int mdss_dsi_pre_clkoff_cb(void *priv,

	pdata = &ctrl->panel_data;

	if ((clk & MDSS_DSI_LINK_CLK) && (l_type == MDSS_DSI_LINK_HS_CLK) &&
		(new_state == MDSS_DSI_CLK_OFF)) {
		/* Disable HS TX driver in DSI PHY if applicable */
		mdss_dsi_phy_hstx_drv_ctrl(ctrl, false);
	}

	if ((clk & MDSS_DSI_LINK_CLK) && (l_type == MDSS_DSI_LINK_LP_CLK) &&
		(new_state == MDSS_DSI_CLK_OFF)) {
		if (pdata->panel_info.mipi.force_clk_lane_hs)
@@ -2597,6 +2610,9 @@ int mdss_dsi_post_clkon_cb(void *priv,

		/* enable split link for cmn clk cfg1 */
		mdss_dsi_split_link_clk_cfg(ctrl, 1);

		/* Enable HS TX driver in DSI PHY if applicable */
		mdss_dsi_phy_hstx_drv_ctrl(ctrl, true);
	}
error:
	return rc;