
Hi, thaoth .
2008/8/7 thaoth thaoth@cybersoft-vn.com:
Here is configuration of UBoot \board\ms7727se\config.mk : TEXT_BASE = 0x8DFC0000 \board\ms7727se\u-boot.lds
OUTPUT_FORMAT("elf32-sh-tkernel", "elf32-sh-tkernel", "elf32-sh-tkernel") SECTIONS { . = 0x8C000000 + (32*1024*1024) - (256*1024);
\include\configs\ms7727se.h /* MEMORY */ #define MS7720SE_SDRAM_BASE 0x8C000000 #define MS7720SE_FLASH_BASE_1 0x80000000 //0xA0000000 #define MS7720SE_FLASH_BANK_SIZE (8 * 1024 * 1024)
#define CFG_MEMTEST_START MS7720SE_SDRAM_BASE #define CFG_MEMTEST_END (CFG_MEMTEST_START + (60 * 1024 * 1024))
#define CFG_SDRAM_BASE MS7720SE_SDRAM_BASE #define CFG_SDRAM_SIZE (32 * 1024 * 1024)
#define CFG_LOAD_ADDR (CFG_SDRAM_BASE + 32 * 1024 * 1024) #define CFG_MONITOR_BASE MS7720SE_FLASH_BASE_1 #define CFG_MONITOR_LEN (128 * 1024) #define CFG_MALLOC_LEN (256 * 1024) #define CFG_GBL_DATA_SIZE 256 #define CFG_BOOTMAPSZ (8 * 1024 * 1024)
/* FLASH */ #define CFG_FLASH_CFI #define CFG_FLASH_CFI_DRIVER #undef CFG_FLASH_QUIET_TEST #define CFG_FLASH_EMPTY_INFO /* print 'E' for empty sector on flinfo */
#define CFG_FLASH_BASE MS7720SE_FLASH_BASE_1
Would you please help me have a look this setting?
- Is this setting correct ? I am confusing about TEXT_BASE with
CFG_LOAD_ADDR. Here is definition
CFG_FLASH_BASE: Physical start address of Flash memory.
CFG_MONITOR_BASE: Physical start address of boot monitor code (set by make config files to be same as the text base address (TEXT_BASE) used when linking) - same as CFG_FLASH_BASE when booting from flash.
Yes, you are right. If you use *make config_xx ; make* , you can make an u-boot.srec file starting from the memory (May be address is 0x8DFC000).
I think that you know it, T-engine has a monitor program. The T-engine user uses this monitor program and writes in it at a flash bulb. However, as for this program, only a SREC file is usable.
If you want make SREC file to Flash, you need to use objcopy command. shX-linux-objcopy -Ibinary -Osrec u-boot.bin u-boot.flash.srec Please check doc/README.sh.
If I am wrong, please tell me how to correct these setting.
- "ld" T-Engine toolchain only supports elf32-sh-tkernel target, but
reference implementation (example) tell "elf32-sh-linux" is expected target. Is the setting correct?
\board\ms7727se\u-boot.lds Original : OUTPUT_FORMAT("elf32-sh-linux", "elf32-sh-linux", "elf32-sh-linux") -> My changes OUTPUT_FORMAT("elf32-sh-tkernel", "elf32-sh-tkernel", "elf32-sh-tkernel")
Hmmm, I have not used the tool-chain for t-kernel. However, as for me, there is an acquaintance using t-kernel. I can ask him. And, I will reply about this matter.
I am newbie in embedded system. I am appreciating your helping. Thank you a lot.
I think that I want to support t-kernel and other OS to U-boot-sh. I cooperate with you.
Best regards, Nobuhiro