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@xxxxxxxxxxxxx> >>> --- >>> 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? > 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); >>> >> . >> > >