diff mbox series

dt-bindings: usb: genesys,gl850g: allow downstream device subnodes

Message ID 20240917094008.283529-1-uwu@icenowy.me (mailing list archive)
State Accepted
Commit 570542810fe539af57a5b9169d79c8b31e83d9d0
Headers show
Series dt-bindings: usb: genesys,gl850g: allow downstream device subnodes | expand

Commit Message

Icenowy Zheng Sept. 17, 2024, 9:40 a.m. UTC
As this binding describes USB hubs, it's natural for them to have
downstream devices.

Change "additionalProperties" to "unevaluatedProperties" to allow
properties defined in usb-device.yaml (for DT cells properties) and add
a pattern-based downstream device subnode rule to match those subnodes.

These changes allow downstream devices get defined under the hub.

Signed-off-by: Icenowy Zheng <uwu@icenowy.me>
---
This patch is sent to fix the problems shown for the patchset at [1],
which declares a MAC-address-less ethernet adapter subnode of the GL850G
to have its MAC address set from the bootloader.

[1] https://lore.kernel.org/linux-arm-kernel/172623730520.4076253.7175037716930825765.robh@kernel.org/

 .../devicetree/bindings/usb/genesys,gl850g.yaml          | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

Comments

Krzysztof Kozlowski Sept. 17, 2024, 10:43 a.m. UTC | #1
On 17/09/2024 11:40, Icenowy Zheng wrote:
> As this binding describes USB hubs, it's natural for them to have
> downstream devices.
> 
> Change "additionalProperties" to "unevaluatedProperties" to allow
> properties defined in usb-device.yaml (for DT cells properties) and add
> a pattern-based downstream device subnode rule to match those subnodes.
> 
> These changes allow downstream devices get defined under the hub.
> 
> Signed-off-by: Icenowy Zheng <uwu@icenowy.me>
> ---

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/usb/genesys,gl850g.yaml b/Documentation/devicetree/bindings/usb/genesys,gl850g.yaml
index fc833363cfb49..6fe2d356dcbde 100644
--- a/Documentation/devicetree/bindings/usb/genesys,gl850g.yaml
+++ b/Documentation/devicetree/bindings/usb/genesys,gl850g.yaml
@@ -62,7 +62,14 @@  allOf:
         peer-hub: true
         vdd-supply: true
 
-additionalProperties: false
+patternProperties:
+  "^.*@[0-9a-f]{1,2}$":
+    description: The hard wired USB devices
+    type: object
+    $ref: /schemas/usb/usb-device.yaml
+    additionalProperties: true
+
+unevaluatedProperties: false
 
 examples:
   - |