[PATCH] drm/exynos: Use pm_runtime_resume_and_get() to replace open coding
tiantao (H)
tiantao6 at huawei.com
Fri May 21 01:30:41 PDT 2021
在 2021/5/21 16:36, Inki Dae 写道:
>
> 21. 5. 21. 오후 3:08에 tiantao (H) 이(가) 쓴 글:
>> 在 2021/5/21 12:47, Inki Dae 写道:
>>> Hi,
>>>
>>> 21. 5. 20. 오후 10:36에 Tian Tao 이(가) 쓴 글:
>>>> use pm_runtime_resume_and_get() to replace pm_runtime_get_sync and
>>>> pm_runtime_put_noidle. it also avoids the problem of positive return
>>>> values so we can change if (ret < 0) to if (ret).
>>> Could you tell me why did you change the condition? pm_runtime_resume_and_get() can return only 0 or negative value.
>>> So I think you don't have to change the condition. Could you drop this description?
>>>
>>>> Signed-off-by: Tian Tao <tiantao6 at hisilicon.com>
>>>> ---
>>>> drivers/gpu/drm/exynos/exynos_drm_mic.c | 6 ++----
>>>> 1 file changed, 2 insertions(+), 4 deletions(-)
>>>>
>>>> diff --git a/drivers/gpu/drm/exynos/exynos_drm_mic.c b/drivers/gpu/drm/exynos/exynos_drm_mic.c
>>>> index 3821ea7..6d94eae 100644
>>>> --- a/drivers/gpu/drm/exynos/exynos_drm_mic.c
>>>> +++ b/drivers/gpu/drm/exynos/exynos_drm_mic.c
>>>> @@ -268,11 +268,9 @@ static void mic_pre_enable(struct drm_bridge *bridge)
>>>> if (mic->enabled)
>>>> goto unlock;
>>>> - ret = pm_runtime_get_sync(mic->dev);
>>>> - if (ret < 0) {
>>>> - pm_runtime_put_noidle(mic->dev);
>>>> + ret = pm_runtime_resume_and_get(mic->dev);
>>> Right, we can use pm_runtime_resume_and_get function because pm_runtime_resume_and_get function does exactly same thing as existing code does.
>>>
>>>> + if (ret)
>>> Seems unnecessary change.
>> as you can see,If pm_runtime_resume_and_get returns 0, it means that the function was executed successfully and should not be executed in an if condition.
>>
>> There is no error in continuing to use if (ret < 0), but it is not as concise as using if (ret) directly
>>
> I don't see why positive value should be considered because pm_runtime_resume_and_get function never return positive value as you can see.
> Is there something I'm missing?
sorry, I misunderstand you, I wil send v2 to drop this.
>
>> static inline int pm_runtime_resume_and_get(struct device *dev)
>> {
>> int ret;
>>
>> ret = __pm_runtime_resume(dev, RPM_GET_PUT);
>> if (ret < 0) {
>> pm_runtime_put_noidle(dev);
>> return ret;
>> }
>>
>> return 0;
>> }
>>> Thanks,
>>> Inki Dae
>>>
>>>> goto unlock;
>>>> - }
>>>> mic_set_path(mic, 1);
>>>>
>>> .
>>>
>>
> .
>
More information about the linux-arm-kernel
mailing list