[U-Boot-Users] Stack Size for MPC8xx???

Hi there,
does someone know how big the stack is for an MPC8xx based boards?
I had this problem:
I started porting U-Boot to my new AT91RM9200 based board. After doing the flash code I tried "saveenv". Simple reading, writing and erasing was working. But the board crashed when doing "saveenv".
I found these lines in common/env_flash.c:
int saveenv(void) { ... #if defined(CFG_ENV_SECT_SIZE) && (CFG_ENV_SECT_SIZE > CFG_ENV_SIZE) ulong flash_offset; uchar env_buffer[CFG_ENV_SECT_SIZE]; #else ... /* copy old contents to temporary buffer */ memcpy (env_buffer, (void *)flash_sect_addr, CFG_ENV_SECT_SIZE);
I have CFG_ENV_SECT_SIZE = 64K and CFG_ENV_SIZE=4K and realized that my stack was far to small to save an 64KB flash sector.
The funny thing is that I never worried about that issue. And it never seems to be a problem on our MPC8xx based boards...
Thanks.

Dear Steven,
in message 3F913F10.2010706@imc-berlin.de you wrote:
does someone know how big the stack is for an MPC8xx based boards?
This is board-dependend - how much RAM do you have?
On MPC8xx the stack grows downward, so it can become as big as necessary as long as it does not colide with the exception vector table or any data you put into RAM.
I had this problem:
I started porting U-Boot to my new AT91RM9200 based board. After doing the flash
...
I have CFG_ENV_SECT_SIZE = 64K and CFG_ENV_SIZE=4K and realized that my stack was far to small to save an 64KB flash sector.
This is one of the consequences of the broken design we inherited from ARMBoot.
The funny thing is that I never worried about that issue. And it never se ems to be a problem on our MPC8xx based boards...
That's because PPC uses a different memory layout (as documented in the README).
Best regards,
Wolfgang Denk
participants (2)
-
Steven Scholz
-
Wolfgang Denk