aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@stericsson.com>2011-05-18 14:18:57 +0200
committerVinod Koul <vinod.koul@intel.com>2011-05-19 16:56:26 +0530
commita0eb221a446f2f6c988430f0b0a13f74b7c2b799 (patch)
tree1acb53fd96021665712a83532b7df78dc77a3fed
parenta7c57cf7d4327c41510f8cbf45b1b970e02c34f8 (diff)
downloadkernel_samsung_smdk4412-a0eb221a446f2f6c988430f0b0a13f74b7c2b799.zip
kernel_samsung_smdk4412-a0eb221a446f2f6c988430f0b0a13f74b7c2b799.tar.gz
kernel_samsung_smdk4412-a0eb221a446f2f6c988430f0b0a13f74b7c2b799.tar.bz2
dmaengine: move link order
Move the dmaengine subsystem up early in the drivers Makefile so DMA is made available early to all drivers, just like e.g. regulators. Now even regulators can use DMA on the same initlevel. As a result we can bump the ste_dma40 and coh901318 dmaengine drivers down one initlevel to subsys_init(). Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
-rw-r--r--drivers/Makefile4
-rw-r--r--drivers/dma/coh901318.c2
-rw-r--r--drivers/dma/ste_dma40.c2
3 files changed, 5 insertions, 3 deletions
diff --git a/drivers/Makefile b/drivers/Makefile
index 3f135b6..e68423d 100644
--- a/drivers/Makefile
+++ b/drivers/Makefile
@@ -17,6 +17,9 @@ obj-$(CONFIG_SFI) += sfi/
# was used and do nothing if so
obj-$(CONFIG_PNP) += pnp/
obj-$(CONFIG_ARM_AMBA) += amba/
+# Many drivers will want to use DMA so this has to be made available
+# really early.
+obj-$(CONFIG_DMA_ENGINE) += dma/
obj-$(CONFIG_VIRTIO) += virtio/
obj-$(CONFIG_XEN) += xen/
@@ -92,7 +95,6 @@ obj-$(CONFIG_EISA) += eisa/
obj-y += lguest/
obj-$(CONFIG_CPU_FREQ) += cpufreq/
obj-$(CONFIG_CPU_IDLE) += cpuidle/
-obj-$(CONFIG_DMA_ENGINE) += dma/
obj-$(CONFIG_MMC) += mmc/
obj-$(CONFIG_MEMSTICK) += memstick/
obj-$(CONFIG_NEW_LEDS) += leds/
diff --git a/drivers/dma/coh901318.c b/drivers/dma/coh901318.c
index 00deabd..b5a3189 100644
--- a/drivers/dma/coh901318.c
+++ b/drivers/dma/coh901318.c
@@ -1610,7 +1610,7 @@ int __init coh901318_init(void)
{
return platform_driver_probe(&coh901318_driver, coh901318_probe);
}
-arch_initcall(coh901318_init);
+subsys_initcall(coh901318_init);
void __exit coh901318_exit(void)
{
diff --git a/drivers/dma/ste_dma40.c b/drivers/dma/ste_dma40.c
index 65d2535..5d054bb 100644
--- a/drivers/dma/ste_dma40.c
+++ b/drivers/dma/ste_dma40.c
@@ -2962,4 +2962,4 @@ static int __init stedma40_init(void)
{
return platform_driver_probe(&d40_driver, d40_probe);
}
-arch_initcall(stedma40_init);
+subsys_initcall(stedma40_init);