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

Commit d068e30d authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "ARM: dts: msm: enable idle power collapse on msm8996"

parents a28dc2cc 9a972370
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -98,7 +98,7 @@
		qcom,mdss-highest-bank-bit = <0x2>;
		qcom,mdss-has-decimation;
		qcom,mdss-has-rotator-downscale;

		qcom,mdss-idle-power-collapse-enabled;
		clocks = <&clock_mmss clk_mdss_ahb_clk>,
			 <&clock_mmss clk_mdss_axi_clk>,
			 <&clock_mmss clk_mdp_clk_src>,
+0 −16
Original line number Diff line number Diff line
@@ -295,22 +295,6 @@ static void dsi_pll_disable(struct clk *c)

	dsi_pll_stop_8996(pll->pll_base);

	/* stop pll output */
	MDSS_PLL_REG_W(pll->pll_base, DSIPHY_PLL_CLKBUFLR_EN, 0);
	/* stop clk */
	MDSS_PLL_REG_W(pll->pll_base, DSIPHY_CMN_GLBL_TEST_CTRL, 0);
	/* stop digital block */
	MDSS_PLL_REG_W(pll->pll_base, DSIPHY_CMN_CTRL_0, 0x0);

	if (slave) {
		/* stop pll output */
		MDSS_PLL_REG_W(pll->pll_base, DSIPHY_PLL_CLKBUFLR_EN, 0);
		/* stop clk */
		MDSS_PLL_REG_W(pll->pll_base, DSIPHY_CMN_GLBL_TEST_CTRL, 0);
		/* stop digital block */
		MDSS_PLL_REG_W(pll->pll_base, DSIPHY_CMN_CTRL_0, 0x0);
	}

	mdss_pll_resource_enable(pll, false);

	pll->pll_on = false;
+3 −3
Original line number Diff line number Diff line
@@ -1040,8 +1040,9 @@ static int mdss_dsi_off(struct mdss_panel_data *pdata, int power_state)
		goto panel_power_ctrl;
	}

	mdss_dsi_clk_ctrl(ctrl_pdata, DSI_LINK_CLKS, 0);
	if (pdata->panel_info.type == MIPI_CMD_PANEL)
		mdss_dsi_clk_ctrl(ctrl_pdata, DSI_ALL_CLKS, 1);
		mdss_dsi_clk_ctrl(ctrl_pdata, DSI_CORE_CLKS, 1);

	if (!pdata->panel_info.ulps_suspend_enabled) {
		/* disable DSI controller */
@@ -1050,8 +1051,7 @@ static int mdss_dsi_off(struct mdss_panel_data *pdata, int power_state)
		/* disable DSI phy */
		mdss_dsi_phy_disable(ctrl_pdata);
	}

	mdss_dsi_clk_ctrl(ctrl_pdata, DSI_ALL_CLKS, 0);
	mdss_dsi_clk_ctrl(ctrl_pdata, DSI_CORE_CLKS, 0);

panel_power_ctrl:
	ret = mdss_dsi_panel_power_ctrl(pdata, power_state);
+6 −13
Original line number Diff line number Diff line
@@ -133,11 +133,13 @@ static void mdss_dsi_phy_shutdown(struct mdss_dsi_ctrl_pdata *ctrl)
	}

	if (IS_MDSS_MAJOR_MINOR_SAME(ctrl->shared_data->hw_rev,
		MDSS_DSI_HW_REV_104))
		MIPI_OUTP(ctrl->phy_io.base + DSIPHY_CMN_CTRL_0, ~0x1F);
	else
		MDSS_DSI_HW_REV_104)) {
		MIPI_OUTP(ctrl->phy_io.base + DSIPHY_PLL_CLKBUFLR_EN, 0);
		MIPI_OUTP(ctrl->phy_io.base + DSIPHY_CMN_GLBL_TEST_CTRL, 0);
		MIPI_OUTP(ctrl->phy_io.base + DSIPHY_CMN_CTRL_0, 0);
	} else {
		MIPI_OUTP(ctrl->phy_io.base + MDSS_DSI_DSIPHY_CTRL_0, 0x000);

	}
}

/**
@@ -1409,12 +1411,6 @@ static int mdss_dsi_clamp_ctrl(struct mdss_dsi_ctrl_pdata *ctrl, int enable)
		return -EINVAL;
	}

	if (IS_MDSS_MAJOR_MINOR_SAME(ctrl->shared_data->hw_rev,
		MDSS_DSI_HW_REV_104)) {
		pr_debug("%s: clamp ctrl configuration is skipped\n", __func__);
		return 0;
	}

	clamp_reg_off = ctrl->shared_data->ulps_clamp_ctrl_off;
	phyrst_reg_off = ctrl->shared_data->ulps_phyrst_ctrl_off;
	mipi = &ctrl->panel_data.panel_info.mipi;
@@ -1638,9 +1634,6 @@ static int mdss_dsi_core_power_ctrl(struct mdss_dsi_ctrl_pdata *ctrl,
			goto error_ulps;
		}
	} else {
		if (pdata->panel_info.cont_splash_enabled)
			mdss_dsi_read_hw_revision(ctrl);

		/*
		 * Enable DSI clamps only if entering idle power collapse or
		 * when ULPS during suspend is enabled.