Thread (10 messages) flat view 10 messages, 4 authors, 2021-06-12

Re: [PATCH -fixes] riscv: Fix BUILTIN_DTB for sifive and microchip soc

From: Arnd Bergmann <arnd@arndb.de>
Date: 2021-06-04 18:35:26
Also in: linux-riscv, lkml

On Fri, Jun 4, 2021 at 7:45 PM Vitaly Wool [off-list ref] wrote:
On Fri, Jun 4, 2021 at 3:18 PM Arnd Bergmann [off-list ref] wrote:
quoted
On Fri, Jun 4, 2021 at 2:06 PM Alexandre Ghiti [off-list ref] wrote:
quoted
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@ghiti.fr>
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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help