[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#860304: flash-kernel: Incorrect installation path for dtbs

On 05/26/2017 08:58 PM, Vagrant Cascadian wrote:
> On 2017-05-26, Cyril Brulebois <kibi@debian.org> wrote:
>> And thanks for being persistent.
> Indeed, I've been working around this issue locally rather than doing
> the right things by filing bugs and writing patches... :)

I recently created file /etc/flash-kernel/ubootenv.d/fdtfile with

setenv fdtfile meson-gxbb-odroidc2.dtb

on my Odroid C2 as workaround. But that is not a good permanent solution.

> I think the best thing to do would be to install in both
> /boot/dtbs/VERSION/FDTFILE and /boot/boot/dtbs/VERSION/SUBDIR/*.dtb, or
> create symlinks (if supported by the filesystem) if the file is found in
> a subdir... hopefully that won't require mangling the code too much;
> I'll take a look at it... or feel free to beat me to it! :)

/boot/boot/dtbs/VERSION/SUBDIR/*.dtb is what my patch does if a subdir
is provided in /usr/share/flash-kernel/db/all.db.


If we want a more radical redesign:

Why do we rely on environment variable fdtfile at all?

The current device tree supplies file /proc/device-tree/model.
We read all.db to find the name of the dtb with this model name and than
install just this dtb from the Kernel installation.
So there is not much of a choice for U-Boot to pass different values of
fdtfile which will be of use when booting.

Couldn't we simply write the dtb file name from all.db to /boot/boot.scr?

Should the dtb file name or the model string change between two Kernel
releases we are anyway in deep trouble when upgrading (unfortunately
this may happen, cf.

Best regards

Heinrich Schuchardt

Reply to: