Skip to content

Commit b62eaff

Browse files
TE-N-ShengjiuWangbroonie
authored andcommitted
ASoC: fsl_easrc: register m2m platform device
Register m2m platform device,that user can use M2M feature. Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com> Acked-by: Jaroslav Kysela <perex@perex.cz> Link: https://patch.msgid.link/20241212074509.3445859-7-shengjiu.wang@nxp.com Signed-off-by: Mark Brown <broonie@kernel.org>
1 parent 286d658 commit b62eaff

File tree

1 file changed

+31
-2
lines changed

1 file changed

+31
-2
lines changed

sound/soc/fsl/fsl_easrc.c

Lines changed: 31 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2204,6 +2204,12 @@ static int fsl_easrc_probe(struct platform_device *pdev)
22042204
goto err_pm_disable;
22052205
}
22062206

2207+
ret = fsl_asrc_m2m_init(easrc);
2208+
if (ret) {
2209+
dev_err(&pdev->dev, "failed to init m2m device %d\n", ret);
2210+
return ret;
2211+
}
2212+
22072213
return 0;
22082214

22092215
err_pm_disable:
@@ -2213,6 +2219,10 @@ static int fsl_easrc_probe(struct platform_device *pdev)
22132219

22142220
static void fsl_easrc_remove(struct platform_device *pdev)
22152221
{
2222+
struct fsl_asrc *easrc = dev_get_drvdata(&pdev->dev);
2223+
2224+
fsl_asrc_m2m_exit(easrc);
2225+
22162226
pm_runtime_disable(&pdev->dev);
22172227
}
22182228

@@ -2313,10 +2323,29 @@ static int fsl_easrc_runtime_resume(struct device *dev)
23132323
return ret;
23142324
}
23152325

2326+
static int fsl_easrc_suspend(struct device *dev)
2327+
{
2328+
struct fsl_asrc *easrc = dev_get_drvdata(dev);
2329+
int ret;
2330+
2331+
fsl_asrc_m2m_suspend(easrc);
2332+
ret = pm_runtime_force_suspend(dev);
2333+
return ret;
2334+
}
2335+
2336+
static int fsl_easrc_resume(struct device *dev)
2337+
{
2338+
struct fsl_asrc *easrc = dev_get_drvdata(dev);
2339+
int ret;
2340+
2341+
ret = pm_runtime_force_resume(dev);
2342+
fsl_asrc_m2m_resume(easrc);
2343+
return ret;
2344+
}
2345+
23162346
static const struct dev_pm_ops fsl_easrc_pm_ops = {
23172347
RUNTIME_PM_OPS(fsl_easrc_runtime_suspend, fsl_easrc_runtime_resume, NULL)
2318-
SET_SYSTEM_SLEEP_PM_OPS(pm_runtime_force_suspend,
2319-
pm_runtime_force_resume)
2348+
SYSTEM_SLEEP_PM_OPS(fsl_easrc_suspend, fsl_easrc_resume)
23202349
};
23212350

23222351
static struct platform_driver fsl_easrc_driver = {

0 commit comments

Comments
 (0)