summaryrefslogtreecommitdiffstats
path: root/include/soc
diff options
context:
space:
mode:
authorPeter De Schrijver <pdeschrijver@nvidia.com>2014-06-12 18:36:35 +0300
committerThierry Reding <treding@nvidia.com>2014-07-17 13:36:44 +0200
commit3f394f80645bf0c38a30042ba605c71663331035 (patch)
tree6acabf07689afc6b71bb0409d100ffb732fcb236 /include/soc
parent304664eab93f9e95a8d28fbd9702ede88bb10cc5 (diff)
downloadlinux-3f394f80645bf0c38a30042ba605c71663331035.tar.gz
linux-3f394f80645bf0c38a30042ba605c71663331035.tar.bz2
linux-3f394f80645bf0c38a30042ba605c71663331035.zip
ARM: tegra: export apb dma readl/writel
Export APB DMA readl and writel. These are needed because we can't access the fuses directly on Tegra20 without potentially causing a system hang. Also have the APB DMA readl and writel return an error in case of a read failure instead of just returning zero or ignore write failures. Signed-off-by: Peter De Schrijver <pdeschrijver@nvidia.com> Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
Diffstat (limited to 'include/soc')
-rw-r--r--include/soc/tegra/fuse.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/include/soc/tegra/fuse.h b/include/soc/tegra/fuse.h
index 0e03f104fbf8..a43a750dd0a3 100644
--- a/include/soc/tegra/fuse.h
+++ b/include/soc/tegra/fuse.h
@@ -27,6 +27,20 @@
u32 tegra_read_chipid(void);
u8 tegra_get_chip_id(void);
+#if defined(CONFIG_TEGRA20_APB_DMA)
+int tegra_apb_readl_using_dma(unsigned long offset, u32 *value);
+int tegra_apb_writel_using_dma(u32 value, unsigned long offset);
+#else
+static inline int tegra_apb_readl_using_dma(unsigned long offset, u32 *value)
+{
+ return -EINVAL;
+}
+static inline int tegra_apb_writel_using_dma(u32 value, unsigned long offset)
+{
+ return -EINVAL;
+}
+#endif /* CONFIG_TEGRA20_APB_DMA */
+
#endif /* __ASSEMBLY__ */
#endif /* __SOC_TEGRA_FUSE_H__ */