summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorColin Cross <ccross@android.com>2011-04-09 11:48:48 -0700
committerDan Willemsen <dwillemsen@nvidia.com>2011-11-30 21:37:09 -0800
commit706cff527548fc8e58b42b5c0a5c2aa08600a3ce (patch)
treefcb9a39d7370a4e5726299ea8bc6b22683155996
parentae6289282c1281b39164b199095c414fb08a7963 (diff)
ARM: tegra: apbio: move init to arch_initcall
Change-Id: Iaf07fe2412a012c3b02850fecc6f1dba90bd8ff1 Signed-off-by: Colin Cross <ccross@android.com>
-rw-r--r--arch/arm/mach-tegra/apbio.c8
-rw-r--r--arch/arm/mach-tegra/apbio.h1
-rw-r--r--arch/arm/mach-tegra/common.c1
3 files changed, 5 insertions, 5 deletions
diff --git a/arch/arm/mach-tegra/apbio.c b/arch/arm/mach-tegra/apbio.c
index d6e08c966e72..b5e6caf20104 100644
--- a/arch/arm/mach-tegra/apbio.c
+++ b/arch/arm/mach-tegra/apbio.c
@@ -129,14 +129,14 @@ void tegra_apb_writel(u32 value, unsigned long offset)
apb_writel(value, offset);
}
-void tegra_init_apb_dma(void)
+static int tegra_init_apb_dma(void)
{
#ifdef CONFIG_TEGRA_SYSTEM_DMA
tegra_apb_dma = tegra_dma_allocate_channel(TEGRA_DMA_MODE_ONESHOT |
TEGRA_DMA_SHARED);
if (!tegra_apb_dma) {
pr_err("%s: can not allocate dma channel\n", __func__);
- return;
+ return -ENODEV;
}
tegra_apb_bb = dma_alloc_coherent(NULL, sizeof(u32),
@@ -145,7 +145,9 @@ void tegra_init_apb_dma(void)
pr_err("%s: can not allocate bounce buffer\n", __func__);
tegra_dma_free_channel(tegra_apb_dma);
tegra_apb_dma = NULL;
- return;
+ return -ENOMEM;
}
#endif
+ return 0;
}
+arch_initcall(tegra_init_apb_dma);
diff --git a/arch/arm/mach-tegra/apbio.h b/arch/arm/mach-tegra/apbio.h
index a8b8250c891a..f0c87f06a209 100644
--- a/arch/arm/mach-tegra/apbio.h
+++ b/arch/arm/mach-tegra/apbio.h
@@ -17,4 +17,3 @@
u32 tegra_apb_readl(unsigned long offset);
void tegra_apb_writel(u32 value, unsigned long offset);
-void tegra_init_apb_dma(void);
diff --git a/arch/arm/mach-tegra/common.c b/arch/arm/mach-tegra/common.c
index 6ad3629827bf..b62b8a6e0850 100644
--- a/arch/arm/mach-tegra/common.c
+++ b/arch/arm/mach-tegra/common.c
@@ -151,7 +151,6 @@ void __init tegra_init_early(void)
tegra_clk_init_from_table(common_clk_init_table);
tegra_init_power();
tegra_init_cache();
- tegra_init_apb_dma();
}
static int __init tegra_lp0_vec_arg(char *options)