[PATCH] arm/tegra: select AUTO_ZRELADDR by default
From: Rob Herring <hidden>
Date: 2011-10-14 22:06:09
Also in:
linux-tegra, lkml
On 10/14/2011 04:01 PM, Stephen Warren wrote:
Nicolas Pitre wrote at Friday, October 14, 2011 2:45 PM:quoted
On Fri, 14 Oct 2011, Stephen Warren wrote:...quoted
quoted
I did originally briefly look into getting U-Boot to boot a zImage, but that looked like a far more invasive patch. There were rumours of some chip's custom U-Boot already having such support, but I couldn't find it, nor any evidence of such support in mainline U-Boot.FRom my clone of the u-Boot repo: $ git grep -l zImage README arch/sh/lib/zimageboot.c arch/x86/lib/zimage.c ... Even the name of some of those files clearly hints zImage support. In any case, loading zImage should be even simpler than loading uImage. It is the same as loading uImage except that you just have to skip the checking and relocating steps.Just by way of background in case anyone is wondering why I wrote the patch I did: Those files both implement custom commands "zimageboot" and "zboot". I was looking for integration with the existing "bootm" command. The advantage of re-using "bootm" for this is that it already supports all the stuff like setting up kernel command-lines, initrds, knowing how to pass the FDT to the kernel, and whatever other OS-specific setup might be required. The disadvantage of adding zImage support to bootm is that I'd have to teach a bunch of U-Boot image handling code about a new image format; it already knows about "legacy uImage", "FIT" images, and I'd have to add a third "zImage" format. Doing so would at least require adding a lot of "case IMAGE_FORMAT_ZIMAGE" everywhere, but it'd probably be best to add some kind of vtable for image formats to move all the image-format knowledge into format-specific files, leaving the users of the images with much smaller code. I didn't feel like making such a large change. Hence, I chose to make a small change to the existing uImage support. Now admittedly I did say I didn't find any traces of zImage support, which isn't what I'm saying here; I guess I forgot about the stuff I did find soon after I chose the path of modifying the uImage formats.
FYI, this exact topic has been discussed on the Linaro weekly boot-architecture call and list. The discussion has been more general in terms of what can be done to make installing and updating kernels easier/work for distros. https://wiki.linaro.org/OfficeofCTO/BootArchitecture Rob