Wolfgang Denk wrote: > Dear Michal Simek, > > In message <1292933384-3032-3-git-send-email-mon...@monstr.eu> you wrote: >> Patch "Replace CONFIG_SYS_GBL_DATA_SIZE by auto-generated value" >> (sha1: 25ddd1fb0a2281b182529afbc8fda5de2dc16d96) >> introduce GENERATED_GBL_DATA_SIZE which is sizeof aligned gd_t >> (currently 0x40). >> Microblaze configs used 0x40(128) because this place also contained >> board info structure which lies on the top of ram. >> >> This patch is fixing this scheme by extending CONFIG_SYS_GBL_DATA_OFFSET >> value. Doubled GENERATED_GBL_DATA_SIZE size is enough to store >> gd_t and bd_t structures. > > No, I will not accept this. > > Please do not make assumptions abouth the size of bd_t compared to > GENERATED_GBL_DATA_SIZE. Use the correct size instead, as you can > easily get using the sizeof() operator (plus some padding eventually > to guarantee alignment, if needed).
I would like to do it but it is not easy to use sizeof because there are some dependencies in macros in common.h(lines 193-201) because I am using CONFIG_SYS_GBL_DATA_OFFSET for monitor/malloc areas. The best will be to be able to generate this value in lib/asm-offsets.c Not sure if you are ok with it. diff --git a/lib/asm-offsets.c b/lib/asm-offsets.c index 2209561..36fc198 100644 --- a/lib/asm-offsets.c +++ b/lib/asm-offsets.c @@ -24,6 +24,8 @@ int main(void) /* Round up to make sure size gives nice stack alignment */ DEFINE(GENERATED_GBL_DATA_SIZE, (sizeof(struct global_data)+15) & ~15); + DEFINE(GENERATED_BD_INFO_SIZE, + (sizeof(struct bd_info)+15) & ~15); return 0; } Michal -- Michal Simek, Ing. (M.Eng) w: www.monstr.eu p: +42-0-721842854 Maintainer of Linux kernel 2.6 Microblaze Linux - http://www.monstr.eu/fdt/ Microblaze U-BOOT custodian _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot