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

Commit 32461b78 authored by Ingrid Gallardo's avatar Ingrid Gallardo Committed by Gerrit - the friendly Code Review server
Browse files

msm: mdss: enable pll regulator during phy on sequence



Make sure pll regulator is enabled as part of the phy
on sequence. This fixes some corruption observed
when pll is disabled as part of the phy shut-down
sequence.

Change-Id: I1ace97dbf5b8e5ed8fceedddf714758a5f708cfb
Signed-off-by: default avatarIngrid Gallardo <ingridg@codeaurora.org>
parent 6bf1a14a
Loading
Loading
Loading
Loading
+10 −1
Original line number Diff line number Diff line
@@ -883,8 +883,11 @@ static void mdss_dsi_8996_phy_power_off(
{
	int ln;
	void __iomem *base;
	u32 data;

	MIPI_OUTP(ctrl->phy_io.base + DSIPHY_CMN_CTRL_0, 0x7f);
	/* Turn off PLL power */
	data = MIPI_INP(ctrl->phy_io.base + DSIPHY_CMN_CTRL_0);
	MIPI_OUTP(ctrl->phy_io.base + DSIPHY_CMN_CTRL_0, data & ~BIT(7));

	/* 4 lanes + clk lane configuration */
	for (ln = 0; ln < 5; ln++) {
@@ -940,6 +943,7 @@ static void mdss_dsi_8996_phy_power_on(
	void __iomem *base;
	struct mdss_dsi_phy_ctrl *pd;
	char *ip;
	u32 data;

	pd = &(((ctrl->panel_data).panel_info.mipi).dsi_phy_db);

@@ -959,6 +963,10 @@ static void mdss_dsi_8996_phy_power_on(
	}

	mdss_dsi_8996_phy_regulator_enable(ctrl);

	/* Turn on PLL power */
	data = MIPI_INP(ctrl->phy_io.base + DSIPHY_CMN_CTRL_0);
	MIPI_OUTP(ctrl->phy_io.base + DSIPHY_CMN_CTRL_0, data | BIT(7));
}

static void mdss_dsi_phy_power_on(
@@ -1062,6 +1070,7 @@ static void mdss_dsi_8996_phy_config(struct mdss_dsi_ctrl_pdata *ctrl)
			mdss_dsi_8996_pll_source_standalone(ctrl);
	}

	MIPI_OUTP(ctrl->phy_io.base + DSIPHY_CMN_CTRL_0, 0x7f);
	wmb(); /* make sure registers committed */
}