
Hi,
I am a newbie to u-boot as well as embedded system development, I have problem to port u-boot to my board.
I have a customized board with Motorola MC9328MXL processor, which is the same as mx1ads board. The hardware configurations as below:
CPU: Motorola Dragon Ball MXL microcontroller (ARM920T CPU Core) CPU Core speed 192MHZ and System Speed 96MHz
RAM: 8M bytes Ram address: 0x08000000 ---- 0x08800000
Flash: 2M Bytes For bootup, 0x00000000 -- 0x00200000 For normal working, 0x10000000 -- 0x10200000
I/O: 1 Serial at UART 1 1 USB slave No Ethernet
According to the above configs, I did the following modification to mx1ads.h
#define CFG_MEMTEST_START 0x08100000 /* memtest works on */ #define CFG_MEMTEST_END 0x08800000 /* 7 MB in DRAM */
#define CFG_LOAD_ADDR 0x08400000 /* default load address */
/*----------------------------------------------------------------------- * Physical Memory Map */
#define CONFIG_NR_DRAM_BANKS 1 /* we have 1 bank of SDRAM */ #define PHYS_SDRAM_1 0x08000000 /* SDRAM on CSD0 */ #define PHYS_SDRAM_1_SIZE 0x00800000 /* 8 MB */
#define CFG_MAX_FLASH_BANKS 1 /* 1 bank of SyncFlash */ #define CFG_FLASH_BASE 0x00000000 /* SyncFlash on CSD1 */ #define FLASH_BANK_SIZE 0x00200000 /* 2 MB Total */
/*----------------------------------------------------------------------- * FLASH and environment organization */
#define CONFIG_SYNCFLASH 1 #define PHYS_FLASH_SIZE 0x00200000 #define CFG_MAX_FLASH_SECT (8) #define CFG_ENV_ADDR (CFG_FLASH_BASE+0x00080000)
#define CFG_ENV_IS_IN_FLASH 1 #define CFG_ENV_SIZE 0x04000 /* Total Size of Environment Sector */ #define CFG_ENV_SECT_SIZE 0x040000
After compilation, I download the u-boot.bin to 0x08000000 with Trace32 Then set PC to 0x08000000 and run
But how can I know it running ok? The serial port doesn't have any data ( I monitored with oscilloscope) And from the Trace32 Debugger, the CPU will keep looping at some point.