Skip to content

Commit

Permalink
ata/pata_arasan_cf: Add Hibernation support
Browse files Browse the repository at this point in the history
This patch adds in Hibernation related callbacks. Also we don't really need to
free DMA channel on suspend.

Signed-off-by: Viresh Kumar <viresh.kumar@st.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
  • Loading branch information
Viresh Kumar authored and Jeff Garzik committed Mar 13, 2012
1 parent 9716387 commit 40679b3
Showing 1 changed file with 4 additions and 8 deletions.
12 changes: 4 additions & 8 deletions drivers/ata/pata_arasan_cf.c
Original file line number Diff line number Diff line change
Expand Up @@ -925,11 +925,10 @@ static int arasan_cf_suspend(struct device *dev)
struct ata_host *host = dev_get_drvdata(dev);
struct arasan_cf_dev *acdev = host->ports[0]->private_data;

if (acdev->dma_chan) {
if (acdev->dma_chan)
acdev->dma_chan->device->device_control(acdev->dma_chan,
DMA_TERMINATE_ALL, 0);
dma_release_channel(acdev->dma_chan);
}

cf_exit(acdev);
return ata_host_suspend(host, PMSG_SUSPEND);
}
Expand All @@ -945,10 +944,7 @@ static int arasan_cf_resume(struct device *dev)
return 0;
}

static const struct dev_pm_ops arasan_cf_pm_ops = {
.suspend = arasan_cf_suspend,
.resume = arasan_cf_resume,
};
static SIMPLE_DEV_PM_OPS(arasan_cf_pm_ops, arasan_cf_suspend, arasan_cf_resume);
#endif

static struct platform_driver arasan_cf_driver = {
Expand All @@ -958,7 +954,7 @@ static struct platform_driver arasan_cf_driver = {
.name = DRIVER_NAME,
.owner = THIS_MODULE,
#ifdef CONFIG_PM
.pm = &arasan_cf_pm_ops,
.pm = &arasan_cf_pm_ops,
#endif
},
};
Expand Down

0 comments on commit 40679b3

Please sign in to comment.