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

Icenowy Zheng posted 1 patch 2 months, 1 week ago
.../devicetree/bindings/usb/genesys,gl850g.yaml          | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
[PATCH] dt-bindings: usb: genesys,gl850g: allow downstream device subnodes
Posted by Icenowy Zheng 2 months, 1 week ago
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(-)

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:
   - |
-- 
2.46.0
Re: [PATCH] dt-bindings: usb: genesys,gl850g: allow downstream device subnodes
Posted by Krzysztof Kozlowski 2 months, 1 week ago
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