Message ID | 1533141150-10511-8-git-send-email-avienamo@nvidia.com |
---|---|
State | Superseded |
Headers | show |
Series | Tegra SDHCI add support for HS200 and UHS signaling | expand |
On Wed, Aug 01, 2018 at 07:31:57PM +0300, Aapo Vienamo wrote: > Implement a function to query whether a pad is in deep power down mode. > This will is needed by the pinctrl callbacks. "This is needed..." > > Signed-off-by: Aapo Vienamo <avienamo@nvidia.com> > Acked-by: Jon Hunter <jonathanh@nvidia.com> > --- > drivers/soc/tegra/pmc.c | 16 ++++++++++++++++ > 1 file changed, 16 insertions(+) > > diff --git a/drivers/soc/tegra/pmc.c b/drivers/soc/tegra/pmc.c > index 393ca72..784c182 100644 > --- a/drivers/soc/tegra/pmc.c > +++ b/drivers/soc/tegra/pmc.c > @@ -1075,6 +1075,22 @@ int tegra_io_pad_power_disable(enum tegra_io_pad id) > } > EXPORT_SYMBOL(tegra_io_pad_power_disable); > > +static int tegra_io_pad_is_powered(enum tegra_io_pad id) > +{ > + unsigned long request, status; > + u32 mask; > + u32 value; These can go on a single line. Thierry
diff --git a/drivers/soc/tegra/pmc.c b/drivers/soc/tegra/pmc.c index 393ca72..784c182 100644 --- a/drivers/soc/tegra/pmc.c +++ b/drivers/soc/tegra/pmc.c @@ -1075,6 +1075,22 @@ int tegra_io_pad_power_disable(enum tegra_io_pad id) } EXPORT_SYMBOL(tegra_io_pad_power_disable); +static int tegra_io_pad_is_powered(enum tegra_io_pad id) +{ + unsigned long request, status; + u32 mask; + u32 value; + int err; + + err = tegra_io_pad_get_dpd_register_bit(id, &request, &status, &mask); + if (err) + return err; + + value = tegra_pmc_readl(status); + + return !(value & mask); +} + int tegra_io_pad_set_voltage(enum tegra_io_pad id, enum tegra_io_pad_voltage voltage) {