[PATCH] dt-bindings: interrupt-controller: arm: Drop redundant node name restrictions

Pankaj Patil posted 1 patch 1 month, 1 week ago
.../devicetree/bindings/interrupt-controller/arm,gic-v3.yaml    | 2 --
1 file changed, 2 deletions(-)
[PATCH] dt-bindings: interrupt-controller: arm: Drop redundant node name restrictions
Posted by Pankaj Patil 1 month, 1 week ago
Drop the redundant 'false' patterns so that allowed names
('msi-controller', 'gic-its', and 'interrupt-controller') work as intended

GICv3 binding currently disallows child nodes named 'gic-its@' and
'interrupt-controller@' via patternProperties set to 'false'. However,
these names are already permitted (though not preferred) by a subsequent
pattern that applies the correct schema.

Since the 'false' patterns take precedence, valid nodes such as
'gic-its@<addr>' and 'interrupt-controller@<addr>' fail dtbs_check with
"False schema does not allow" errors

Signed-off-by: Pankaj Patil <pankaj.patil@oss.qualcomm.com>
---
 .../devicetree/bindings/interrupt-controller/arm,gic-v3.yaml    | 2 --
 1 file changed, 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/interrupt-controller/arm,gic-v3.yaml b/Documentation/devicetree/bindings/interrupt-controller/arm,gic-v3.yaml
index bfd30aae682b..462305f8047d 100644
--- a/Documentation/devicetree/bindings/interrupt-controller/arm,gic-v3.yaml
+++ b/Documentation/devicetree/bindings/interrupt-controller/arm,gic-v3.yaml
@@ -186,8 +186,6 @@ required:
   - reg
 
 patternProperties:
-  "^gic-its@": false
-  "^interrupt-controller@[0-9a-f]+$": false
   # msi-controller is preferred, but allow other names
   "^(msi-controller|gic-its|interrupt-controller)@[0-9a-f]+$":
     type: object
-- 
2.34.1
Re: [PATCH] dt-bindings: interrupt-controller: arm: Drop redundant node name restrictions
Posted by Rob Herring 1 month ago
On Wed, Dec 31, 2025 at 05:00:26PM +0530, Pankaj Patil wrote:
> Drop the redundant 'false' patterns so that allowed names
> ('msi-controller', 'gic-its', and 'interrupt-controller') work as intended
> 
> GICv3 binding currently disallows child nodes named 'gic-its@' and
> 'interrupt-controller@' via patternProperties set to 'false'. However,
> these names are already permitted (though not preferred) by a subsequent
> pattern that applies the correct schema.
> 
> Since the 'false' patterns take precedence, valid nodes such as
> 'gic-its@<addr>' and 'interrupt-controller@<addr>' fail dtbs_check with
> "False schema does not allow" errors

The reason it is done this way is so that we both check the child nodes 
and warn on deprecated names. 

Fix your .dts files ITS node name to be "msi-controller".

If the node names are fixed everywhere now, then we could just change 
this to "^msi-controller@[0-9a-f]+$".

Rob
Re: [PATCH] dt-bindings: interrupt-controller: arm: Drop redundant node name restrictions
Posted by Pankaj Patil 1 month ago
On 1/3/2026 3:17 AM, Rob Herring wrote:
> On Wed, Dec 31, 2025 at 05:00:26PM +0530, Pankaj Patil wrote:
>> Drop the redundant 'false' patterns so that allowed names
>> ('msi-controller', 'gic-its', and 'interrupt-controller') work as intended
>>
>> GICv3 binding currently disallows child nodes named 'gic-its@' and
>> 'interrupt-controller@' via patternProperties set to 'false'. However,
>> these names are already permitted (though not preferred) by a subsequent
>> pattern that applies the correct schema.
>>
>> Since the 'false' patterns take precedence, valid nodes such as
>> 'gic-its@<addr>' and 'interrupt-controller@<addr>' fail dtbs_check with
>> "False schema does not allow" errors
> The reason it is done this way is so that we both check the child nodes 
> and warn on deprecated names. 
>
> Fix your .dts files ITS node name to be "msi-controller".
>
> If the node names are fixed everywhere now, then we could just change 
> this to "^msi-controller@[0-9a-f]+$".
>
> Rob

Sure, Will rename to "msi-controller" in .dtsi