cs35l56->base.fw_patched = false;
- ret = pm_runtime_resume_and_get(cs35l56->base.dev);
+ PM_RUNTIME_ACQUIRE_IF_ENABLED(cs35l56->base.dev, pm);
+ ret = PM_RUNTIME_ACQUIRE_ERR(&pm);
if (ret < 0) {
dev_err(cs35l56->base.dev, "Failed to resume and get %d\n", ret);
return;
*/
ret = cs35l56_read_prot_status(&cs35l56->base, &firmware_missing, &preloaded_fw_ver);
if (ret)
- goto err_pm_put;
+ return;
if (firmware_missing)
preloaded_fw_ver = 0;
err_fw_release:
cs35l56_hda_release_firmware_files(wmfw_firmware, wmfw_filename,
coeff_firmware, coeff_filename);
-err_pm_put:
- pm_runtime_put(cs35l56->base.dev);
}
static void cs35l56_hda_dsp_work(struct work_struct *work)
struct cs35l56_base *cs35l56_base = file->private_data;
ssize_t ret;
- ret = pm_runtime_resume_and_get(cs35l56_base->dev);
+ PM_RUNTIME_ACQUIRE_IF_ENABLED_AUTOSUSPEND(cs35l56_base->dev, pm);
+ ret = PM_RUNTIME_ACQUIRE_ERR(&pm);
if (ret)
return ret;
- ret = cs35l56_calibrate_debugfs_write(cs35l56_base, from, count, ppos);
- pm_runtime_autosuspend(cs35l56_base->dev);
-
- return ret;
+ return cs35l56_calibrate_debugfs_write(cs35l56_base, from, count, ppos);
}
static ssize_t cs35l56_hda_debugfs_cal_temperature_write(struct file *file,
struct cs35l56_base *cs35l56_base = file->private_data;
ssize_t ret;
- ret = pm_runtime_resume_and_get(cs35l56_base->dev);
+ PM_RUNTIME_ACQUIRE_IF_ENABLED_AUTOSUSPEND(cs35l56_base->dev, pm);
+ ret = PM_RUNTIME_ACQUIRE_ERR(&pm);
if (ret)
return ret;
- ret = cs35l56_cal_ambient_debugfs_write(cs35l56_base, from, count, ppos);
- pm_runtime_autosuspend(cs35l56_base->dev);
-
- return ret;
+ return cs35l56_cal_ambient_debugfs_write(cs35l56_base, from, count, ppos);
}
static ssize_t cs35l56_hda_debugfs_cal_data_read(struct file *file,
struct cs35l56_base *cs35l56_base = file->private_data;
ssize_t ret;
- ret = pm_runtime_resume_and_get(cs35l56_base->dev);
+ PM_RUNTIME_ACQUIRE_IF_ENABLED_AUTOSUSPEND(cs35l56_base->dev, pm);
+ ret = PM_RUNTIME_ACQUIRE_ERR(&pm);
if (ret)
return ret;
- ret = cs35l56_cal_data_debugfs_read(cs35l56_base, to, count, ppos);
- pm_runtime_autosuspend(cs35l56_base->dev);
-
- return ret;
+ return cs35l56_cal_data_debugfs_read(cs35l56_base, to, count, ppos);
}
static ssize_t cs35l56_hda_debugfs_cal_data_write(struct file *file,
if (ret < 0)
return ret;
- ret = pm_runtime_resume_and_get(cs35l56_base->dev);
+ PM_RUNTIME_ACQUIRE_IF_ENABLED_AUTOSUSPEND(cs35l56_base->dev, pm);
+ ret = PM_RUNTIME_ACQUIRE_ERR(&pm);
if (ret)
return ret;
else
count = -EIO;
- pm_runtime_autosuspend(cs35l56_base->dev);
-
return count;
}