Hi Stephen, On 1 December 2014 at 11:41, Stephen Warren <swar...@wwwdotorg.org> wrote: > On 11/25/2014 10:44 AM, Simon Glass wrote: >> >> Hi Stephen, >> >> On 25 November 2014 at 09:23, Stephen Warren <swar...@wwwdotorg.org> >> wrote: >>> >>> On 11/24/2014 04:49 PM, Simon Glass wrote: >>>> >>>> >>>> Hi Stephen, >>>> >>>> On 24 November 2014 at 10:11, Stephen Warren <swar...@wwwdotorg.org> >>>> wrote: >>>>> >>>>> >>>>> On 11/23/2014 09:12 AM, Simon Glass wrote: >>>>>> >>>>>> >>>>>> >>>>>> Modern kernels require a device tree to boot. >>>>> >>>>> >>>>> True. >>>>> >>>>>> Enable FIT support to permit >>>>>> booting these images, rather than just legacy images. >>>>> >>>>> >>>>> I don't understand this? Modern kernels boot perfectly well without FIT >>>>> support. U-Boot supports the kernel's standard separate DTB and zImage >>>>> file formats just fine. >>>>> >>>>> To be honest, I'd strongly prefer not to enable support for >>>>> non-universal >>>>> (bootloader-specific) formats such as FIT. >>>> >>>> >>>> In U-Boot? FIT is U-Boot's standard format >>> >>> >>> That's rather my point: FIT is *U-Boot's* standard format, not a global >>> standard format. >>> >>> I want to strongly guide anyone using Tegra towards globally standard >>> formats, not intimate that they should be using bootloader-specific >>> formats. >>> >>> zImage (without appended DTB) is a standard Linux format that all >>> booatloaders should support. >>> >>> Raw DTB in a separate file (or perhaps provided by earlier firmware >>> directly >>> in RAM/ROM) is a standard Linux format that all bootloaders should >>> support. >>> >>> extlinux.conf is something that all bootloaders should support. >>> >>> Linux distros that install binaries or config files in those standard >>> formats should expect them to work with any bootloader, on any board. >>> This >>> way, distros won't have to write explicit support for any board; they'll >>> just install standard files and everything will just work anywhere. >> >> >> Just so I am clear, on ARM what is the list of bootloaders that you >> are concerned with? FIT is actually not a difficult thing to add to a >> boot loader. Presumably they all support libfdt, so it is just a case >> of plumbing in the FIT access stuff. > > > I believe that Barebox supports extlinux.conf too.
OK so I wonder if this problem would go away if Barebox supported FIT. I haven't played with Barebox but could perhaps take a look. > >> I'm really not keen on this lowest-common-denominator approach, it's >> just a sad situation. Also I don't see why extlinux.conf should >> preclude people using FIT if they want to. > > > It doesn't. My point is that it's unlikely people will want FIT support > except in certain specific cases (such as ChromeOS compatibility), and we > shouldn't enable it except where there's a demonstrable use-case, so we > don't confuse people with non-standard options and accidentally lead them > down the wrong path. My use case is to have one or more kernels, lots of device trees and be able to boot on any arch. I think that is the same for you, but in your case you rely on a filesystem to provide a large number of FDTs. This means that we can't provide a kernel release as a single file, nor can we support verified boot. With FIT we can support these. > > ... >>> >>> Example /boot/extlinux.conf (for media-based booting) or >>> pxelinux.cfg/default (for network booting via syslinux command): > > ... >> >> How does U-Boot select which device tree to pass to the kernel with >> the scheme above? We shouldn't rely on the user, right? With FIT we >> use CONFIG_FIT_BEST_MATCH. > > > extlinux.conf can specify a particular DTB filename if it wants. > Alternatively, it can specify a directory containing a set of DTBs, and the > bootloader must select which DTB to load. > > If $fdtfile is set in U-Boot's environment, that file is used. > > Otherwise, the U-Boot syslinux code uses some other environment variables to > calculate a default DTB filename; ${soc}-${board}.dtb. OK I remember your patches now, sounds good. Let me know if there is some other blocker (besides Barebox) to supporting FIT more widely for kernel + device tree distribution. Regards, Simon _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot