]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
dt-bindings: Fix phandle-array constraints, again
authorRob Herring (Arm) <robh@kernel.org>
Thu, 7 May 2026 20:16:00 +0000 (15:16 -0500)
committerRob Herring (Arm) <robh@kernel.org>
Fri, 15 May 2026 23:18:05 +0000 (18:18 -0500)
The unfortunately named 'phandle-array' property type is really a matrix
with phandle and fixed arg cells entries. A matrix property should have 2
levels of items constraints.

Acked-by: Mark Brown <broonie@kernel.org>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Link: https://patch.msgid.link/20260507201749.2605365-1-robh@kernel.org
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
23 files changed:
Documentation/devicetree/bindings/display/rockchip/rockchip,rk3399-cdn-dp.yaml
Documentation/devicetree/bindings/i2c/i2c-demux-pinctrl.yaml
Documentation/devicetree/bindings/mmc/hisilicon,hi3798cv200-dw-mshc.yaml
Documentation/devicetree/bindings/net/qcom,bam-dmux.yaml
Documentation/devicetree/bindings/net/qcom,ipa.yaml
Documentation/devicetree/bindings/net/wireless/qcom,ath10k.yaml
Documentation/devicetree/bindings/net/wireless/qcom,ath11k.yaml
Documentation/devicetree/bindings/net/wireless/qcom,ipq5332-wifi.yaml
Documentation/devicetree/bindings/pci/toshiba,tc9563.yaml
Documentation/devicetree/bindings/remoteproc/qcom,msm8916-mss-pil.yaml
Documentation/devicetree/bindings/remoteproc/qcom,msm8996-mss-pil.yaml
Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml
Documentation/devicetree/bindings/remoteproc/qcom,qcs404-cdsp-pil.yaml
Documentation/devicetree/bindings/remoteproc/qcom,sc7180-mss-pil.yaml
Documentation/devicetree/bindings/remoteproc/qcom,sc7280-adsp-pil.yaml
Documentation/devicetree/bindings/remoteproc/qcom,sc7280-mss-pil.yaml
Documentation/devicetree/bindings/remoteproc/qcom,sc7280-wpss-pil.yaml
Documentation/devicetree/bindings/remoteproc/qcom,sdm845-adsp-pil.yaml
Documentation/devicetree/bindings/remoteproc/qcom,wcnss-pil.yaml
Documentation/devicetree/bindings/sound/samsung,tm2.yaml
Documentation/devicetree/bindings/spi/st,stm32mp25-ospi.yaml
Documentation/devicetree/bindings/usb/chipidea,usb2-common.yaml
Documentation/devicetree/bindings/usb/ci-hdrc-usb2.yaml

index 1a33128e77f580a38050b681d7bc8b9aa2cb2906..195f665970bf99ddfe91d978e483b236ac25a54b 100644 (file)
@@ -41,7 +41,9 @@ properties:
     minItems: 1
     items:
       - description: Extcon device providing the cable state for DP PHY device 0
+        maxItems: 1
       - description: Extcon device providing the cable state for DP PHY device 1
+        maxItems: 1
     description:
       List of phandle to the extcon device providing the cable state for the DP PHY.
 
index 1eaf00b90a77a3e5f16ed0ab3f2fb55cb8e2cd37..deca72bfc8cf3330f4c24e6fd3500e4ac91b0c89 100644 (file)
@@ -40,6 +40,7 @@ properties:
 
   i2c-parent:
     $ref: /schemas/types.yaml#/definitions/phandle-array
+    minItems: 2
     items:
       maxItems: 1
     description:
index 41c9b22523e7dc251ad1fdd1061d9a66b3b52eba..e447579e0f22ef827be38f9f86e1a725843c2e17 100644 (file)
@@ -39,10 +39,11 @@ properties:
     $ref: /schemas/types.yaml#/definitions/phandle-array
     description: |
       DWMMC core on Hi3798MV2x SoCs has a delay-locked-loop(DLL) attached to card data input path.
-      It is integrated into CRG core on the SoC and has to be controlled during tuning.
+      It is integrated into CRG core on the SoC and has to be controlled during tuning
     items:
-      - description: A phandle pointed to the CRG syscon node
-      - description: Sample DLL register offset in CRG address space
+      - items:
+          - description: A phandle pointed to the CRG syscon node
+          - description: Sample DLL register offset in CRG address space
 
 required:
   - compatible
index b30544410d0923e8111179ef961d9da878a020d2..33746c238513d72366bc52359fb10f275475b331 100644 (file)
@@ -42,7 +42,19 @@ properties:
     description: State bits used by the AP to signal the modem.
     items:
       - description: Power control
+        items:
+          - description: Phandle to the Shared Memory Point 2 Point device
+              handling the communication with a remote processor
+          - description: Single bit index to toggle in the value sent to
+              the remote processor
+            maximum: 32
       - description: Power control acknowledgment
+        items:
+          - description: Phandle to the Shared Memory Point 2 Point device
+              handling the communication with a remote processor
+          - description: Single bit index to toggle in the value sent to
+              the remote processor
+            maximum: 32
 
   qcom,smem-state-names:
     description: Names for the state bits used by the AP to signal the modem.
index fdeaa81b96454eac8638d3c7ebe2c90be61270de..68ec76fe447356d2965ff9a221d2ee3895d5a7d2 100644 (file)
@@ -128,7 +128,19 @@ properties:
     description: State bits used in by the AP to signal the modem.
     items:
       - description: Whether the "ipa-clock-enabled" state bit is valid
+        items:
+          - description: Phandle to the Shared Memory Point 2 Point device
+              handling the communication with a remote processor
+          - description: Single bit index to toggle in the value sent to
+              the remote processor
+            maximum: 32
       - description: Whether the IPA clock is enabled (if valid)
+        items:
+          - description: Phandle to the Shared Memory Point 2 Point device
+              handling the communication with a remote processor
+          - description: Single bit index to toggle in the value sent to
+              the remote processor
+            maximum: 32
 
   qcom,smem-state-names:
     description: The names of the state bits used for SMP2P output
index c21d66c7cd558ab792524be9afec8b79272d1c87..d4f4d72ee0d388f43437fc5a3047f90b464a5274 100644 (file)
@@ -158,7 +158,13 @@ properties:
     description: State bits used by the AP to signal the WLAN Q6.
     items:
       - description: Signal bits used to enable/disable low power mode
-                     on WCN in the case of WoW (Wake on Wireless).
+          on WCN in the case of WoW (Wake on Wireless).
+        items:
+          - description: Phandle to the Shared Memory Point 2 Point device
+              handling the communication with a remote processor
+          - description: Single bit index to toggle in the value sent to
+              the remote processor
+            maximum: 32
 
   qcom,smem-state-names:
     description: The names of the state bits used for SMP2P output.
index 0cc1dbf2beefa2f87af72bac21353eedd2b7e042..d4aa56e2f8233525af9ae348bc117a8e75bdaaec 100644 (file)
@@ -80,7 +80,13 @@ properties:
     description: State bits used by the AP to signal the WLAN Q6.
     items:
       - description: Signal bits used to enable/disable low power mode
-                     on WCN6750 in the case of WoW (Wake on Wireless).
+          on WCN6750 in the case of WoW (Wake on Wireless).
+        items:
+          - description: Phandle to the Shared Memory Point 2 Point device
+              handling the communication with a remote processor
+          - description: Single bit index to toggle in the value sent to
+              the remote processor
+            maximum: 32
 
   qcom,smem-state-names:
     description: The names of the state bits used for SMP2P output.
index 37d8a0da778097b8bf7af2e8f1e920083a3fb81a..18cd91e2728cf0d20550e5eac34a3d7ad47eb9d5 100644 (file)
@@ -168,8 +168,26 @@ properties:
     description: States used by the AP to signal the remote processor
     items:
       - description: Shutdown WCSS pd
+        items:
+          - description: Phandle to the Shared Memory Point 2 Point device
+              handling the communication with a remote processor
+          - description: Single bit index to toggle in the value sent to
+              the remote processor
+            maximum: 32
       - description: Stop WCSS pd
+        items:
+          - description: Phandle to the Shared Memory Point 2 Point device
+              handling the communication with a remote processor
+          - description: Single bit index to toggle in the value sent to
+              the remote processor
+            maximum: 32
       - description: Spawn WCSS pd
+        items:
+          - description: Phandle to the Shared Memory Point 2 Point device
+              handling the communication with a remote processor
+          - description: Single bit index to toggle in the value sent to
+              the remote processor
+            maximum: 32
 
   qcom,smem-state-names:
     description:
index fae466064780959833e7102164a124086bd9099e..b3ad05d90201cec52cf13eaf5667f99ec056db64 100644 (file)
@@ -49,8 +49,9 @@ properties:
       A phandle to the parent I2C node and the slave address of the device
       used to configure tc9563 to change FTS, tx amplitude etc.
     items:
-      - description: Phandle to the I2C controller node
-      - description: I2C slave address
+      - items:
+          - description: Phandle to the I2C controller node
+          - description: I2C slave address
 
 patternProperties:
   "^pcie@[1-3],0$":
index faf2712e3d2722ee6c077aa0523ce1ac0ec53dc3..4049157dd83d722da00988430cd0c045588fcf82 100644 (file)
@@ -108,6 +108,12 @@ properties:
     description: States used by the AP to signal the Hexagon core
     items:
       - description: Stop modem
+        items:
+          - description: Phandle to the Shared Memory Point 2 Point device
+              handling the communication with a remote processor
+          - description: Single bit index to toggle in the value sent to
+              the remote processor
+            maximum: 32
 
   qcom,smem-state-names:
     description: Names of the states used by the AP to signal the Hexagon core
index 1b65813cc8adf524c89ba75d652910888f84940f..4a1b439f985e3d6669eef8d07ae3ee9469c4345f 100644 (file)
@@ -101,6 +101,13 @@ properties:
     description: States used by the AP to signal the Hexagon core
     items:
       - description: Stop modem
+        items:
+          - description: Phandle to the Shared Memory Point 2 Point or Shared
+              Memory Manager device handling the communication with a remote
+              processor
+          - description: Single bit index to toggle in the value sent to
+              the remote processor
+            maximum: 32
 
   qcom,smem-state-names:
     description: Names of the states used by the AP to signal the Hexagon core
index 68c17bf18987c4da5f57aef4b6c9e971331ef4bd..4607b459131b4f2595ccbfba3812386bb7ae70ad 100644 (file)
@@ -60,6 +60,12 @@ properties:
     description: States used by the AP to signal the Hexagon core
     items:
       - description: Stop the modem
+        items:
+          - description: Phandle to the Shared Memory Point 2 Point device
+              handling the communication with a remote processor
+          - description: Single bit index to toggle in the value sent to
+              the remote processor
+            maximum: 32
 
   qcom,smem-state-names:
     description: The names of the state bits used for SMP2P output
index bca59394aef49210af53d0d1468f661df57bbcfd..e5f5f92987e1ddc3d2a34280acb3e300ab11dcef 100644 (file)
@@ -92,6 +92,12 @@ properties:
     description: States used by the AP to signal the Hexagon core
     items:
       - description: Stop the modem
+        items:
+          - description: Phandle to the Shared Memory Point 2 Point device
+              handling the communication with a remote processor
+          - description: Single bit index to toggle in the value sent to
+              the remote processor
+            maximum: 32
 
   qcom,smem-state-names:
     description: The names of the state bits used for SMP2P output
index 7c9accac92d08c0cba39e05d644633d6fa775d31..21c82cd3be037eb8f65618f3477826ebf57662f7 100644 (file)
@@ -133,6 +133,12 @@ properties:
     description: States used by the AP to signal the Hexagon core
     items:
       - description: Stop the modem
+        items:
+          - description: Phandle to the Shared Memory Point 2 Point device
+              handling the communication with a remote processor
+          - description: Single bit index to toggle in the value sent to
+              the remote processor
+            maximum: 32
 
   qcom,smem-state-names:
     description: The names of the state bits used for SMP2P output
index 94ca7a0cc203fb14dba28c844fb474ac60851b18..23b8e3079f3b1b3a7e2846d74b45acc7e50a85d6 100644 (file)
@@ -91,6 +91,12 @@ properties:
     description: States used by the AP to signal the Hexagon core
     items:
       - description: Stop the modem
+        items:
+          - description: Phandle to the Shared Memory Point 2 Point device
+              handling the communication with a remote processor
+          - description: Single bit index to toggle in the value sent to
+              the remote processor
+            maximum: 32
 
   qcom,smem-state-names:
     description: The names of the state bits used for SMP2P output
index f349c303fa07e40b51a318d8bd289d7b7f0a12d5..43dfb90ac18d4166e3bc622d8c1e2eeb3c3e4044 100644 (file)
@@ -147,6 +147,12 @@ properties:
     description: States used by the AP to signal the Hexagon core
     items:
       - description: Stop the modem
+        items:
+          - description: Phandle to the Shared Memory Point 2 Point device
+              handling the communication with a remote processor
+          - description: Single bit index to toggle in the value sent to
+              the remote processor
+            maximum: 32
 
   qcom,smem-state-names:
     description: The names of the state bits used for SMP2P output
index f4118b2da5f655328e411cc8aea8790b2d614734..f3f3432948edc9d9c551a300dc0474499f1d5b7e 100644 (file)
@@ -104,6 +104,12 @@ properties:
     description: States used by the AP to signal the Hexagon core
     items:
       - description: Stop the modem
+        items:
+          - description: Phandle to the Shared Memory Point 2 Point device
+              handling the communication with a remote processor
+          - description: Single bit index to toggle in the value sent to
+              the remote processor
+            maximum: 32
 
   qcom,smem-state-names:
     description: The names of the state bits used for SMP2P output
index a3c74871457fc5d32cd99cc4b700fa5d692de2ce..9666ebf1e7b6bf03dc1e3958387d87f6db9289d8 100644 (file)
@@ -92,6 +92,12 @@ properties:
     description: States used by the AP to signal the Hexagon core
     items:
       - description: Stop the modem
+        items:
+          - description: Phandle to the Shared Memory Point 2 Point device
+              handling the communication with a remote processor
+          - description: Single bit index to toggle in the value sent to
+              the remote processor
+            maximum: 32
 
   qcom,smem-state-names:
     description: The names of the state bits used for SMP2P output
index 117fb4d0c4ad2a3fad3cfe5d49ec2223b59358b2..a55e55f5f01455c790cf2f9e63b6262d23617840 100644 (file)
@@ -84,6 +84,12 @@ properties:
       States used by the AP to signal the WCNSS core that it should shutdown
     items:
       - description: Stop the modem
+        items:
+          - description: Phandle to the Shared Memory Point 2 Point device
+              handling the communication with a remote processor
+          - description: Single bit index to toggle in the value sent to
+              the remote processor
+            maximum: 32
 
   qcom,smem-state-names:
     description: The names of the state bits used for SMP2P output
index 67586ba3e0a0fb2ecb3356d9edc843a8b8d75989..985b7d29cd33742d2b0679ae8f2e79f226ec3bf7 100644 (file)
@@ -45,8 +45,12 @@ properties:
     description: Phandles to the I2S controllers.
     $ref: /schemas/types.yaml#/definitions/phandle-array
     items:
-      - description: Phandle to I2S0.
-      - description: Phandle to I2S1.
+      - items:
+          - description: Phandle to I2S0
+          - description: Unused
+      - items:
+          - description: Phandle to I2S1
+          - description: Unused
 
   mic-bias-gpios:
     description: GPIO pin that enables the Main Mic bias regulator.
index 272bc308726b2dfdf3ec80740d70e0fd1bfc4fea..b6be47f67fcb5d556612c2de2218af5ece42f8eb 100644 (file)
@@ -49,8 +49,9 @@ properties:
     description: configure OCTOSPI delay block.
     $ref: /schemas/types.yaml#/definitions/phandle-array
     items:
-      - description: phandle to syscfg
-      - description: register offset within syscfg
+      - items:
+          - description: phandle to syscfg
+          - description: register offset within syscfg
 
   access-controllers:
     description: phandle to the rifsc device to check access right
index 10020af15afc4a4458a9a7dc45c929e7749c7a4b..e6a5e79df3484187e3cd83dd8b72fb223c77a508 100644 (file)
@@ -97,7 +97,9 @@ properties:
     minItems: 1
     items:
       - description: vbus extcon
+        maxItems: 1
       - description: id extcon
+        maxItems: 1
 
   phy-clkgate-delay-us:
     description:
index 691d6cf02c27243d2509849cea6b54b791d4efa9..fec04702f53007f5ed09378f001d6f79ce3a1e65 100644 (file)
@@ -61,9 +61,10 @@ properties:
       offset, and phy index
     $ref: /schemas/types.yaml#/definitions/phandle-array
     items:
-      - description: phandle to TCSR node
-      - description: register offset
-      - description: phy index
+      - items:
+          - description: phandle to TCSR node
+          - description: register offset
+          - description: phy index
 
   nvidia,phy:
     description: phandle of usb phy that connects to the port. Use "phys" instead.