On Fri, Jun 4, 2021 at 7:45 PM Vitaly Wool <vitaly.wool@xxxxxxxxxxxx> wrote: > On Fri, Jun 4, 2021 at 3:18 PM Arnd Bergmann <arnd@xxxxxxxx> wrote: > > On Fri, Jun 4, 2021 at 2:06 PM Alexandre Ghiti <alex@xxxxxxxx> wrote: > > > > > > Fix BUILTIN_DTB config which resulted in a dtb that was actually not built > > > into the Linux image: in the same manner as Canaan soc does, create an object > > > file from the dtb file that will get linked into the Linux image. > > > > > > Signed-off-by: Alexandre Ghiti <alex@xxxxxxxx> > > > > Along the same lines as the comment that Jisheng Zhang made on the fixed > > address, building a dtb into the kernel itself fundamentally breaks generic > > kernel images. > > > > I can understand using it on K210, which is extremely limited and wouldn't > > run a generic kernel anyway, but for normal platforms like microchip and > > sifive, it would be better to disallow CONFIG_BUILTIN_DTB in Kconfig > > and require a non-broken boot loader. > > can't quite agree here. If we take XIP, it does make sense to have > BUILTIN_DTB, since 1) this will not be a generic kernel anyway 2) we > may want to skip the bootloader altogether or at least make it as thin > as possible and 3) copying device tree binaries from bootloader to RAM > as opposed to having it handy compiled in the kernel will be just a > waste of RAM. Indeed, it does make sense in combination with XIP. Maybe there could be a Kconfig option that depends on CONFIG_EXPERT and that can be used to guard non-generic options like this? Arnd