summaryrefslogtreecommitdiffstats
path: root/kernel/arch/arm/plat-omap/include/plat/sram.h
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/arch/arm/plat-omap/include/plat/sram.h')
-rw-r--r--kernel/arch/arm/plat-omap/include/plat/sram.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/kernel/arch/arm/plat-omap/include/plat/sram.h b/kernel/arch/arm/plat-omap/include/plat/sram.h
new file mode 100644
index 000000000..ba4525059
--- /dev/null
+++ b/kernel/arch/arm/plat-omap/include/plat/sram.h
@@ -0,0 +1,16 @@
+int omap_sram_init(void);
+
+void omap_map_sram(unsigned long start, unsigned long size,
+ unsigned long skip, int cached);
+void omap_sram_reset(void);
+
+extern void *omap_sram_push_address(unsigned long size);
+
+/* Macro to push a function to the internal SRAM, using the fncpy API */
+#define omap_sram_push(funcp, size) ({ \
+ typeof(&(funcp)) _res = NULL; \
+ void *_sram_address = omap_sram_push_address(size); \
+ if (_sram_address) \
+ _res = fncpy(_sram_address, &(funcp), size); \
+ _res; \
+})