diff options
author | Fernando Guzman Lugo <fernando.lugo@ti.com> | 2011-10-21 14:09:51 -0500 |
---|---|---|
committer | Fernando Guzman Lugo <fernando.lugo@ti.com> | 2011-10-21 14:25:25 -0500 |
commit | 17745d4ce57b8454b7082087b48b3e2027fdf5bc (patch) | |
tree | 9597da61b706e392bf5995ec5d7fd59f1ef02e82 /drivers/remoteproc | |
parent | 7dee1c23ce99bb9ebe778d3b1d6ce23bb7578e99 (diff) | |
download | kernel_samsung_tuna-17745d4ce57b8454b7082087b48b3e2027fdf5bc.tar.gz kernel_samsung_tuna-17745d4ce57b8454b7082087b48b3e2027fdf5bc.tar.bz2 kernel_samsung_tuna-17745d4ce57b8454b7082087b48b3e2027fdf5bc.zip |
remoteproc: disable autosuspend when enter secure mode
Secure module reads iommu register in order to avoid modification by
malicious code. For that reason iommu can not be turned off during
secure play back.
Change-Id: I2457f538c2f227dca5e6f44c817e4d0faf147e88
Signed-off-by: Fernando Guzman Lugo <fernando.lugo@ti.com>
Diffstat (limited to 'drivers/remoteproc')
-rw-r--r-- | drivers/remoteproc/remoteproc.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/remoteproc/remoteproc.c b/drivers/remoteproc/remoteproc.c index 680a701f11d..907fc011bf0 100644 --- a/drivers/remoteproc/remoteproc.c +++ b/drivers/remoteproc/remoteproc.c @@ -675,7 +675,8 @@ static void rproc_start(struct rproc *rproc, u64 bootaddr) pm_runtime_set_autosuspend_delay(dev, rproc->sus_timeout); pm_runtime_get_noresume(rproc->dev); pm_runtime_set_active(rproc->dev); - pm_runtime_enable(rproc->dev); + if (!rproc->secure_mode) + pm_runtime_enable(rproc->dev); pm_runtime_mark_last_busy(rproc->dev); pm_runtime_put_autosuspend(rproc->dev); #endif @@ -1340,7 +1341,9 @@ void rproc_put(struct rproc *rproc) */ pm_runtime_get_sync(rproc->dev); pm_runtime_put_noidle(rproc->dev); - pm_runtime_disable(rproc->dev); + if (!rproc->secure_reset) + pm_runtime_disable(rproc->dev); + pm_runtime_set_suspended(rproc->dev); #endif ret = rproc->ops->stop(rproc); |