
On Tue, 12 Aug 2014 19:29:02 +0200 Jeroen Hofstee jeroen@myspectrum.nl wrote:
Hello Stephan,
On 11-08-14 20:55, Stephen Warren wrote:
<snip>
No, Linux distros need to be able to install a single bootloader configuration file to tell the bootloader how to boot.
Don't understand this, I though extlinux is yet another chainloaded bootloader? I doubt there is "the bootloader". I don't understand why it needs a single bootloader. It gets in handy if the last bootloader is known, but I don't even see why that is required.
This is obviously where the disconnect is...
extlinux is (IIRC) a bootloader yes. However, this patch isn't about extlinux, but extlinux.conf.
haha, right that is a funny misunderstanding. Yes, extlinux is indeed a bootloader and I was in the impression you actively searched for it to chainload it. And to make extlinux a requirement for distro support... And as I tried to explain I am not that fond of such an approach in general, and that had nothing to do, as Tom suggested, with booting FreeBSD, it is just the image I encountered searching for it in various places. It remains a badly named file though (for U-boot), but well so be it, I guess.
u-boot in the pxe code has an implementation that parses the syslinux config file. though there really is nothing that says its a linux only thing, admittedly I'm a bit naive as to how things like freebsd boot but i assume you can load a kernel and pass some boot arguments just the same. We are looking for a extlinux.conf file as that's what extlinux looks for and we are mimicking the functionality.
extlinux.conf is a text file format the defines a menu of bootable OSs. It's a (de-facto I suppose) standard that's implemented by extlinux (if indeed that is a piece of SW:-) and also U-Boot and barebox and likely other bootloaders too.
So, when U-Boot locates extlinux.conf on disk and processes it, it's parsing a configuration file/menu, not chain-loading/executing another bootloader.
I see, so shouldn't we document then who is in charge of its format at least, before we start making a U-boot/distro specific version of it?
We are using the same format as is used by the syslinux project. we support a couple of optional items to specify the dtb, fdt and fdtdir, fdt is a location to a devicetree blob and fdtdir is a directory where you can find devicetree blobs.
<snip example file> > > That would require all Linux distros to have specific support to > install boot.scr, which is a bootloader-specific format script > file. Systems that boot using e.g. Barebox or other bootloaders > presumably can't process boot.scr. However, if all bootloaders end > up supporting extlinux.conf, the distro won't care what bootloader > is on the HW.
We will see if this works, I am bit skeptical, but it is at least a whole lot better then polling all possible options, where I took the patch for. (Well not all yet, but the start to do so).
Even with checking the different places that we can find the config file. There is no noise, u-boot doesn't print out when there is no files found only when it find them. The time to check for the existence of the file is very quick.
Dennis