All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] arm, omap2, sram: On HS/EMU devices, only 64K internal SRAM is available.
@ 2015-10-13  5:54 ` Heiko Schocher
  0 siblings, 0 replies; 12+ messages in thread
From: Heiko Schocher @ 2015-10-13  5:54 UTC (permalink / raw)
  To: linux-kernel
  Cc: Heiko Schocher, Ayoub Zaki, Russell King, linux-omap,
	Georg.Soffel, linux-arm-kernel, Tony Lindgren

Of this, secure content (including PPA) uses initial
portion of the SRAM. This chunk is not (and shouldn't
be) accessible from the public code.

The minimum size of this chunk (0x350) is used in this
patch. Available size is rounded off to 63K.

Both values would require a change if size of secure
content grows beyond 0x350.

Signed-off-by: Heiko Schocher <hs@denx.de>
Signed-off-by: Ayoub Zaki <Ayoub.Zaki@bosch-si.com>
---

 arch/arm/mach-omap2/sram.c | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/arch/arm/mach-omap2/sram.c b/arch/arm/mach-omap2/sram.c
index cd488b8..2e7c00f 100644
--- a/arch/arm/mach-omap2/sram.c
+++ b/arch/arm/mach-omap2/sram.c
@@ -47,6 +47,28 @@
 
 #define GP_DEVICE		0x300
 
+/**
+ * Size of chunk used by secure content in the HS/EMU devices.
+ *
+ * This size is not fixed. It depends upon the implementation of PPA.
+ * May need to be modified if the size grows.
+ */
+#define AM33XX_HS_HEADER_SIZE   0x0350
+
+/**
+ * Start of public SRAM on HS/EMU devices.
+ */
+#define AM33XX_SRAM_PA		0x40300000
+#define AM33XX_SRAM_PUB_PA	(AM33XX_SRAM_PA + AM33XX_HS_HEADER_SIZE)
+
+/**
+ * Size of public SRAM available on HS/EMU devices.
+ *
+ * This size also depends upon AM33XX_HS_HEADER_SIZE.
+ * Current value is derived from nearest round-off.
+ */
+#define AM33XX_SRAM_PUB_SIZE		0xfc00	/* 63K */
+
 #define ROUND_DOWN(value,boundary)	((value) & (~((boundary)-1)))
 
 static unsigned long omap_sram_start;
@@ -99,6 +121,9 @@ static void __init omap_detect_sram(void)
 			} else {
 				omap_sram_size = 0x8000; /* 32K */
 			}
+		} else if (soc_is_am33xx()) {
+			omap_sram_start = AM33XX_SRAM_PUB_PA;
+			omap_sram_size  = AM33XX_SRAM_PUB_SIZE;
 		} else {
 			omap_sram_start = OMAP2_SRAM_PUB_PA;
 			omap_sram_size = 0x800; /* 2K */
-- 
2.1.0

^ permalink raw reply related	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2015-10-15  4:26 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-10-13  5:54 [PATCH] arm, omap2, sram: On HS/EMU devices, only 64K internal SRAM is available Heiko Schocher
2015-10-13  5:54 ` Heiko Schocher
2015-10-14 17:49 ` Tony Lindgren
2015-10-14 17:49   ` Tony Lindgren
2015-10-14 22:20   ` Tony Lindgren
2015-10-14 22:20     ` Tony Lindgren
2015-10-14 23:54     ` Tony Lindgren
2015-10-14 23:54       ` Tony Lindgren
2015-10-15  4:26     ` Heiko Schocher
2015-10-15  4:26       ` Heiko Schocher
2015-10-15  3:57   ` Heiko Schocher
2015-10-15  3:57     ` Heiko Schocher

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.