AnsweredAssumed Answered

How to boot P1022 u-boot into internal SRAM

Question asked by Adrian Cox on Nov 7, 2013
Latest reply on Dec 17, 2013 by Dirk Eibach

I'm attempting to build a u-boot version for P1022 that will boot into SRAM, so that it can discover and configure any installed DIMM. I'm concerned that the standard boot file (config_ddr3_2gb_p1022ds.dat) won't work reliably on a machine fitted with a smaller or slower DIMM.

 

I've found and fixed the following problems, but there are more remaining. Has anybody got a configuration like this to work?

 

1. The config_sram_p1022ds.dat file sets the boot vector to f8f80000, rather than f8fff000 used in config_sram_p2020ds.dat

2. The u-boot config file for the P1022DS in SD boot mode sets TEXT_BASE to 0x11000000, rather than the 0xf8f80000 used in P2020DS.h

 

My config file:

040:424f4f54      Boot signature

044:00000000

048:00080000      Image size - should be overridden by boot-format

04c:00000000

050:00001000      Image location on SD card - should be overridden by boot-format

054:00000000

058:f8f80000      RAM address of image

05c:00000000

060:f8fff000      Start vector

064:00000000

068:00000006      Config size

 

 

080:ff720100     Set L2SRAM to f8f80000

084:f8f80000

088:ff720e44     Disable L2 cache ECC errors

08c:0000000c

090:ff720000     Enable L2 as all SRAM

094:80010000

098:ff72e40c     Set RD_SAFE on SDHC controller

09c:00000040

0a0:40000001     Delay 0x100 instruction

0a4:00000100

0a8:80000001     End configuration

0ac:80000001

 

 

 

My modified u-boot config section:

 

#ifdef CONFIG_SDCARD

#define CONFIG_RAMBOOT_SDCARD

#define CONFIG_SYS_RAMBOOT

#define CONFIG_SYS_EXTRA_ENV_RELOC

#define CONFIG_SYS_TEXT_BASE 0xf8f80000

#define CONFIG_RESET_VECTOR_ADDRESS 0xf8fffffc

#endif

Outcomes