Devicetree
 help / color / mirror / Atom feed
* [PATCH] dt-bindings: interconnect: qcom: Relax child node name pattern
@ 2026-10-28  8:12 Krzysztof Kozlowski
  2026-10-28  8:19 ` sashiko-bot
  2026-10-28  8:26 ` Krzysztof Kozlowski
  0 siblings, 2 replies; 3+ messages in thread
From: Krzysztof Kozlowski @ 2026-10-28  8:12 UTC (permalink / raw)
  To: Georgi Djakov, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Konrad Dybcio, Barnabas Czeman, Shawn Guo, Raviteja Laggyshetty,
	Luca Weiss, Danila Tikhonov, linux-arm-msm, linux-pm, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski

Some Qualcomm SoCs interconnect nodes have a one child, thus that child
should be named 'interconnect' just like the parent, not
'interconnect-0' or 'interconnect-foo' (see Devicetree specification on
generic device node naming).  Ideally the child should be just a
property, not patternProperties, but that would be an ABI change.  Relax
the pattern for children to allow the correct naming.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
---
 .../devicetree/bindings/interconnect/qcom,msm8939.yaml         | 2 +-
 .../devicetree/bindings/interconnect/qcom,msm8953.yaml         | 2 +-
 .../devicetree/bindings/interconnect/qcom,qcm2290.yaml         | 3 +--
 .../devicetree/bindings/interconnect/qcom,shikra.yaml          | 3 +--
 .../devicetree/bindings/interconnect/qcom,sm6115.yaml          | 3 +--
 .../devicetree/bindings/interconnect/qcom,sm6350-rpmh.yaml     | 2 +-
 .../devicetree/bindings/interconnect/qcom,sm7150-rpmh.yaml     | 3 +--
 7 files changed, 7 insertions(+), 11 deletions(-)

diff --git a/Documentation/devicetree/bindings/interconnect/qcom,msm8939.yaml b/Documentation/devicetree/bindings/interconnect/qcom,msm8939.yaml
index 534644cccdcb..f8ecfe60a8a3 100644
--- a/Documentation/devicetree/bindings/interconnect/qcom,msm8939.yaml
+++ b/Documentation/devicetree/bindings/interconnect/qcom,msm8939.yaml
@@ -33,7 +33,7 @@ properties:
     maxItems: 1
 
 patternProperties:
-  '^interconnect-[a-z0-9\-]+$':
+  '^interconnect(-[a-z0-9\-]+)?$':
     type: object
     $ref: qcom,rpm-common.yaml#
     description:
diff --git a/Documentation/devicetree/bindings/interconnect/qcom,msm8953.yaml b/Documentation/devicetree/bindings/interconnect/qcom,msm8953.yaml
index 56cdb77b369a..538115048d99 100644
--- a/Documentation/devicetree/bindings/interconnect/qcom,msm8953.yaml
+++ b/Documentation/devicetree/bindings/interconnect/qcom,msm8953.yaml
@@ -35,7 +35,7 @@ properties:
     const: 2
 
 patternProperties:
-  '^interconnect-[a-z0-9\-]+$':
+  '^interconnect(-[a-z0-9\-]+)?$':
     type: object
     $ref: qcom,rpm-common.yaml#
     unevaluatedProperties: false
diff --git a/Documentation/devicetree/bindings/interconnect/qcom,qcm2290.yaml b/Documentation/devicetree/bindings/interconnect/qcom,qcm2290.yaml
index b6c15314c5c5..72b060a4a193 100644
--- a/Documentation/devicetree/bindings/interconnect/qcom,qcm2290.yaml
+++ b/Documentation/devicetree/bindings/interconnect/qcom,qcm2290.yaml
@@ -26,9 +26,8 @@ properties:
       - qcom,qcm2290-cnoc
       - qcom,qcm2290-snoc
 
-# Child node's properties
 patternProperties:
-  '^interconnect-[a-z0-9]+$':
+  '^interconnect(-[a-z0-9\-]+)?$':
     type: object
     description:
       The interconnect providers do not have a separate QoS register space,
diff --git a/Documentation/devicetree/bindings/interconnect/qcom,shikra.yaml b/Documentation/devicetree/bindings/interconnect/qcom,shikra.yaml
index a0c26de94ccf..456b56222866 100644
--- a/Documentation/devicetree/bindings/interconnect/qcom,shikra.yaml
+++ b/Documentation/devicetree/bindings/interconnect/qcom,shikra.yaml
@@ -31,9 +31,8 @@ properties:
     minItems: 1
     maxItems: 4
 
-# Child node's properties
 patternProperties:
-  '^interconnect-[a-z0-9]+$':
+  '^interconnect(-[a-z0-9\-]+)?$':
     type: object
     description:
       The interconnect providers do not have a separate QoS register space,
diff --git a/Documentation/devicetree/bindings/interconnect/qcom,sm6115.yaml b/Documentation/devicetree/bindings/interconnect/qcom,sm6115.yaml
index cdae0acf3a1d..0024fd29c0bc 100644
--- a/Documentation/devicetree/bindings/interconnect/qcom,sm6115.yaml
+++ b/Documentation/devicetree/bindings/interconnect/qcom,sm6115.yaml
@@ -31,9 +31,8 @@ properties:
     minItems: 1
     maxItems: 4
 
-# Child node's properties
 patternProperties:
-  '^interconnect-[a-z0-9]+$':
+  '^interconnect(-[a-z0-9\-]+)?$':
     type: object
     description:
       The interconnect providers do not have a separate QoS register space,
diff --git a/Documentation/devicetree/bindings/interconnect/qcom,sm6350-rpmh.yaml b/Documentation/devicetree/bindings/interconnect/qcom,sm6350-rpmh.yaml
index 2dc16e4293a9..c62816917862 100644
--- a/Documentation/devicetree/bindings/interconnect/qcom,sm6350-rpmh.yaml
+++ b/Documentation/devicetree/bindings/interconnect/qcom,sm6350-rpmh.yaml
@@ -32,7 +32,7 @@ properties:
     maxItems: 2
 
 patternProperties:
-  '^interconnect-[a-z0-9\-]+$':
+  '^interconnect(-[a-z0-9\-]+)?$':
     type: object
     description:
       The interconnect providers do not have a separate QoS register space,
diff --git a/Documentation/devicetree/bindings/interconnect/qcom,sm7150-rpmh.yaml b/Documentation/devicetree/bindings/interconnect/qcom,sm7150-rpmh.yaml
index 978930324bbf..ec08000abc96 100644
--- a/Documentation/devicetree/bindings/interconnect/qcom,sm7150-rpmh.yaml
+++ b/Documentation/devicetree/bindings/interconnect/qcom,sm7150-rpmh.yaml
@@ -34,9 +34,8 @@ properties:
   reg:
     maxItems: 1
 
-# Child node's properties
 patternProperties:
-  '^interconnect-[0-9]+$':
+  '^interconnect(-[0-9]+)?$':
     type: object
     description:
       The interconnect providers do not have a separate QoS register space,
-- 
2.53.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] dt-bindings: interconnect: qcom: Relax child node name pattern
  2026-10-28  8:12 [PATCH] dt-bindings: interconnect: qcom: Relax child node name pattern Krzysztof Kozlowski
@ 2026-10-28  8:19 ` sashiko-bot
  2026-10-28  8:26 ` Krzysztof Kozlowski
  1 sibling, 0 replies; 3+ messages in thread
From: sashiko-bot @ 2026-10-28  8:19 UTC (permalink / raw)
  To: Krzysztof Kozlowski, devicetree; +Cc: robh, conor+dt

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] dt-bindings: interconnect: qcom: unupdated child pattern in allOf blocks
--

commit f673587b21cccff8d6834d16d82048b29f591b52
Author: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>

dt-bindings: interconnect: qcom: Relax child node name pattern

This commit relaxes the child node patternProperties regex in several
Qualcomm interconnect bindings so that single child nodes can be named
interconnect rather than requiring a suffix.

[ ... ]

> diff --git a/Documentation/devicetree/bindings/interconnect/qcom,shikra.yaml b/Documentation/devicetree/bindings/interconnect/qcom,shikra.yaml
> index a0c26de94ccf7..456b56222866d 100644
> --- a/Documentation/devicetree/bindings/interconnect/qcom,shikra.yaml
> +++ b/Documentation/devicetree/bindings/interconnect/qcom,shikra.yaml
> @@ -31,9 +31,8 @@ properties:
>      minItems: 1
>      maxItems: 4
>  
> -# Child node's properties
>  patternProperties:
> -  '^interconnect-[a-z0-9]+$':
> +  '^interconnect(-[a-z0-9\-]+)?$':
>      type: object
>      description:
>        The interconnect providers do not have a separate QoS register space,
> diff --git a/Documentation/devicetree/bindings/interconnect/qcom,sm6115.yaml b/Documentation/devicetree/bindings/interconnect/qcom,sm6115.yaml
> index cdae0acf3a1da..0024fd29c0bc3 100644
> --- a/Documentation/devicetree/bindings/interconnect/qcom,sm6115.yaml
> +++ b/Documentation/devicetree/bindings/interconnect/qcom,sm6115.yaml
> @@ -31,9 +31,8 @@ properties:
>      minItems: 1
>      maxItems: 4
>  
> -# Child node's properties
>  patternProperties:
> -  '^interconnect-[a-z0-9]+$':
> +  '^interconnect(-[a-z0-9\-]+)?$':
>      type: object
>      description:
>        The interconnect providers do not have a separate QoS register space,

[Severity: Medium]
In both Documentation/devicetree/bindings/interconnect/qcom,shikra.yaml and
Documentation/devicetree/bindings/interconnect/qcom,sm6115.yaml, the top-level
patternProperties entry is relaxed to '^interconnect(-[a-z0-9\-]+)?$', but the
allOf conditional blocks that disallow child interconnect nodes still use the
old pattern:

Documentation/devicetree/bindings/interconnect/qcom,shikra.yaml:
  - if:
      properties:
        compatible:
          const: qcom,shikra-mem-noc-core
    then:
      ...
      patternProperties:
        '^interconnect-[a-z0-9]+$': false
  ...
  - if:
      properties:
        compatible:
          const: qcom,shikra-config-noc
    then:
      ...
      patternProperties:
        '^interconnect-[a-z0-9]+$': false

Documentation/devicetree/bindings/interconnect/qcom,sm6115.yaml:
  - if:
      properties:
        compatible:
          const: qcom,sm6115-bimc
    then:
      ...
      patternProperties:
        '^interconnect-[a-z0-9]+$': false

  - if:
      properties:
        compatible:
          const: qcom,sm6115-cnoc
    then:
      ...
      patternProperties:
        '^interconnect-[a-z0-9]+$': false

Because a child node named interconnect (or with multiple hyphens) matches the
top-level patternProperties but not the pattern in the allOf blocks, won't
prohibited child nodes under qcom,shikra-mem-noc-core, qcom,shikra-config-noc,
qcom,sm6115-bimc, and qcom,sm6115-cnoc silently pass schema validation? Should
those allOf patternProperties entries also be updated to
'^interconnect(-[a-z0-9\-]+)?$': false?

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20261028081243.38562-2-krzysztof.kozlowski@oss.qualcomm.com?part=1

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] dt-bindings: interconnect: qcom: Relax child node name pattern
  2026-10-28  8:12 [PATCH] dt-bindings: interconnect: qcom: Relax child node name pattern Krzysztof Kozlowski
  2026-10-28  8:19 ` sashiko-bot
@ 2026-10-28  8:26 ` Krzysztof Kozlowski
  1 sibling, 0 replies; 3+ messages in thread
From: Krzysztof Kozlowski @ 2026-10-28  8:26 UTC (permalink / raw)
  To: Georgi Djakov, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Konrad Dybcio, Barnabas Czeman, Shawn Guo, Raviteja Laggyshetty,
	Luca Weiss, Danila Tikhonov, linux-arm-msm, linux-pm, devicetree,
	linux-kernel

On 28/10/2026 09:12, Krzysztof Kozlowski wrote:
> Some Qualcomm SoCs interconnect nodes have a one child, thus that child
> should be named 'interconnect' just like the parent, not
> 'interconnect-0' or 'interconnect-foo' (see Devicetree specification on
> generic device node naming).  Ideally the child should be just a
> property, not patternProperties, but that would be an ABI change.  Relax
> the pattern for children to allow the correct naming.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
> ---
>  .../devicetree/bindings/interconnect/qcom,msm8939.yaml         | 2 +-
>  .../devicetree/bindings/interconnect/qcom,msm8953.yaml         | 2 +-
>  .../devicetree/bindings/interconnect/qcom,qcm2290.yaml         | 3 +--
>  .../devicetree/bindings/interconnect/qcom,shikra.yaml          | 3 +--
>  .../devicetree/bindings/interconnect/qcom,sm6115.yaml          | 3 +--
>  .../devicetree/bindings/interconnect/qcom,sm6350-rpmh.yaml     | 2 +-
>  .../devicetree/bindings/interconnect/qcom,sm7150-rpmh.yaml     | 3 +--
>  7 files changed, 7 insertions(+), 11 deletions(-)
> 

As Sashiko points, this needs updates.

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-10-28  8:26 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-28  8:12 [PATCH] dt-bindings: interconnect: qcom: Relax child node name pattern Krzysztof Kozlowski
2026-10-28  8:19 ` sashiko-bot
2026-10-28  8:26 ` Krzysztof Kozlowski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox