OSDN Git Service

ASoC: Intel: atom: use pm_runtime_resume_and_get()
authorPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Tue, 26 Apr 2022 18:38:07 +0000 (13:38 -0500)
committerMark Brown <broonie@kernel.org>
Wed, 27 Apr 2022 13:15:27 +0000 (14:15 +0100)
Use pm_runtime_resume_and_get() to replace the pm_runtime_get_sync() and
pm_runtime_put_sync() pattern.

No functional changes.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Link: https://lore.kernel.org/r/20220426183807.102442-1-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/intel/atom/sst/sst_drv_interface.c

index 0af618d..dc31c2c 100644 (file)
@@ -136,11 +136,10 @@ static int sst_power_control(struct device *dev, bool state)
        int usage_count = 0;
 
        if (state) {
-               ret = pm_runtime_get_sync(dev);
+               ret = pm_runtime_resume_and_get(dev);
                usage_count = GET_USAGE_COUNT(dev);
                dev_dbg(ctx->dev, "Enable: pm usage count: %d\n", usage_count);
                if (ret < 0) {
-                       pm_runtime_put_sync(dev);
                        dev_err(ctx->dev, "Runtime get failed with err: %d\n", ret);
                        return ret;
                }
@@ -193,11 +192,9 @@ static int sst_cdev_open(struct device *dev,
        struct stream_info *stream;
        struct intel_sst_drv *ctx = dev_get_drvdata(dev);
 
-       retval = pm_runtime_get_sync(ctx->dev);
-       if (retval < 0) {
-               pm_runtime_put_sync(ctx->dev);
+       retval = pm_runtime_resume_and_get(ctx->dev);
+       if (retval < 0)
                return retval;
-       }
 
        str_id = sst_get_stream(ctx, str_params);
        if (str_id > 0) {
@@ -645,11 +642,9 @@ static int sst_send_byte_stream(struct device *dev,
 
        if (NULL == bytes)
                return -EINVAL;
-       ret_val = pm_runtime_get_sync(ctx->dev);
-       if (ret_val < 0) {
-               pm_runtime_put_sync(ctx->dev);
+       ret_val = pm_runtime_resume_and_get(ctx->dev);
+       if (ret_val < 0)
                return ret_val;
-       }
 
        ret_val = sst_send_byte_stream_mrfld(ctx, bytes);
        sst_pm_runtime_put(ctx);