[v5,13/25] media: venus: core: use pm_runtime_resume_and_get()

Message ID 492e148ae1c7b0a8858c1670037925d3e4adb719.1620314616.git.mchehab+huawei@kernel.org
State New
Headers show
Series
  • media: use pm_runtime_resume_and_get() on non-i2c drivers
Related show

Commit Message

Mauro Carvalho Chehab May 6, 2021, 3:25 p.m.
Commit dd8088d5a896 ("PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter")
added pm_runtime_resume_and_get() in order to automatically handle
dev->power.usage_count decrement on errors.

Use the new API, in order to cleanup the error check logic.

Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
---
 drivers/media/platform/qcom/venus/pm_helpers.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

Comments

Stanimir Varbanov May 10, 2021, 1:54 p.m. | #1
On 5/6/21 6:25 PM, Mauro Carvalho Chehab wrote:
> Commit dd8088d5a896 ("PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter")

> added pm_runtime_resume_and_get() in order to automatically handle

> dev->power.usage_count decrement on errors.

> 

> Use the new API, in order to cleanup the error check logic.

> 

> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>

> ---

>  drivers/media/platform/qcom/venus/pm_helpers.c | 3 +--

>  1 file changed, 1 insertion(+), 2 deletions(-)


Tested-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>

Acked-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>


> 

> diff --git a/drivers/media/platform/qcom/venus/pm_helpers.c b/drivers/media/platform/qcom/venus/pm_helpers.c

> index c7e1ebec47ee..d0fddf5e9a69 100644

> --- a/drivers/media/platform/qcom/venus/pm_helpers.c

> +++ b/drivers/media/platform/qcom/venus/pm_helpers.c

> @@ -990,9 +990,8 @@ static int core_power_v4(struct venus_core *core, int on)

>  

>  	if (on == POWER_ON) {

>  		if (pmctrl) {

> -			ret = pm_runtime_get_sync(pmctrl);

> +			ret = pm_runtime_resume_and_get(pmctrl);

>  			if (ret < 0) {

> -				pm_runtime_put_noidle(pmctrl);

>  				return ret;

>  			}

>  		}

> 


-- 
regards,
Stan
Stanimir Varbanov May 17, 2021, 3:26 p.m. | #2
Hi Mauro,

On 5/10/21 4:54 PM, Stanimir Varbanov wrote:
> 
> 
> On 5/6/21 6:25 PM, Mauro Carvalho Chehab wrote:
>> Commit dd8088d5a896 ("PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter")
>> added pm_runtime_resume_and_get() in order to automatically handle
>> dev->power.usage_count decrement on errors.
>>
>> Use the new API, in order to cleanup the error check logic.
>>
>> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
>> ---
>>  drivers/media/platform/qcom/venus/pm_helpers.c | 3 +--
>>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> Tested-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>
> Acked-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>
> 

What is the plan for these venus patches. Do I need to take them through
my Venus pull request for v5.14 or you will take them directly?

>>
>> diff --git a/drivers/media/platform/qcom/venus/pm_helpers.c b/drivers/media/platform/qcom/venus/pm_helpers.c
>> index c7e1ebec47ee..d0fddf5e9a69 100644
>> --- a/drivers/media/platform/qcom/venus/pm_helpers.c
>> +++ b/drivers/media/platform/qcom/venus/pm_helpers.c
>> @@ -990,9 +990,8 @@ static int core_power_v4(struct venus_core *core, int on)
>>  
>>  	if (on == POWER_ON) {
>>  		if (pmctrl) {
>> -			ret = pm_runtime_get_sync(pmctrl);
>> +			ret = pm_runtime_resume_and_get(pmctrl);
>>  			if (ret < 0) {
>> -				pm_runtime_put_noidle(pmctrl);
>>  				return ret;
>>  			}
>>  		}
>>
>
Mauro Carvalho Chehab May 18, 2021, 3:20 p.m. | #3
Em Mon, 17 May 2021 18:26:14 +0300
Stanimir Varbanov <stanimir.varbanov@linaro.org> escreveu:

> Hi Mauro,

> 

> On 5/10/21 4:54 PM, Stanimir Varbanov wrote:

> > 

> > 

> > On 5/6/21 6:25 PM, Mauro Carvalho Chehab wrote:  

> >> Commit dd8088d5a896 ("PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter")

> >> added pm_runtime_resume_and_get() in order to automatically handle

> >> dev->power.usage_count decrement on errors.

> >>

> >> Use the new API, in order to cleanup the error check logic.

> >>

> >> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>

> >> ---

> >>  drivers/media/platform/qcom/venus/pm_helpers.c | 3 +--

> >>  1 file changed, 1 insertion(+), 2 deletions(-)  

> > 

> > Tested-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>

> > Acked-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>

> >   

> 

> What is the plan for these venus patches. Do I need to take them through

> my Venus pull request for v5.14 or you will take them directly?


Whatever works best for you. In principle, I should apply them on my
tree probably tomorrow, if ok for you.

Regards,
Mauro

> 

> >>

> >> diff --git a/drivers/media/platform/qcom/venus/pm_helpers.c b/drivers/media/platform/qcom/venus/pm_helpers.c

> >> index c7e1ebec47ee..d0fddf5e9a69 100644

> >> --- a/drivers/media/platform/qcom/venus/pm_helpers.c

> >> +++ b/drivers/media/platform/qcom/venus/pm_helpers.c

> >> @@ -990,9 +990,8 @@ static int core_power_v4(struct venus_core *core, int on)

> >>  

> >>  	if (on == POWER_ON) {

> >>  		if (pmctrl) {

> >> -			ret = pm_runtime_get_sync(pmctrl);

> >> +			ret = pm_runtime_resume_and_get(pmctrl);

> >>  			if (ret < 0) {

> >> -				pm_runtime_put_noidle(pmctrl);

> >>  				return ret;

> >>  			}

> >>  		}

> >>  

> >   

> 




Thanks,
Mauro
Stanimir Varbanov May 18, 2021, 3:49 p.m. | #4
Hi Mauro,

On 5/18/21 6:20 PM, Mauro Carvalho Chehab wrote:
> Em Mon, 17 May 2021 18:26:14 +0300

> Stanimir Varbanov <stanimir.varbanov@linaro.org> escreveu:

> 

>> Hi Mauro,

>>

>> On 5/10/21 4:54 PM, Stanimir Varbanov wrote:

>>>

>>>

>>> On 5/6/21 6:25 PM, Mauro Carvalho Chehab wrote:  

>>>> Commit dd8088d5a896 ("PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter")

>>>> added pm_runtime_resume_and_get() in order to automatically handle

>>>> dev->power.usage_count decrement on errors.

>>>>

>>>> Use the new API, in order to cleanup the error check logic.

>>>>

>>>> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>

>>>> ---

>>>>  drivers/media/platform/qcom/venus/pm_helpers.c | 3 +--

>>>>  1 file changed, 1 insertion(+), 2 deletions(-)  

>>>

>>> Tested-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>

>>> Acked-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>

>>>   

>>

>> What is the plan for these venus patches. Do I need to take them through

>> my Venus pull request for v5.14 or you will take them directly?

> 

> Whatever works best for you. In principle, I should apply them on my

> tree probably tomorrow, if ok for you.

> 


It is perfectly fine, please apply them. Thank you!

-- 
regards,
Stan

Patch

diff --git a/drivers/media/platform/qcom/venus/pm_helpers.c b/drivers/media/platform/qcom/venus/pm_helpers.c
index c7e1ebec47ee..d0fddf5e9a69 100644
--- a/drivers/media/platform/qcom/venus/pm_helpers.c
+++ b/drivers/media/platform/qcom/venus/pm_helpers.c
@@ -990,9 +990,8 @@  static int core_power_v4(struct venus_core *core, int on)
 
 	if (on == POWER_ON) {
 		if (pmctrl) {
-			ret = pm_runtime_get_sync(pmctrl);
+			ret = pm_runtime_resume_and_get(pmctrl);
 			if (ret < 0) {
-				pm_runtime_put_noidle(pmctrl);
 				return ret;
 			}
 		}