[U-Boot] microblaze: Replace CONFIG_SYS_GBL_DATA_SIZE by auto-generated value (25ddd1fb0a2281b182529afbc8fda5de2dc16d96)

Michal Simek monstr at monstr.eu
Tue Dec 21 09:47:16 CET 2010


Hi Wolfgang,

I have just found that your patch (in subject) break gd/bd pointer for 
Microblaze. I have done patch which fix it but not sure if is correct.

Microblaze uses small space at the end of ram for gd and bd.

For example:
end of ram   0xd7ff ffff
bd           0xd7ff ffc0
gd           0xd7ff ff80

Your patch uses GENERATED_GBL_DATA_SIZE which is aligned size for 
gb_t(0x40) and caused that bd structure (because it is on higher 
addresses) is moved out of ram because gd is on 0xd7ff ffc0. Actual size 
of bd_t is 0x24 but it is no problem to use 0x40 as aligned size.

The main my point is how should look like position of gd/bd.

Maybe will be worth to take a look at monitor,malloc area and stack.

Microblaze uses:
end of ram
bd 0x40
gd 0x40
monitor area
malloc area
stack (grows down)

Is it OK to use this scheme?

I can easily fix this to previous state but will be good to synchronize 
this across archs.

Thanks,
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


More information about the U-Boot mailing list