Skip to contentSkip to conversation

arm64: dts: nuvoton: Add missing "device_type" property on memory node

PATCH In review Rob Herring (Arm) 2 participants 7 messages Jan 5 – Jan 9

Subsystems (2)
lore
Share & tools
lore

Rob Herring (Arm)

author maintainer
#0 lore raw

PATCH 1/1 arm64: dts: nuvoton: Add missing "device_type" property on memory node

"device_type" is required for memory nodes, but is missing on Nuvoton npcm845-evb.

---
 arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dts | 1 +
 1 file changed, 1 insertion(+)
arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dts +1 -0
index 2638ee1c3846..5edf5d13342d 100644
@@ -17,6 +17,7 @@ chosen {
 	};
 
 	memory@0 {
+		device_type = "memory";
 		reg = <0x0 0x0 0x0 0x40000000>;
 	};
 
Signature · 1 line
2.51.0
maintainer
#1 lore raw
Quoted 17 lines · Rob Herring (Arm)

"device_type" is required for memory nodes, but is missing on Nuvoton npcm845-evb.

---
 arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dts | 1 +

 1 file changed, 1 insertion(+)
arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dts +0 -0
index 2638ee1c3846..5edf5d13342d 100644
@@ -17,6 +17,7 @@ chosen {
  	};


  memory@0 {

arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dts +1 -0
+		device_type = "memory";
Quoted 3 lines

  reg = <0x0 0x0 0x0 0x40000000>;
  };

Hmm, we have quite a few other offenders under arch/arm/boot/dts/aspeed too. I expect this should be caught by CHECK_DTBS=y?

Digging back through my build archives, warnings have cropped up, but only for when I'm building the arm64 or arm multi_v{5,7} defconfigsm and seemingly not the aspeed_g5 defconfig.

executions/2024Y/2024Y08m/2024Y08m13d10H09M/[email protected]: /home/andrew/src/kernel.org/linux/openbmc/build.npcm/arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dtb: /: memory: 'device_type' is a required property
executions/2025Y/2025Y04m/2025Y04m03d21H04M/baseline-build:/home/andrew/src/kernel.org/linux/origin/build.multi_v5/arch/arm/boot/dts/nuvoton/nuvoton-npcm750-evb.dtb: /: memory: False schema does not allow {'device_type': ['memory'], 'reg': [[0, 536870912]]} executions/2025Y/2025Y04m/2025Y04m04d00H57M/baseline-build:/home/andrew/src/kernel.org/linux/origin/build.multi_v5/arch/arm/boot/dts/nuvoton/nuvoton-npcm750-evb.dtb: /: memory: False schema does not allow {'device_type': ['memory'], 'reg': [[0, 536870912]]} executions/2025Y/2025Y04m/2025Y04m04d01H10M/baseline-build:/home/andrew/src/kernel.org/linux/origin/build.multi_v5/arch/arm/boot/dts/nuvoton/nuvoton-npcm750-evb.dtb: /: memory: False schema does not allow {'device_type': ['memory'], 'reg': [[0, 536870912]]} executions/2025Y/2025Y04m/2025Y04m08d10H18M/baseline-build:/home/andrew/src/kernel.org/linux/origin/build.multi_v7/arch/arm/boot/dts/nuvoton/nuvoton-npcm750-evb.dtb: /: memory: False schema does not allow {'device_type': ['memory'], 'reg': [[0, 536870912]]} executions/2025Y/2025Y05m/2025Y05m07d11H43M/03-diff-ref-curr: /home/andrew/src/kernel.org/linux/origin/build.arm64.default/arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dtb: /: memory@0: 'device_type' is a required property executions/2025Y/2025Y05m/2025Y05m07d11H43M/baseline-build:/home/andrew/src/kernel.org/linux/origin/build.arm64.default/arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dtb: /: memory@0: 'device_type' is a required property executions/2025Y/2025Y06m/2025Y06m13d11H17M/03-diff-ref-curr: /home/andrew/src/kernel.org/linux/origin/build.arm64.default/arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dtb: / (nuvoton,npcm845-evb): memory@0: 'device_type' is a required property executions/2025Y/2025Y06m/2025Y06m13d11H17M/baseline-build:/home/andrew/src/kernel.org/linux/origin/build.arm64.default/arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dtb: / (nuvoton,npcm845-evb): memory@0: 'device_type' is a required property executions/2025Y/2025Y07m/2025Y07m21d10H53M/baseline-build:/home/andrew/src/kernel.org/linux/origin/build.arm64.default/arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dtb: / (nuvoton,npcm845-evb): memory@0: 'device_type' is a required property executions/2025Y/2025Y07m/2025Y07m21d10H53M/make-dtbs-check: /home/andrew/src/kernel.org/linux/origin/build.arm64.default/arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dtb: / (nuvoton,npcm845-evb): memory@0: 'device_type' is a required property executions/2025Y/2025Y07m/2025Y07m21d12H20M/baseline-build:/home/andrew/src/kernel.org/linux/origin/build.arm64.default/arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dtb: / (nuvoton,npcm845-evb): memory@0: 'device_type' is a required property executions/2025Y/2025Y07m/2025Y07m21d12H20M/make-dtbs-check: /home/andrew/src/kernel.org/linux/origin/build.arm64.default/arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dtb: / (nuvoton,npcm845-evb): memory@0: 'device_type' is a required property executions/2025Y/2025Y07m/2025Y07m21d13H58M/baseline-build:/home/andrew/src/kernel.org/linux/origin/build.arm.multi_v7/arch/arm/boot/dts/nuvoton/nuvoton-npcm750-evb.dtb: / (nuvoton,npcm750-evb): memory: False schema does not allow {'device_type': ['memory'], 'reg': [[0, 536870912]]}

I don't yet understand why that is, but I'll do some digging. I expect there will be some fixes to send once I figure it out.

Andrew

maintainer
#2 lore raw
Quoted 25 lines · Andrew Jeffery
Quoted 17 lines · Rob Herring (Arm)

"device_type" is required for memory nodes, but is missing on Nuvoton npcm845-evb.

---
 arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dts | 1 +

 1 file changed, 1 insertion(+)
arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dts +0 -0
index 2638ee1c3846..5edf5d13342d 100644
@@ -17,6 +17,7 @@ chosen {
  	};


  memory@0 {

arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dts +1 -0
+		device_type = "memory";
Quoted 3 lines

  reg = <0x0 0x0 0x0 0x40000000>;
  };

Hmm, we have quite a few other offenders under arch/arm/boot/dts/aspeed too. I expect this should be caught by CHECK_DTBS=y?

Quoted 3 lines

Digging back through my build archives, warnings have cropped up, but only for when I'm building the arm64 or arm multi_v{5,7} defconfigsm and seemingly not the aspeed_g5 defconfig.

Ah the aspeed dtsis define a memory node with it and some zero-length memory, and the node properties are updated by the dts files.

False alarm.

Andrew

author maintainer
#3 lore raw
In reply to Andrew Jeffery
Quoted 30 lines · Andrew Jeffery
Quoted 13 lines · Rob Herring (Arm)

"device_type" is required for memory nodes, but is missing on Nuvoton npcm845-evb.

---
 arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dts | 1 +
 1 file changed, 1 insertion(+)
arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dts +0 -0
index 2638ee1c3846..5edf5d13342d 100644

arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dts chosen { · line 23

Quoted 7 lines
arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dts +1 -0
@@ -17,6 +17,7 @@ chosen {
      };
 
      memory@0 {
+             device_type = "memory";
              reg = <0x0 0x0 0x0 0x40000000>;
      };
 

Hmm, we have quite a few other offenders under arch/arm/boot/dts/aspeed too. I expect this should be caught by CHECK_DTBS=y?

Digging back through my build archives, warnings have cropped up, but only for when I'm building the arm64 or arm multi_v{5,7} defconfigsm and seemingly not the aspeed_g5 defconfig.

Quoted 7 lines

executions/2024Y/2024Y08m/2024Y08m13d10H09M/[email protected]: /home/andrew/src/kernel.org/linux/openbmc/build.npcm/arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-evb.dtb: /: memory: 'device_type' is a required property
executions/2025Y/2025Y04m/2025Y04m03d21H04M/baseline-build:/home/andrew/src/kernel.org/linux/origin/build.multi_v5/arch/arm/boot/dts/nuvoton/nuvoton-npcm750-evb.dtb: /: memory: False schema does not allow {'device_type': ['memory'], 'reg': [[0, 536870912]]} executions/2025Y/2025Y04m/2025Y04m04d00H57M/baseline-build:/home/andrew/src/kernel.org/linux/origin/build.multi_v5/arch/arm/boot/dts/nuvoton/nuvoton-npcm750-evb.dtb: /: memory: False schema does not allow {'device_type': ['memory'], 'reg': [[0, 536870912]]} executions/2025Y/2025Y04m/2025Y04m04d01H10M/baseline-build:/home/andrew/src/kernel.org/linux/origin/build.multi_v5/arch/arm/boot/dts/nuvoton/nuvoton-npcm750-evb.dtb: /: memory: False schema does not allow {'device_type': ['memory'], 'reg': [[0, 536870912]]} executions/2025Y/2025Y04m/2025Y04m08d10H18M/baseline-build:/home/andrew/src/kernel.org/linux/origin/build.multi_v7/arch/arm/boot/dts/nuvoton/nuvoton-npcm750-evb.dtb: /: memory: False schema does not allow {'device_type': ['memory'], 'reg': [[0, 536870912]]}

executions/2025Y/2025Y07m/2025Y07m21d13H58M/baseline-build:/home/andrew/src/kernel.org/linux/origin/build.arm.multi_v7/arch/arm/boot/dts/nuvoton/nuvoton-npcm750-evb.dtb: / (nuvoton,npcm750-evb): memory: False schema does not allow {'device_type': ['memory'], 'reg': [[0, 536870912]]}

There's a number of problems on arm32 /memory nodes. The main one is the lack of unit-address, but that can't necessarily be fixed because bootloaders may depend on finding a /memory node. That unfortunately includes our own ATAGS to FDT zImage code. If you know these platforms don't have those issues, then yes, please update them.

Rob

author maintainer
#5 lore raw
Quoted 8 lines · Andrew Jeffery
Quoted 4 lines · Rob Herring (Arm)

"device_type" is required for memory nodes, but is missing on Nuvoton npcm845-evb.

Thanks, I've applied this to the BMC tree.

I didn't realize Nuvoton and Aspeed are 1 tree now. Should MAINTAINERS be updated?

Rob

maintainer
#6 lore raw
Quoted 9 lines · Rob Herring
Quoted 7 lines · Andrew Jeffery
Quoted 4 lines · Rob Herring (Arm)

"device_type" is required for memory nodes, but is missing on Nuvoton npcm845-evb.

Quoted 4 lines
Quoted 1 line

Thanks, I've applied this to the BMC tree.

I didn't realize Nuvoton and Aspeed are 1 tree now. Should MAINTAINERS be updated?

Yeah, it should. I've sent this:

https://lore.kernel.org/all/20260109-npcm-arch-maintainer-v1-1-a0ec6aee22fb@codeconstruct.com.au/

Andrew