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

Commit 01ff6d74 authored by Komal Bajaj's avatar Komal Bajaj Committed by Gerrit - the friendly Code Review server
Browse files

soc: qcom: Add support to enable eud if enabled in xbl



If eud driver is enabled in xbl, there was a explicit need
to enable eud from hlos side also. This change enables eud
if eud_mode_manager2 register is set.

Change-Id: I72a8560a7fd8dfa4eaed7895bb423a867ab90e91
Signed-off-by: default avatarKomal Bajaj <kbajaj@codeaurora.org>
parent ebcedae6
Loading
Loading
Loading
Loading
+12 −1
Original line number Diff line number Diff line
@@ -92,6 +92,14 @@ static int enable;
static bool eud_ready;
static struct platform_device *eud_private;

static int check_eud_mode_mgr2(struct eud_chip *chip)
{
	u32 val;

	val = scm_io_read(chip->eud_mode_mgr2_phys_base);
	return val & BIT(0);
}

static void enable_eud(struct platform_device *pdev)
{
	struct eud_chip *priv = platform_get_drvdata(pdev);
@@ -105,7 +113,7 @@ static void enable_eud(struct platform_device *pdev)
			priv->eud_reg_base + EUD_REG_INT1_EN_MASK);

	/* Enable secure eud if supported */
	if (priv->secure_eud_en) {
	if (priv->secure_eud_en && !check_eud_mode_mgr2(priv)) {
		ret = scm_io_write(priv->eud_mode_mgr2_phys_base +
				   EUD_REG_EUD_EN2, EUD_ENABLE_CMD);
		if (ret)
@@ -564,6 +572,9 @@ static int msm_eud_probe(struct platform_device *pdev)
		}

		chip->eud_mode_mgr2_phys_base = res->start;

		if (check_eud_mode_mgr2(chip))
			enable = 1;
	}

	chip->need_phy_clk_vote = of_property_read_bool(pdev->dev.of_node,