summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/fuse.h
diff options
context:
space:
mode:
authorColin Cross <ccross@android.com>2010-11-24 14:44:09 -0800
committerColin Cross <ccross@android.com>2010-11-24 21:49:11 -0800
commitad42ec439870c1198bb263d3764d1f5cb516880a (patch)
tree3ad290832e74acab4902adf3929beb4cf1c8438d /arch/arm/mach-tegra/fuse.h
parent5310d336e188883341c9069115e05540c16891b1 (diff)
ARM: tegra: fuse: Separate fuse dma initialization
There is a dependency loop between fuses, clocks, and APBDMA. If dma is enabled, fuse reads must go through APBDMA to avoid corruption due to a hw bug. APBDMA requires a clock to be enabled. Clocks must read a fuse to determine allowable cpu frequencies. Separate out the fuse DMA initialization, and allow the fuse read and write functions to be called without using DMA before the DMA initialization has been completed. Access to the fuses before APBDMA is initialized won't hit the hardware bug because nothing else can be using DMA. Change-Id: Ib5cb0f346488f2869e8314c5f3b24fd86873f4c3 Signed-off-by: Colin Cross <ccross@android.com>
Diffstat (limited to 'arch/arm/mach-tegra/fuse.h')
-rw-r--r--arch/arm/mach-tegra/fuse.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/fuse.h b/arch/arm/mach-tegra/fuse.h
index 82461036a0e1..624bbfa6e5fb 100644
--- a/arch/arm/mach-tegra/fuse.h
+++ b/arch/arm/mach-tegra/fuse.h
@@ -22,5 +22,6 @@ int tegra_sku_id(void);
int tegra_cpu_process_id(void);
int tegra_core_process_id(void);
void tegra_init_fuse(void);
+void tegra_init_fuse_dma(void);
u32 tegra_fuse_readl(unsigned long offset);
void tegra_fuse_writel(u32 value, unsigned long offset);