8 Jul
2021
8 Jul
'21
1:41 p.m.
On 7/7/21 10:04 PM, Pierre-Louis Bossart wrote:
+static int snd_acp5x_suspend(struct device *dev) +{
- int ret;
- struct acp5x_dev_data *adata;
- adata = dev_get_drvdata(dev);
- ret = acp5x_deinit(adata->acp5x_base);
- if (ret)
dev_err(dev, "ACP de-init failed\n");
- else
dev_dbg(dev, "ACP de-initialized\n");
- return ret;
+}
+static int snd_acp5x_resume(struct device *dev) +{
- int ret;
- struct acp5x_dev_data *adata;
- adata = dev_get_drvdata(dev);
- ret = acp5x_init(adata->acp5x_base);
- if (ret) {
dev_err(dev, "ACP init failed\n");
return ret;
- }
- return 0;
+}
+static const struct dev_pm_ops acp5x_pm = {
- .runtime_suspend = snd_acp5x_suspend,
- .runtime_resume = snd_acp5x_resume,
- .resume = snd_acp5x_resume,
use SET_SYSTEM_SLEEP_PM_OPS and SET_RUNTIME_PM_OPS?
We will modify the code.
also not clear why you don't have a .suspend here
It was a miss. we will add .suspend callback which invokes same callback "snd_acp5x_suspend".
And to avoid warnings use __maybe_unused for those callbacks when PM is disabled?
Agreed. We will modify the code and post the new version.