Re: [PATCH 3/3] arm64: dts: marvell: Use preferred node names for "simple-bus"

From: Vladimir Oltean
Date: Fri Apr 11 2025 - 20:17:19 EST


Hello,

On Wed, Feb 26, 2025 at 03:47:49PM -0600, Rob Herring (Arm) wrote:
> The "simple-bus" binding has preferred node names such as "bus",
> ".*-bus", or "soc". Rename the Marvell platforms to use these names.
>
> Signed-off-by: Rob Herring (Arm) <robh@xxxxxxxxxx>
> ---
> arch/arm64/boot/dts/marvell/ac5-98dx25xx.dtsi | 2 +-
> arch/arm64/boot/dts/marvell/armada-37xx.dtsi | 2 +-
> arch/arm64/boot/dts/marvell/armada-ap806.dtsi | 1 -
> arch/arm64/boot/dts/marvell/armada-ap807.dtsi | 1 -
> arch/arm64/boot/dts/marvell/armada-ap80x.dtsi | 4 ++--
> arch/arm64/boot/dts/marvell/armada-ap810-ap0.dtsi | 4 ++--
> arch/arm64/boot/dts/marvell/armada-cp11x.dtsi | 4 ++--
> 7 files changed, 8 insertions(+), 10 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/marvell/armada-37xx.dtsi b/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
> index 9603223dd761..6ec22eaaf816 100644
> --- a/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
> +++ b/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
> @@ -78,7 +78,7 @@ soc {
> #size-cells = <2>;
> ranges;
>
> - internal-regs@d0000000 {
> + bus@d0000000 {
> #address-cells = <1>;
> #size-cells = <1>;
> compatible = "simple-bus";

Thank you for your patch, which is now commit
ed9c2b28ebef3333f25cefdc2ef37ee1f05cad95.

I have an off-the-shelf Turris MOX board, which was shipped with a
U-Boot older than the commit linked below (does not contain it):
https://github.com/u-boot/u-boot/commit/bcf6971d536793eb99e12ff857cc018963d7cd46

and as such, is incapable of loading current mainline device trees,
which contain your change, because it is hardcoded to perform FDT fixups
based on paths such as:
#define ETH1_PATH "/soc/internal-regs@d0000000/ethernet@40000"
#define MDIO_PATH "/soc/internal-regs@d0000000/mdio@32004"
#define SFP_GPIO_PATH "/soc/internal-regs@d0000000/spi@10600/moxtet@1/gpio@0"

which no longer exist.

Relevant portion of boot log:

## Flattened Device Tree blob at 04f00000
Booting using the fdt blob at 0x4f00000
Loading Device Tree to 000000003bf16000, end 000000003bf1e11e ... OK
ERROR: board-specific fdt fixup failed: FDT_ERR_NOTFOUND
- must RESET the board to recover.

FDT creation failed! hanging...### ERROR ### Please RESET the board ###

Note that the hint about what is wrong is only visible with a serial
console which I happen to have. The board does not rely on it for normal
operation, which could pose a problem to typical users.

Just bringing this to everyone's attention. In the meantime, I'm going
off to figure out how to build and flash a new U-Boot using the steps at
https://github.com/turris-cz/mox-boot-builder.