summaryrefslogtreecommitdiffstats
path: root/drivers/dma/fsl-edma.c
diff options
context:
space:
mode:
authorYuan Yao <yao.yuan@freescale.com>2014-04-04 06:27:55 +0200
committerVinod Koul <vinod.koul@intel.com>2014-04-16 08:33:47 +0200
commit8edc51c197b8f409bef7b21755254e6f3ce7ed23 (patch)
tree170f41e9d14ef5358fdd3fc20414974751ff4369 /drivers/dma/fsl-edma.c
parentdmaengine: sirf: off by one in of_dma_sirfsoc_xlate() (diff)
downloadlinux-8edc51c197b8f409bef7b21755254e6f3ce7ed23.tar.xz
linux-8edc51c197b8f409bef7b21755254e6f3ce7ed23.zip
dma: fix eDMA driver as a subsys_initcall
Because of some driver base on DMA, changed the initcall order as subsys_initcall. Signed-off-by: Yuan Yao <yao.yuan@freescale.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Diffstat (limited to 'drivers/dma/fsl-edma.c')
-rw-r--r--drivers/dma/fsl-edma.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/drivers/dma/fsl-edma.c b/drivers/dma/fsl-edma.c
index 381e793184ba..b396a7fb53ab 100644
--- a/drivers/dma/fsl-edma.c
+++ b/drivers/dma/fsl-edma.c
@@ -968,7 +968,17 @@ static struct platform_driver fsl_edma_driver = {
.remove = fsl_edma_remove,
};
-module_platform_driver(fsl_edma_driver);
+static int __init fsl_edma_init(void)
+{
+ return platform_driver_register(&fsl_edma_driver);
+}
+subsys_initcall(fsl_edma_init);
+
+static void __exit fsl_edma_exit(void)
+{
+ platform_driver_unregister(&fsl_edma_driver);
+}
+module_exit(fsl_edma_exit);
MODULE_ALIAS("platform:fsl-edma");
MODULE_DESCRIPTION("Freescale eDMA engine driver");