Valentine Barshak wrote: > > Stefan Roese wrote: >> On Thursday 21 August 2008, Sean MacLennan wrote: >>>> That's all output from the wrapper, not the kernel. And the kernel >>>> config doesn't make a difference at all to the wrapper. I wonder if >>>> there is some weird size issue going on there or if whatever U-Boot >>>> version you are using is doing odd things... >>> Any chance something in the DTS could affect it? Maybe try commenting >>> out the second IIC controller? >> >> Yes, I2C is generally working and should make a difference in Linux >> kernel booting. >> >> It seems that your bootwrapper is somehow not copying the correct MAC >> address to the device-tree. Not sure what's going wrong here. We >> usually don't use the bootwrapper but boot the uImage directly from >> U-Boot on all 4xx systems. >> >> You might want to debug the bootwrapper code, if possible drop the >> bootwrapper and use the uImage with a newer, device-tree enabled >> U-Boot version. >> > > U-boot thinks that all memory above the first 8MB is out of reach for > the kernel and puts kernel bootargs and boardinfo structure below 8MB as > close as possible to this limit. Including the i2c driver into the > kernel increases the kernel image size. So when u-boot unpacks the > kernel to 0x400000 (Load Address: 00400000) it overwrites the kernel > parameters. So when the kernel actually starts, it reads zeros instead > of boardinfo (and mac addresses) > > The 8MB limit is set for all AMCC boards in include/configs/amcc-common.h: > #define CFG_BOOTMAPSZ (8 << 20) /* Initial Memory map for Linux */ > > I think this limit is obsolete and can be moved to at least 64MB. > But you'll need to rebuild u-boot. > > Stefan, what do you think? Can we increase the default initial memory > map for AMCC boards in the next u-boot release, since u-boot has all > memory identity-mapped on ppc 44x? >
Your diagnosis is correct! I changed the define from 8<<20 to 8<<21 and it now boots. Previously the parameters were at 7ffe70, and this change moved them to fffe70. I would like to switch over to using a uImage rather than the cuboot.uImage. But I have not figured out whether it is the U-boot build that converts the .dts to a .dtb or if the kernel build should do that. Also, I have not figured out whether the .dtb can remain part of the kernel image, as it is with the cuboot kernel, or if the .dtb must be a separate image in a different part of the rom. So basically, I understand the components, but I'm not yet sure how to glue it all together. Steve _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev