diff options
author | Sowjanya Komatineni <skomatineni@nvidia.com> | 2019-08-16 12:42:04 -0700 |
---|---|---|
committer | Thierry Reding <treding@nvidia.com> | 2019-10-29 13:29:59 +0100 |
commit | 455271d9dc5f4cce3d35c5819f8f01c723bca94c (patch) | |
tree | bcc09e2f191579e88d326df0f00b66e0b6f4f85a /drivers/soc | |
parent | 7e9ae849eb1ea4617a9c7229a78c622a214283f2 (diff) | |
download | linux-455271d9dc5f4cce3d35c5819f8f01c723bca94c.tar.gz linux-455271d9dc5f4cce3d35c5819f8f01c723bca94c.tar.bz2 linux-455271d9dc5f4cce3d35c5819f8f01c723bca94c.zip |
soc/tegra: pmc: Configure core power request polarity
This patch configures polarity of the core power request signal
in PMC control register based on the device tree property.
PMC asserts and de-asserts power request signal based on it polarity
when it need to power-up and power-down the core rail during SC7.
Reviewed-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Sowjanya Komatineni <skomatineni@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Diffstat (limited to 'drivers/soc')
-rw-r--r-- | drivers/soc/tegra/pmc.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/soc/tegra/pmc.c b/drivers/soc/tegra/pmc.c index e1f14098bd2d..41e974cd91fe 100644 --- a/drivers/soc/tegra/pmc.c +++ b/drivers/soc/tegra/pmc.c @@ -56,6 +56,7 @@ #define PMC_CNTRL_SIDE_EFFECT_LP0 BIT(14) /* LP0 when CPU pwr gated */ #define PMC_CNTRL_SYSCLK_OE BIT(11) /* system clock enable */ #define PMC_CNTRL_SYSCLK_POLARITY BIT(10) /* sys clk polarity */ +#define PMC_CNTRL_PWRREQ_POLARITY BIT(8) #define PMC_CNTRL_MAIN_RST BIT(4) #define PMC_WAKE_MASK 0x0c @@ -2316,6 +2317,11 @@ static void tegra20_pmc_init(struct tegra_pmc *pmc) else value |= PMC_CNTRL_SYSCLK_POLARITY; + if (pmc->corereq_high) + value &= ~PMC_CNTRL_PWRREQ_POLARITY; + else + value |= PMC_CNTRL_PWRREQ_POLARITY; + /* configure the output polarity while the request is tristated */ tegra_pmc_writel(pmc, value, PMC_CNTRL); |