Skip to contentSkip to conversation

of/unittest: Disable new dtc node_name_vs_property_name and interrupt_map warnings

PATCH In review Rob Herring 3 participants 6 messages Oct 28, 2021 – Nov 10, 2021 Device tree

lore
Share & tools
lore

Rob Herring

author maintainer
#0 lore raw

PATCH v2 1/1 of/unittest: Disable new dtc node_name_vs_property_name and interrupt_map warnings

The unittest dtbs have various intentional errors which cause warnings. With the latest dtc sync to v1.6.1-19-g0a3a9d3449c8, we need to disable some new checks: node_name_vs_property_name and interrupt_map warnings. These warnings are also generated for static_base_1.dtb, so add DTC_FLAGS for it.

Note that the interrupt_map warnings only appear once interrupt_provider warning is re-enabled globally.

drivers/of/unittest-data/tests-interrupts.dtsi:32.26-35.6: Warning (interrupt_map): /testcase-data/interrupts/intmap1: Missing '#address-cells' in interrupt-map provider

Fixes e76187b9792e ("scripts/dtc: Update to upstream version v1.6.1-19-g0a3a9d3449c8")
Cc Frank Rowand <[email protected]>
---
 drivers/of/unittest-data/Makefile | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
drivers/of/unittest-data/Makefile +7 -1
index a5d2d9254b2c..fbded24c608c 100644
@@ -37,7 +37,9 @@ DTC_FLAGS_overlay_base += -@
 DTC_FLAGS_testcases += -@
 
 # suppress warnings about intentional errors
-DTC_FLAGS_testcases += -Wno-interrupts_property
+DTC_FLAGS_testcases += -Wno-interrupts_property \
+	-Wno-node_name_vs_property_name \
+	-Wno-interrupt_map
 
 # Apply overlays statically with fdtoverlay.  This is a build time test that
 # the overlays can be applied successfully by fdtoverlay.  This does not
@@ -82,6 +84,10 @@ apply_static_overlay_1 := overlay_0.dtbo \
 
 apply_static_overlay_2 := overlay.dtbo
 
+DTC_FLAGS_static_base_1 += -Wno-interrupts_property \
+	-Wno-node_name_vs_property_name \
+	-Wno-interrupt_map
+
 static_test_1-dtbs := static_base_1.dtb $(apply_static_overlay_1)
 static_test_2-dtbs := static_base_2.dtb $(apply_static_overlay_2)
 
Signature · 1 line
2.32.0
#1 lore raw

Hi Rob,

Quoted 36 lines · Rob Herring

The unittest dtbs have various intentional errors which cause warnings. With the latest dtc sync to v1.6.1-19-g0a3a9d3449c8, we need to disable some new checks: node_name_vs_property_name and interrupt_map warnings. These warnings are also generated for static_base_1.dtb, so add DTC_FLAGS for it.

Note that the interrupt_map warnings only appear once interrupt_provider warning is re-enabled globally.

drivers/of/unittest-data/tests-interrupts.dtsi:32.26-35.6: Warning (interrupt_map): /testcase-data/interrupts/intmap1: Missing '#address-cells' in interrupt-map provider

Fixes e76187b9792e ("scripts/dtc: Update to upstream version v1.6.1-19-g0a3a9d3449c8")
Cc Frank Rowand <[email protected]>
---
 drivers/of/unittest-data/Makefile | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
drivers/of/unittest-data/Makefile +3 -1
index a5d2d9254b2c..fbded24c608c 100644
@@ -37,7 +37,9 @@ DTC_FLAGS_overlay_base += -@
 DTC_FLAGS_testcases += -@
 
 # suppress warnings about intentional errors
-DTC_FLAGS_testcases += -Wno-interrupts_property
+DTC_FLAGS_testcases += -Wno-interrupts_property \
+	-Wno-node_name_vs_property_name \
+	-Wno-interrupt_map
 
 # Apply overlays statically with fdtoverlay.  This is a build time test that
 # the overlays can be applied successfully by fdtoverlay.  This does not

drivers/of/unittest-data/Makefile apply_static_overlay_1 := overlay_0.dtbo \ · line 93

Quoted 10 lines
drivers/of/unittest-data/Makefile +4 -0
@@ -82,6 +84,10 @@ apply_static_overlay_1 := overlay_0.dtbo \
 
 apply_static_overlay_2 := overlay.dtbo
 
+DTC_FLAGS_static_base_1 += -Wno-interrupts_property \
+	-Wno-node_name_vs_property_name \
+	-Wno-interrupt_map
+
 static_test_1-dtbs := static_base_1.dtb $(apply_static_overlay_1)
 static_test_2-dtbs := static_base_2.dtb $(apply_static_overlay_2)
 

Thanks for splitting the DTC_FLAGS into per file values.

I dug into the unittest code that uses the dts node that causes the interrupt map warning and do not see any reason not to fix the dts so that the warning will not occur, instead of masking it with the DTC_FLAGS. I just now submitted a patch to fix the .dtsi at

https://lore.kernel.org/all/[email protected]/

-Frank

Reviewed-by Tested-by
#2 lore raw
Quoted 52 lines · Frank Rowand

Hi Rob,

Quoted 36 lines · Rob Herring

The unittest dtbs have various intentional errors which cause warnings. With the latest dtc sync to v1.6.1-19-g0a3a9d3449c8, we need to disable some new checks: node_name_vs_property_name and interrupt_map warnings. These warnings are also generated for static_base_1.dtb, so add DTC_FLAGS for it.

Note that the interrupt_map warnings only appear once interrupt_provider warning is re-enabled globally.

drivers/of/unittest-data/tests-interrupts.dtsi:32.26-35.6: Warning (interrupt_map): /testcase-data/interrupts/intmap1: Missing '#address-cells' in interrupt-map provider

Fixes e76187b9792e ("scripts/dtc: Update to upstream version v1.6.1-19-g0a3a9d3449c8")
Cc Frank Rowand <[email protected]>
---
 drivers/of/unittest-data/Makefile | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
drivers/of/unittest-data/Makefile +3 -1
index a5d2d9254b2c..fbded24c608c 100644
@@ -37,7 +37,9 @@ DTC_FLAGS_overlay_base += -@
 DTC_FLAGS_testcases += -@
 
 # suppress warnings about intentional errors
-DTC_FLAGS_testcases += -Wno-interrupts_property
+DTC_FLAGS_testcases += -Wno-interrupts_property \
+	-Wno-node_name_vs_property_name \
+	-Wno-interrupt_map
 
 # Apply overlays statically with fdtoverlay.  This is a build time test that
 # the overlays can be applied successfully by fdtoverlay.  This does not

drivers/of/unittest-data/Makefile apply_static_overlay_1 := overlay_0.dtbo \ · line 93

Quoted 10 lines
drivers/of/unittest-data/Makefile +4 -0
@@ -82,6 +84,10 @@ apply_static_overlay_1 := overlay_0.dtbo \
 
 apply_static_overlay_2 := overlay.dtbo
 
+DTC_FLAGS_static_base_1 += -Wno-interrupts_property \
+	-Wno-node_name_vs_property_name \
+	-Wno-interrupt_map
+
 static_test_1-dtbs := static_base_1.dtb $(apply_static_overlay_1)
 static_test_2-dtbs := static_base_2.dtb $(apply_static_overlay_2)
 

Thanks for splitting the DTC_FLAGS into per file values.

Quoted 6 lines

I dug into the unittest code that uses the dts node that causes the interrupt map warning and do not see any reason not to fix the dts so that the warning will not occur, instead of masking it with the DTC_FLAGS. I just now submitted a patch to fix the .dtsi at

https://lore.kernel.org/all/[email protected]/

That thread ended up deciding that the .dtsi should not be fixed to avoid the warning (it was a deliberate error to allow a specific test),

so for the [v2] patch that started this thread:

Quoted 3 lines

-Frank

#3 lore raw
In reply to Rob Herring
Quoted 48 lines · Rob Herring

The unittest dtbs have various intentional errors which cause warnings. With the latest dtc sync to v1.6.1-19-g0a3a9d3449c8, we need to disable some new checks: node_name_vs_property_name and interrupt_map warnings. These warnings are also generated for static_base_1.dtb, so add DTC_FLAGS for it.

Note that the interrupt_map warnings only appear once interrupt_provider warning is re-enabled globally.

drivers/of/unittest-data/tests-interrupts.dtsi:32.26-35.6: Warning (interrupt_map): /testcase-data/interrupts/intmap1: Missing '#address-cells' in interrupt-map provider

Fixes e76187b9792e ("scripts/dtc: Update to upstream version v1.6.1-19-g0a3a9d3449c8")
Cc Frank Rowand <[email protected]>
---
 drivers/of/unittest-data/Makefile | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
drivers/of/unittest-data/Makefile +7 -1
index a5d2d9254b2c..fbded24c608c 100644
@@ -37,7 +37,9 @@ DTC_FLAGS_overlay_base += -@
 DTC_FLAGS_testcases += -@
 
 # suppress warnings about intentional errors
-DTC_FLAGS_testcases += -Wno-interrupts_property
+DTC_FLAGS_testcases += -Wno-interrupts_property \
+	-Wno-node_name_vs_property_name \
+	-Wno-interrupt_map
 
 # Apply overlays statically with fdtoverlay.  This is a build time test that
 # the overlays can be applied successfully by fdtoverlay.  This does not
@@ -82,6 +84,10 @@ apply_static_overlay_1 := overlay_0.dtbo \
 
 apply_static_overlay_2 := overlay.dtbo
 
+DTC_FLAGS_static_base_1 += -Wno-interrupts_property \
+	-Wno-node_name_vs_property_name \
+	-Wno-interrupt_map
+
 static_test_1-dtbs := static_base_1.dtb $(apply_static_overlay_1)
 static_test_2-dtbs := static_base_2.dtb $(apply_static_overlay_2)
 
Signature · 1 line
2.32.0

Note this commit in Linus's tree breaks clang-based systems with the following build errors:
FATAL ERROR: Unrecognized check name "interrupt_map" FATAL ERROR: Unrecognized check name "node_name_vs_property_name"

Any thoughts about what to do?

thanks,

greg k-h

author maintainer
#4 lore raw
Quoted 56 lines · Greg KH
Quoted 46 lines · Rob Herring

The unittest dtbs have various intentional errors which cause warnings. With the latest dtc sync to v1.6.1-19-g0a3a9d3449c8, we need to disable some new checks: node_name_vs_property_name and interrupt_map warnings. These warnings are also generated for static_base_1.dtb, so add DTC_FLAGS for it.

Note that the interrupt_map warnings only appear once interrupt_provider warning is re-enabled globally.

drivers/of/unittest-data/tests-interrupts.dtsi:32.26-35.6: Warning (interrupt_map): /testcase-data/interrupts/intmap1: Missing '#address-cells' in interrupt-map provider

Fixes e76187b9792e ("scripts/dtc: Update to upstream version v1.6.1-19-g0a3a9d3449c8")
Cc Frank Rowand <[email protected]>
---
 drivers/of/unittest-data/Makefile | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
drivers/of/unittest-data/Makefile +7 -2
index a5d2d9254b2c..fbded24c608c 100644
@@ -37,7 +37,9 @@ DTC_FLAGS_overlay_base += -@
 DTC_FLAGS_testcases += -@
 
 # suppress warnings about intentional errors
-DTC_FLAGS_testcases += -Wno-interrupts_property
+DTC_FLAGS_testcases += -Wno-interrupts_property \
+     -Wno-node_name_vs_property_name \
+     -Wno-interrupt_map
 
 # Apply overlays statically with fdtoverlay.  This is a build time test that
 # the overlays can be applied successfully by fdtoverlay.  This does not
@@ -82,6 +84,10 @@ apply_static_overlay_1 := overlay_0.dtbo \
 
 apply_static_overlay_2 := overlay.dtbo
 
+DTC_FLAGS_static_base_1 += -Wno-interrupts_property \
+     -Wno-node_name_vs_property_name \
+     -Wno-interrupt_map
+
 static_test_1-dtbs := static_base_1.dtb $(apply_static_overlay_1)
 static_test_2-dtbs := static_base_2.dtb $(apply_static_overlay_2)
 
--
Quoted 2 lines

2.32.0

Note this commit in Linus's tree breaks clang-based systems with the following build errors:
FATAL ERROR: Unrecognized check name "interrupt_map" FATAL ERROR: Unrecognized check name "node_name_vs_property_name"

Quoted 1 line

Any thoughts about what to do?

I don't think it has anything to do with clang. These messages come from dtc and there's not any 'test the options are supported' mechanism for new options. It looks like the dtc update referenced in Fixes is missing or dtc is stale. There's no error in kernelci[1].

Rob

[1] https://storage.kernelci.org/mainline/master/v5.15-11863-gcb690f5238d7/arm64/allmodconfig/clang-10/logs/kernel.log

#5 lore raw
Quoted 57 lines · Rob Herring
Quoted 56 lines · Greg KH
Quoted 46 lines · Rob Herring

The unittest dtbs have various intentional errors which cause warnings. With the latest dtc sync to v1.6.1-19-g0a3a9d3449c8, we need to disable some new checks: node_name_vs_property_name and interrupt_map warnings. These warnings are also generated for static_base_1.dtb, so add DTC_FLAGS for it.

Note that the interrupt_map warnings only appear once interrupt_provider warning is re-enabled globally.

drivers/of/unittest-data/tests-interrupts.dtsi:32.26-35.6: Warning (interrupt_map): /testcase-data/interrupts/intmap1: Missing '#address-cells' in interrupt-map provider

Fixes e76187b9792e ("scripts/dtc: Update to upstream version v1.6.1-19-g0a3a9d3449c8")
Cc Frank Rowand <[email protected]>
---
 drivers/of/unittest-data/Makefile | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
drivers/of/unittest-data/Makefile +7 -2
index a5d2d9254b2c..fbded24c608c 100644
@@ -37,7 +37,9 @@ DTC_FLAGS_overlay_base += -@
 DTC_FLAGS_testcases += -@
 
 # suppress warnings about intentional errors
-DTC_FLAGS_testcases += -Wno-interrupts_property
+DTC_FLAGS_testcases += -Wno-interrupts_property \
+     -Wno-node_name_vs_property_name \
+     -Wno-interrupt_map
 
 # Apply overlays statically with fdtoverlay.  This is a build time test that
 # the overlays can be applied successfully by fdtoverlay.  This does not
@@ -82,6 +84,10 @@ apply_static_overlay_1 := overlay_0.dtbo \
 
 apply_static_overlay_2 := overlay.dtbo
 
+DTC_FLAGS_static_base_1 += -Wno-interrupts_property \
+     -Wno-node_name_vs_property_name \
+     -Wno-interrupt_map
+
 static_test_1-dtbs := static_base_1.dtb $(apply_static_overlay_1)
 static_test_2-dtbs := static_base_2.dtb $(apply_static_overlay_2)
 
--
Quoted 2 lines

2.32.0

Note this commit in Linus's tree breaks clang-based systems with the following build errors:
FATAL ERROR: Unrecognized check name "interrupt_map" FATAL ERROR: Unrecognized check name "node_name_vs_property_name"

Quoted 6 lines
Quoted 1 line

Any thoughts about what to do?

I don't think it has anything to do with clang. These messages come from dtc and there's not any 'test the options are supported' mechanism for new options. It looks like the dtc update referenced in Fixes is missing or dtc is stale. There's no error in kernelci[1].

Ah, yes, turns out that Android is building their kernel with an old version of dtc. So that's the issue here, I'll go work to fix that up...

Sorry for the noise.

thanks,

greg k-h