Skip to contentSkip to conversation

nios2: trim CONFIG_SYS_MALLOC_LEN

PATCH New Thomas Chou 2 participants 8 messages Nov 4, 2015 – Nov 9, 2015

lore
Share & tools
lore
#0 lore raw

PATCH 1/2 nios2: trim CONFIG_SYS_MALLOC_LEN

Trim CONFIG_SYS_MALLOC_LEN size, because CONFIG_ENV_SIZE is included to total memory allocation in common.h,

---
 include/configs/nios2-generic.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
include/configs/nios2-generic.h +1 -1
index 6e426d6..9a01b22 100644
@@ -82,7 +82,7 @@
 #define CONFIG_SYS_MONITOR_BASE	(CONFIG_SYS_SDRAM_BASE + \
 					 CONFIG_SYS_SDRAM_SIZE - \
 					 CONFIG_SYS_MONITOR_LEN)
-#define CONFIG_SYS_MALLOC_LEN		(CONFIG_ENV_SIZE + 0x20000)
+#define CONFIG_SYS_MALLOC_LEN		0x20000
 
 /*
  * MISC
Signature · 1 line
2.5.0
#1 lore raw

PATCH 1/2 nios2: trim CONFIG_SYS_MALLOC_LEN

Quoted 8 lines · Thomas Chou

Trim CONFIG_SYS_MALLOC_LEN size, because CONFIG_ENV_SIZE is included to total memory allocation in common.h,

---
  include/configs/nios2-generic.h | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

Applied to u-boot-nios.

Quoted 14 lines
include/configs/nios2-generic.h +1 -1
index 6e426d6..9a01b22 100644
@@ -82,7 +82,7 @@
  #define CONFIG_SYS_MONITOR_BASE	(CONFIG_SYS_SDRAM_BASE + \
  					 CONFIG_SYS_SDRAM_SIZE - \
  					 CONFIG_SYS_MONITOR_LEN)
-#define CONFIG_SYS_MALLOC_LEN		(CONFIG_ENV_SIZE + 0x20000)
+#define CONFIG_SYS_MALLOC_LEN		0x20000
 
  /*
   * MISC
#3 lore raw

PATCH 2/2 nios2: trim CONFIG_SYS_MEMTEST_END

In reply to Thomas Chou

Trim CONFIG_SYS_MEMTEST_END location.

CONFIG_SYS_MONITOR_LEN
Reserving 256k for U-Boot at: d7fc0000
CONFIG_ENV_SIZE
CONFIG_SYS_MALLOC_LEN
Reserving 256k for malloc() at: d7f80000
0x10000 for the rest
Reserving 68 Bytes for Board Info at: d7f7ffbc Reserving 208 Bytes for Global Data at: d7f7feec Reserving 12000 Bytes for FDT at: d7f7d00c Stack

---
 include/configs/nios2-generic.h | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
include/configs/nios2-generic.h +4 -1
index 9a01b22..4569de8 100644
@@ -96,7 +96,10 @@
 					 16)	/* Print buf size */
 #define CONFIG_SYS_LOAD_ADDR		CONFIG_SYS_SDRAM_BASE
 #define CONFIG_SYS_MEMTEST_START	CONFIG_SYS_SDRAM_BASE
-#define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_INIT_SP - 0x20000)
+#define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_MONITOR_BASE - \
+					 CONFIG_ENV_SIZE - \
+					 CONFIG_SYS_MALLOC_LEN -	\
+					 0x10000)
 #define CONFIG_CMDLINE_EDITING
 #define CONFIG_CMD_GPIO
 
Signature · 1 line
2.5.0
#4 lore raw

PATCH 2/2 nios2: trim CONFIG_SYS_MEMTEST_END

Quoted 23 lines · thomas at wytron.com.tw

Trim CONFIG_SYS_MEMTEST_END location.

CONFIG_SYS_MONITOR_LEN
Reserving 256k for U-Boot at: d7fc0000
CONFIG_ENV_SIZE
CONFIG_SYS_MALLOC_LEN
Reserving 256k for malloc() at: d7f80000
0x10000 for the rest
Reserving 68 Bytes for Board Info at: d7f7ffbc Reserving 208 Bytes for Global Data at: d7f7feec Reserving 12000 Bytes for FDT at: d7f7d00c Stack

---
 include/configs/nios2-generic.h | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
include/configs/nios2-generic.h +0 -0
index 9a01b22..4569de8 100644

include/configs/nios2-generic.h line 101

Quoted 7 lines
include/configs/nios2-generic.h +3 -1
@@ -96,7 +96,10 @@
 					 16)	/* Print buf size */
 #define CONFIG_SYS_LOAD_ADDR		CONFIG_SYS_SDRAM_BASE
 #define CONFIG_SYS_MEMTEST_START	CONFIG_SYS_SDRAM_BASE
-#define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_INIT_SP - 0x20000)
+#define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_MONITOR_BASE - \
+					 CONFIG_ENV_SIZE - \
+					 CONFIG_SYS_MALLOC_LEN -	\

Since CONFIG_ENV_IS_IN_FLASH, I believe we can take out the CONFIG_ENV_SIZE here.

Thanks
Chin Liang

Quoted 4 lines
include/configs/nios2-generic.h +1 -0
+					 0x10000)
 #define CONFIG_CMDLINE_EDITING
 #define CONFIG_CMD_GPIO
 
#5 lore raw

PATCH 2/2 nios2: trim CONFIG_SYS_MEMTEST_END

Hi Chin Liang,

Quoted 7 lines · Chin Liang See

include/configs/nios2-generic.h line 101

Quoted 3 lines
include/configs/nios2-generic.h +3 -0
+#define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_MONITOR_BASE - \
+					 CONFIG_ENV_SIZE - \
+					 CONFIG_SYS_MALLOC_LEN -	\

Since CONFIG_ENV_IS_IN_FLASH, I believe we can take out the CONFIG_ENV_SIZE here.

This comes from a very old macro in common.h,

#if defined(CONFIG_ENV_IS_EMBEDDED)
#define TOTAL_MALLOC_LEN CONFIG_SYS_MALLOC_LEN
#elif ( ((CONFIG_ENV_ADDR+CONFIG_ENV_SIZE) < CONFIG_SYS_MONITOR_BASE) || \
(CONFIG_ENV_ADDR >= (CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN))
) || \
defined(CONFIG_ENV_IS_IN_NVRAM)
#define TOTAL_MALLOC_LEN (CONFIG_SYS_MALLOC_LEN + CONFIG_ENV_SIZE)
#else
#define TOTAL_MALLOC_LEN CONFIG_SYS_MALLOC_LEN
#endif

The TOTAL_MALLOC_LEN is (CONFIG_SYS_MALLOC_LEN + CONFIG_ENV_SIZE) for nios2. I think the macro might need fix though.

Best regards,
Thomas

#6 lore raw

PATCH 2/2 nios2: trim CONFIG_SYS_MEMTEST_END

Hi Thomas,

Quoted 24 lines · thomas at wytron.com.tw

Hi Chin Liang,

Quoted 7 lines · Chin Liang See

include/configs/nios2-generic.h line 101

Quoted 3 lines
include/configs/nios2-generic.h +3 -0
+#define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_MONITOR_BASE - \
+					 CONFIG_ENV_SIZE - \
+					 CONFIG_SYS_MALLOC_LEN -	\

Since CONFIG_ENV_IS_IN_FLASH, I believe we can take out the CONFIG_ENV_SIZE here.

This comes from a very old macro in common.h,

#if defined(CONFIG_ENV_IS_EMBEDDED)
#define TOTAL_MALLOC_LEN CONFIG_SYS_MALLOC_LEN
#elif ( ((CONFIG_ENV_ADDR+CONFIG_ENV_SIZE) < CONFIG_SYS_MONITOR_BASE) || \
(CONFIG_ENV_ADDR >= (CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN))
) || \
defined(CONFIG_ENV_IS_IN_NVRAM)
#define TOTAL_MALLOC_LEN (CONFIG_SYS_MALLOC_LEN + CONFIG_ENV_SIZE)
#else
#define TOTAL_MALLOC_LEN CONFIG_SYS_MALLOC_LEN
#endif

Quoted 2 lines

The TOTAL_MALLOC_LEN is (CONFIG_SYS_MALLOC_LEN + CONFIG_ENV_SIZE) for nios2. I think the macro might need fix though.

Yah. In that case, it should be ok CONFIG_ENV_SIZE is much small. The memtest should sufficiently exercise the each memory lines. Thanks again for the patch.

Thanks
Chin Liang

Quoted 3 lines

Best regards,
Thomas

#7 lore raw

PATCH 2/2 nios2: trim CONFIG_SYS_MEMTEST_END

In reply to Thomas Chou
Quoted 13 lines · Thomas Chou

Trim CONFIG_SYS_MEMTEST_END location.

CONFIG_SYS_MONITOR_LEN
Reserving 256k for U-Boot at: d7fc0000
CONFIG_ENV_SIZE
CONFIG_SYS_MALLOC_LEN
Reserving 256k for malloc() at: d7f80000
0x10000 for the rest
Reserving 68 Bytes for Board Info at: d7f7ffbc Reserving 208 Bytes for Global Data at: d7f7feec Reserving 12000 Bytes for FDT at: d7f7d00c Stack

Quoted 5 lines
---
  include/configs/nios2-generic.h | 5 ++++-
  1 file changed, 4 insertions(+), 1 deletion(-)

Applied to u-boot-nios.

Quoted 17 lines
include/configs/nios2-generic.h +4 -1
index 9a01b22..4569de8 100644
@@ -96,7 +96,10 @@
  					 16)	/* Print buf size */
  #define CONFIG_SYS_LOAD_ADDR		CONFIG_SYS_SDRAM_BASE
  #define CONFIG_SYS_MEMTEST_START	CONFIG_SYS_SDRAM_BASE
-#define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_INIT_SP - 0x20000)
+#define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_MONITOR_BASE - \
+					 CONFIG_ENV_SIZE - \
+					 CONFIG_SYS_MALLOC_LEN -	\
+					 0x10000)
  #define CONFIG_CMDLINE_EDITING
  #define CONFIG_CMD_GPIO