aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/dma/txx9dmac.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/dma/txx9dmac.c')
-rw-r--r--drivers/dma/txx9dmac.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/drivers/dma/txx9dmac.c b/drivers/dma/txx9dmac.c
index 197c7bc37895..fb6bb64e8861 100644
--- a/drivers/dma/txx9dmac.c
+++ b/drivers/dma/txx9dmac.c
@@ -1289,17 +1289,18 @@ static void txx9dmac_shutdown(struct platform_device *pdev)
1289 txx9dmac_off(ddev); 1289 txx9dmac_off(ddev);
1290} 1290}
1291 1291
1292static int txx9dmac_suspend_late(struct platform_device *pdev, 1292static int txx9dmac_suspend_noirq(struct device *dev)
1293 pm_message_t mesg)
1294{ 1293{
1294 struct platform_device *pdev = to_platform_device(dev);
1295 struct txx9dmac_dev *ddev = platform_get_drvdata(pdev); 1295 struct txx9dmac_dev *ddev = platform_get_drvdata(pdev);
1296 1296
1297 txx9dmac_off(ddev); 1297 txx9dmac_off(ddev);
1298 return 0; 1298 return 0;
1299} 1299}
1300 1300
1301static int txx9dmac_resume_early(struct platform_device *pdev) 1301static int txx9dmac_resume_noirq(struct device *dev)
1302{ 1302{
1303 struct platform_device *pdev = to_platform_device(dev);
1303 struct txx9dmac_dev *ddev = platform_get_drvdata(pdev); 1304 struct txx9dmac_dev *ddev = platform_get_drvdata(pdev);
1304 struct txx9dmac_platform_data *pdata = pdev->dev.platform_data; 1305 struct txx9dmac_platform_data *pdata = pdev->dev.platform_data;
1305 u32 mcr; 1306 u32 mcr;
@@ -1312,6 +1313,11 @@ static int txx9dmac_resume_early(struct platform_device *pdev)
1312 1313
1313} 1314}
1314 1315
1316static struct dev_pm_ops txx9dmac_dev_pm_ops = {
1317 .suspend_noirq = txx9dmac_suspend_noirq,
1318 .resume_noirq = txx9dmac_resume_noirq,
1319};
1320
1315static struct platform_driver txx9dmac_chan_driver = { 1321static struct platform_driver txx9dmac_chan_driver = {
1316 .remove = __exit_p(txx9dmac_chan_remove), 1322 .remove = __exit_p(txx9dmac_chan_remove),
1317 .driver = { 1323 .driver = {
@@ -1322,10 +1328,9 @@ static struct platform_driver txx9dmac_chan_driver = {
1322static struct platform_driver txx9dmac_driver = { 1328static struct platform_driver txx9dmac_driver = {
1323 .remove = __exit_p(txx9dmac_remove), 1329 .remove = __exit_p(txx9dmac_remove),
1324 .shutdown = txx9dmac_shutdown, 1330 .shutdown = txx9dmac_shutdown,
1325 .suspend_late = txx9dmac_suspend_late,
1326 .resume_early = txx9dmac_resume_early,
1327 .driver = { 1331 .driver = {
1328 .name = "txx9dmac", 1332 .name = "txx9dmac",
1333 .pm = &txx9dmac_dev_pm_ops,
1329 }, 1334 },
1330}; 1335};
1331 1336