2010/10/27 Shawn Guo <shawn....@gmail.com>: > This patch is to fix build breakage and support new relocatoin > scheme for mx51evk.
What's change is for the build breakage fix? Please state it clearly. > > - Correct IRAM base address and add size definition > > The IRAM starts from 0x1FFE0000 on final revsion i.mx51 than > 0x1FFE8000 which is for older revision. > > - Include imx-regs.h in mx51evk.h > > Definitions like CSD0_BASE_ADDR and IRAM_BASE_ADDR can be > referred to. > > - Define CONFIG_SYS_INIT_RAM_ADDR and CONFIG_SYS_INIT_RAM_SIZE > > This is something suggested by Wolfgang, and for automatic > calculation of macros like CONFIG_SYS_GBL_DATA_SIZE (done) and > CONFIG_SYS_INIT_SP_ADDR (later). > > - Remove comment for CONFIG_SYS_GBL_DATA_SIZE which has been > buried by Wolfgang's commit below > > 25ddd1fb: Replace CONFIG_SYS_GBL_DATA_SIZE by auto-generated value > > Signed-off-by: Shawn Guo <shawn....@gmail.com> > --- > Changes for v2: > - Combine two patches before into one, as the separation is not > so logical. > - Define init stack at the end of init RAM to address comments > from Stefano, Heiko and Wolfgang. > > arch/arm/include/asm/arch-mx5/imx-regs.h | 3 ++- > board/freescale/mx51evk/mx51evk.c | 6 +++--- > include/configs/mx51evk.h | 9 +++++++-- > 3 files changed, 12 insertions(+), 6 deletions(-) > > diff --git a/arch/arm/include/asm/arch-mx5/imx-regs.h > b/arch/arm/include/asm/arch-mx5/imx-regs.h > index 3ddda40..0b6249a 100644 > --- a/arch/arm/include/asm/arch-mx5/imx-regs.h > +++ b/arch/arm/include/asm/arch-mx5/imx-regs.h > @@ -26,7 +26,8 @@ > /* > * IRAM > */ > -#define IRAM_BASE_ADDR 0x1FFE8000 /* internal ram */ > +#define IRAM_BASE_ADDR 0x1FFE0000 /* internal ram */ > +#define IRAM_SIZE 0x00020000 /* 128 KB */ > /* > * Graphics Memory of GPU > */ > diff --git a/board/freescale/mx51evk/mx51evk.c > b/board/freescale/mx51evk/mx51evk.c > index c8d7d39..8820698 100644 > --- a/board/freescale/mx51evk/mx51evk.c > +++ b/board/freescale/mx51evk/mx51evk.c > @@ -52,9 +52,9 @@ u32 get_board_rev(void) > > int dram_init(void) > { > - gd->bd->bi_dram[0].start = PHYS_SDRAM_1; > - gd->bd->bi_dram[0].size = get_ram_size((long *)PHYS_SDRAM_1, > - PHYS_SDRAM_1_SIZE); > + /* dram_init must store complete ramsize in gd->ram_size */ > + gd->ram_size = get_ram_size((volatile void *)CONFIG_SYS_SDRAM_BASE, > + PHYS_SDRAM_1_SIZE); > return 0; > } > > diff --git a/include/configs/mx51evk.h b/include/configs/mx51evk.h > index f31fc4e..6dc1ffc 100644 > --- a/include/configs/mx51evk.h > +++ b/include/configs/mx51evk.h > @@ -24,11 +24,11 @@ > #ifndef __CONFIG_H > #define __CONFIG_H > > +#include <asm/arch/imx-regs.h> > > /* High Level Configuration Options */ > > #define CONFIG_MX51 /* in a mx51 */ > -#define CONFIG_SKIP_RELOCATE_UBOOT > > #define CONFIG_SYS_MX5_HCLK 24000000 > #define CONFIG_SYS_MX5_CLK32 32768 > @@ -51,7 +51,6 @@ > * Size of malloc() pool > */ > #define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 2 * 1024 * 1024) > -/* size in bytes reserved for initial data */ > > #define BOARD_LATE_INIT > > @@ -174,6 +173,12 @@ > #define PHYS_SDRAM_1 CSD0_BASE_ADDR > #define PHYS_SDRAM_1_SIZE (512 * 1024 * 1024) > > +#define CONFIG_SYS_SDRAM_BASE (PHYS_SDRAM_1) > +#define CONFIG_SYS_INIT_RAM_ADDR (IRAM_BASE_ADDR) > +#define CONFIG_SYS_INIT_RAM_SIZE (IRAM_SIZE) > +#define CONFIG_SYS_INIT_SP_ADDR \ > + (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_RAM_SIZE) > + > #define CONFIG_SYS_DDR_CLKSEL 0 > #define CONFIG_SYS_CLKTL_CBCDR 0x59E35100 > > -- > 1.7.1 > > _______________________________________________ > U-Boot mailing list > U-Boot@lists.denx.de > http://lists.denx.de/mailman/listinfo/u-boot > _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot