2016-11-08 4:14 GMT+01:00 Stephen Warren <swar...@wwwdotorg.org>: > Please note that for this to work the U-Boot binary must be tagged >> with a recent version of the mkknlimg script found in the Rasperry >> Fundation's kernel tree: >> >> <kernel>/scripts/mkknlimg --dtok <uboot>/u-boot.bin /boot/u-boot.bin >> >> [1] https://www.raspberrypi.org/forums//viewtopic.php?f=107&t=134018 >> > > > I believe the very latest firmware has been fixed to default to DTB rather > than ATAGs, since essentially nothing uses ATAGs any more. At least, Phil > mentioned that sometime; I haven't tracked the status of that change or > tested it. >
You're right, it doesn't seem to be needed anymore. I've just booted a plain u-boot.bin binary and the DTB was provided. > diff --git a/board/raspberrypi/rpi/rpi.c b/board/raspberrypi/rpi/rpi.c >> > > +#ifdef CONFIG_ARM64 >> +void save_boot_params(unsigned long dtb) >> +#else >> +void save_boot_params(unsigned long r0, unsigned long r1, unsigned long >> dtb) >> +#endif >> +{ >> + fw_dtb_pointer = dtb; >> + save_boot_params_ret(); >> +} >> > > I think you need to write that function in assembly. This "function" is > called very early during U-Boot startup, before any stack pointer is set > up. You can't guarantee that a function written in C won't attempt to use > the stack, although admittedly with the current code, Makefile, and the > Ubuntu compilers, it just happens not to. > Is inline assembly enough to guarantee that, or is it mandatory to revert to an assembly file ? _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot