Hi Vagrant,

On 03/09/2020 20:59, Vagrant Cascadian wrote:
On 2020-09-03, Andre Heider wrote:
On 03/09/2020 18:40, Dennis Gilmore wrote:
When testing builds provided in https://github.com/openwrt/openwrt/pull/3360
I discovered that fdtfile was not set and as a result the firmware was not
functional. So I am documenting what is needed.

Signed-off-by: Dennis Gilmore <den...@ausil.us>

Cc: Atish Patra <atish.pa...@wdc.com>
Cc: Lukas Auer <lukas.a...@aisec.fraunhofer.de>
Cc: Tom Rini <tr...@konsulko.com>
Cc: Masahiro Yamada <yamada.masah...@socionext.com>
Cc: Vagrant Cascadian <vagr...@debian.org>
Cc: Stephen Warren <swar...@nvidia.com>
Cc: Karsten Merker <mer...@debian.org>
---
   doc/README.distro | 8 ++++++++
   1 file changed, 8 insertions(+)

diff --git a/doc/README.distro b/doc/README.distro
index 5076bebd18..3eb70aeb14 100644
--- a/doc/README.distro
+++ b/doc/README.distro
@@ -224,6 +224,14 @@ fdt_addr_r:
A size of 1MB for the FDT/DTB seems reasonable. +fdtfile:
+
+  Mandatory. the name of the DTB file for the specific board for instance
+  the espressobin v5 board the value is "marvell/armada-3720-espressobin.dtb"
+  while on a clearfog pro it is "armada-388-clearfog-pro.dtb" in the case of
+  a board providing its firmware based DTB this value can be used to override
+  the DTB with a different DTB.

Thanks for documenting this!

With my Debian hat on...

Reviewed-by: Vagrant Cascadian <vagr...@debian.org>


is that really supposed to include the vendor subdir on arm64?

Yes.


If so, adding fdtfile like that would break booting debian using its
flash-image. It installs dtbs without that subdir into /boot:
/boot/dtbs/4.19.0-9-arm64/armada-3720-espressobin.dtb

But it already supports $fdtfile:
https://salsa.debian.org/installer-team/flash-kernel/-/blob/master/bootscript/arm64/bootscr.uboot-generic#L32

If I read that script correctly, it would fail to boot with
fdtfile=marvell/armada-3720-espressobin.dtb...

Support for installing in vendor subdirs was added to flash-kernel 3.91
from 2018, and I believe the vendor subdirs are included in the
debian-installer boot media as well.

alright, but if the vendor path is missing from flash-kernel's db, everything silently works with a flattened tree. See attached patch, now it works here too :)

Before:
/boot/dtbs/4.19.0-10-arm64/armada-3720-espressobin.dtb
After:
/boot/dtbs/4.19.0-10-arm64/marvell/armada-3720-espressobin.dtb

Thanks,
Andre
>From 9565a3a066f59258886ad1216ce957d63fd390cc Mon Sep 17 00:00:00 2001
From: Andre Heider <a.hei...@gmail.com>
Date: Thu, 3 Sep 2020 21:33:18 +0200
Subject: [PATCH] Fix missing vendor subdirs for arm64 boards.

The subdir is required for installing the fdt file to the correct path,
which is a prerequisite for a boot loader provided $fdtfile.
---
 db/all.db | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/db/all.db b/db/all.db
index 16f9606..d7303f7 100644
--- a/db/all.db
+++ b/db/all.db
@@ -487,7 +487,7 @@ Required-Packages: u-boot-tools
 Bootloader-Sets-Incorrect-Root: yes
 
 Machine: Globalscale Marvell ESPRESSOBin Board
-DTB-Id: armada-3720-espressobin.dtb
+DTB-Id: marvell/armada-3720-espressobin.dtb
 Boot-Script-Path: /boot/boot.scr
 U-Boot-Script-Name: bootscr.uboot-generic
 Required-Packages: u-boot-tools
@@ -874,7 +874,7 @@ Required-Packages: u-boot-tools
 
 Machine: Marvell Armada 8040 DB board
 Kernel-Flavors: arm64
-DTB-Id: armada-8040-db.dtb
+DTB-Id: marvell/armada-8040-db.dtb
 Boot-Script-Path: /boot/boot.scr
 U-Boot-Script-Name: bootscr.uboot-generic
 Required-Packages: u-boot-tools
@@ -1186,7 +1186,7 @@ Required-Packages: u-boot-tools
 
 Machine: Olimex A64 Teres-I
 Kernel-Flavors: arm64
-DTB-Id: sun50i-a64-teres-i.dtb
+DTB-Id: allwinner/sun50i-a64-teres-i.dtb
 Boot-Script-Path: /boot/boot.scr
 U-Boot-Script-Name: bootscr.uboot-generic
 Required-Packages: u-boot-tools
@@ -1345,7 +1345,7 @@ Required-Packages: u-boot-tools
 
 Machine: Purism Librem 5 devkit
 Kernel-Flavors: arm64
-DTB-Id: imx8mq-librem5-devkit.dtb
+DTB-Id: freescale/imx8mq-librem5-devkit.dtb
 Boot-Script-Path: /boot/boot.scr
 U-Boot-Script-Name: bootscr.uboot-generic
 Required-Packages: u-boot-tools
-- 
2.20.1

Reply via email to