2020-04-10 07:19:48

by Mansur Alisha Shaik

[permalink] [raw]
Subject: [PATCH V2] venus: core: remove CNOC voting while device suspend

The Venus driver is voting Configuration NoC during .probe but not clear
voting in .suspend. Because of this NoC is up during shutdown also. As a
consequence the whole device could leak energy while in .suspend.

So correct this by moving voting in .resume and unvoting
in .suspend

signed-off-by: mansur alisha shaik <[email protected]>
---
Changes in V2:
- As per stanimir comment changed the commit message.

drivers/media/platform/qcom/venus/core.c | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/media/platform/qcom/venus/core.c b/drivers/media/platform/qcom/venus/core.c
index 194b10b9..13fa507 100644
--- a/drivers/media/platform/qcom/venus/core.c
+++ b/drivers/media/platform/qcom/venus/core.c
@@ -242,10 +242,6 @@ static int venus_probe(struct platform_device *pdev)
if (ret)
return ret;

- ret = icc_set_bw(core->cpucfg_path, 0, kbps_to_icc(1000));
- if (ret)
- return ret;
-
ret = hfi_create(core, &venus_core_ops);
if (ret)
return ret;
@@ -350,6 +346,10 @@ static __maybe_unused int venus_runtime_suspend(struct device *dev)
if (ret)
return ret;

+ ret = icc_set_bw(core->cpucfg_path, 0, 0);
+ if (ret)
+ return ret;
+
if (pm_ops->core_power)
ret = pm_ops->core_power(dev, POWER_OFF);

@@ -368,6 +368,10 @@ static __maybe_unused int venus_runtime_resume(struct device *dev)
return ret;
}

+ ret = icc_set_bw(core->cpucfg_path, 0, kbps_to_icc(1000));
+ if (ret)
+ return ret;
+
return hfi_core_resume(core, false);
}

--
2.7.4


2020-04-10 08:00:13

by Stanimir Varbanov

[permalink] [raw]
Subject: Re: [PATCH V2] venus: core: remove CNOC voting while device suspend

Thanks Mansur,

On 4/10/20 10:17 AM, Mansur Alisha Shaik wrote:
> The Venus driver is voting Configuration NoC during .probe but not clear
> voting in .suspend. Because of this NoC is up during shutdown also. As a
> consequence the whole device could leak energy while in .suspend.
>
> So correct this by moving voting in .resume and unvoting
> in .suspend
>
> signed-off-by: mansur alisha shaik <[email protected]>

Signed-off-by: Mansur Alisha Shaik <[email protected]>

Please configure git and use 'git commit -s' to sign off your commits
next time. I will correct that when applying.

> ---
> Changes in V2:
> - As per stanimir comment changed the commit message.
>
> drivers/media/platform/qcom/venus/core.c | 12 ++++++++----
> 1 file changed, 8 insertions(+), 4 deletions(-)

Acked-by: Stanimir Varbanov <[email protected]>

--
regards,
Stan