On Wed, Jun 24, 2020 at 06:08:47PM +0300, Dmitry Osipenko wrote: > VDE partition is left turned ON after bootloader on most devices, hence > let's ensure that it's turned OFF in order to lower power leakage while > hardware is idling by turning it ON and OFF during of the driver's probe. > > Signed-off-by: Dmitry Osipenko <digetx@xxxxxxxxx> > --- > drivers/staging/media/tegra-vde/vde.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/drivers/staging/media/tegra-vde/vde.c b/drivers/staging/media/tegra-vde/vde.c > index b64e35b86fb4..3be96c36bf43 100644 > --- a/drivers/staging/media/tegra-vde/vde.c > +++ b/drivers/staging/media/tegra-vde/vde.c > @@ -1068,6 +1068,14 @@ static int tegra_vde_probe(struct platform_device *pdev) > pm_runtime_use_autosuspend(dev); > pm_runtime_set_autosuspend_delay(dev, 300); > > + /* > + * VDE partition may be left ON after bootloader, hence let's > + * power-cycle it in order to put hardware into a predictable lower > + * power state. > + */ > + pm_runtime_get_sync(dev); > + pm_runtime_put(dev); > + > return 0; > > err_deinit_iommu: Shouldn't this happen automatically? My understanding is that power domains are turned on automatically before ->probe() and then unless a runtime PM reference is taken during ->probe() it will get turned off again after ->probe()? Is that not happening? Is auto-suspend perhaps getting in the way somehow? Thierry
Attachment:
signature.asc
Description: PGP signature