Qualcomm msm8996/sc7180/sdm845 DWC3 compatible DT nodes are supposed to have a DWC USB3 compatible sub-node to describe a fully functioning USB interface. Let's use the available DWC USB3 DT schema to validate the Qualcomm DWC3 sub-nodes. Note since the generic DWC USB3 DT node is supposed to be named as generic USB HCD ("^usb(@.*)?") we have to accordingly extend the sub-nodes naming space and fix the DT node example. Signed-off-by: Serge Semin <Sergey.Semin@xxxxxxxxxxxxxxxxxxxx> --- Alas there are many Qualcomm DTS files, which have got the Qualcomm DWC3 node defined with sub-nodes named as "^dwc3@.*". Since the generic DWC USB3 DT schema will be automatically selected for them and the naming doesn't comply with the USB HCD DT schema, the dtbs_check procedure will fail. I don't really know what is a most suitable way to fix that. It's either to alter all the Qualcomm DTS files, or extend the USB HCD schema to accept the "dwc3@.*" nodes, or redesign the usb-hcd.yaml schema. What do you think? --- Documentation/devicetree/bindings/usb/qcom,dwc3.yaml | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/Documentation/devicetree/bindings/usb/qcom,dwc3.yaml b/Documentation/devicetree/bindings/usb/qcom,dwc3.yaml index dac10848dd7f..b3737f0e4dc1 100644 --- a/Documentation/devicetree/bindings/usb/qcom,dwc3.yaml +++ b/Documentation/devicetree/bindings/usb/qcom,dwc3.yaml @@ -103,11 +103,8 @@ properties: # Required child node: patternProperties: - "^dwc3@[0-9a-f]+$": - type: object - description: - A child node must exist to represent the core DWC3 IP block - The content of the node is defined in dwc3.txt. + "^(usb|dwc3)@[0-9a-f]+$": + $ref: snps,dwc3.yaml# required: - compatible @@ -160,7 +157,7 @@ examples: resets = <&gcc GCC_USB30_PRIM_BCR>; - dwc3@a600000 { + usb@a600000 { compatible = "snps,dwc3"; reg = <0 0x0a600000 0 0xcd00>; interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>; -- 2.27.0