As the subject states this series is an attempt to harmonize the xHCI, EHCI, OHCI and DWC USB3 DT nodes with the DT schema introduced in the framework of the patchset [1]. Firstly as Krzysztof suggested we've deprecated a support of DWC USB3 controllers with "synopsys,"-vendor prefix compatible string in favor of the ones with valid "snps,"-prefix. It's done in all the DTS files, which have been unfortunate to define such nodes. Secondly we suggest to fix the snps,quirk-frame-length-adjustment property declaration in the Amlogic meson-g12-common.dtsi DTS file, since it has been erroneously declared as boolean while having uint32 type. Neil said it was ok to init that property with 0x20 value. Thirdly the main part of the patchset concern fixing the xHCI, EHCI/OHCI and DWC USB3 DT nodes name as in accordance with their DT schema the corresponding node name is suppose to comply with the Generic USB HCD DT schema, which requires the USB nodes to have the name acceptable by the regexp: "^usb(@.*)?". Such requirement had been applicable even before we introduced the new DT schema in [1], but as we can see it hasn't been strictly implemented for a lot the DTS files. Since DT schema is now available the automated DTS validation shall make sure that the rule isn't violated. Note most of these patches have been a part of the last three patches of [1]. But since there is no way to have them merged in in a combined manner, I had to move them to the dedicated series and split them up so to be accepted by the corresponding subsystem maintainers one-by-one. [1] Link: https://lore.kernel.org/linux-usb/20201014101402.18271-1-Sergey.Semin@baikalelectronics.ru/ Changelog v1: - As Krzysztof suggested I've created a script which checked whether the node names had been also updated in all the depended dts files. As a result I found two more files which should have been also modified: arch/arc/boot/dts/{axc003.dtsi,axc003_idu.dtsi} - Correct the USB DWC3 nodes name found in arch/arm64/boot/dts/apm/{apm-storm.dtsi,apm-shadowcat.dtsi} too. Changelog v2: - Drop the patch: [PATCH 01/29] usb: dwc3: Discard synopsys,dwc3 compatibility string and get back the one which marks the "synopsys,dwc3" compatible string as deprecated into the DT schema related series. - Drop the patches: [PATCH 03/29] arm: dts: am437x: Correct DWC USB3 compatible string [PATCH 04/29] arm: dts: exynos: Correct DWC USB3 compatible string [PATCH 07/29] arm: dts: bcm53x: Harmonize EHCI/OHCI DT nodes name [PATCH 08/29] arm: dts: stm32: Harmonize EHCI/OHCI DT nodes name [PATCH 16/29] arm: dts: bcm5301x: Harmonize xHCI DT nodes name [PATCH 19/29] arm: dts: exynos: Harmonize DWC USB3 DT nodes name [PATCH 21/29] arm: dts: ls1021a: Harmonize DWC USB3 DT nodes name [PATCH 22/29] arm: dts: omap5: Harmonize DWC USB3 DT nodes name [PATCH 24/29] arm64: dts: allwinner: h6: Harmonize DWC USB3 DT nodes name [PATCH 26/29] arm64: dts: exynos: Harmonize DWC USB3 DT nodes name [PATCH 27/29] arm64: dts: layerscape: Harmonize DWC USB3 DT nodes name since they have been applied to the corresponding maintainers repos. - Fix drivers/usb/dwc3/dwc3-qcom.c to be looking for the "usb@"-prefixed sub-node and falling back to the "dwc3@"-prefixed one on failure. Cc: Vineet Gupta <vgupta@synopsys.com> Cc: Rafal Milecki <zajec5@gmail.com> Cc: Wei Xu <xuwei5@hisilicon.com> Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de> Cc: Michael Ellerman <mpe@ellerman.id.au> Cc: Jason Cooper <jason@lakedaemon.net> Cc: Santosh Shilimkar <ssantosh@kernel.org> Cc: Shawn Guo <shawnguo@kernel.org> Cc: Benoit Cousson <bcousson@baylibre.com> Cc: Patrice Chotard <patrice.chotard@st.com> Cc: Maxime Ripard <mripard@kernel.org> Cc: Khuong Dinh <khuong@os.amperecomputing.com> Cc: Andy Gross <agross@kernel.org> Cc: Alexey Brodkin <abrodkin@synopsys.com> Cc: Hauke Mehrtens <hauke@hauke-m.de> Cc: Maxime Coquelin <mcoquelin.stm32@gmail.com> Cc: Alexandre Torgue <alexandre.torgue@st.com> Cc: Amelie Delaunay <amelie.delaunay@st.com> Cc: Vladimir Zapolskiy <vz@mleia.com> Cc: Paul Cercueil <paul@crapouillou.net> Cc: Matthias Brugger <matthias.bgg@gmail.com> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Paul Mackerras <paulus@samba.org> Cc: Andrew Lunn <andrew@lunn.ch> Cc: Gregory Clement <gregory.clement@bootlin.com> Cc: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> Cc: Kukjin Kim <kgene@kernel.org> Cc: Li Yang <leoyang.li@nxp.com> Cc: Tony Lindgren <tony@atomide.com> Cc: Chen-Yu Tsai <wens@csie.org> Cc: Bjorn Andersson <bjorn.andersson@linaro.org> Cc: Jun Li <lijun.kernel@gmail.com> Cc: linux-snps-arc@lists.infradead.org Cc: bcm-kernel-feedback-list@broadcom.com Cc: linux-stm32@st-md-mailman.stormreply.com Cc: linux-arm-kernel@lists.infradead.org Cc: linux-mips@vger.kernel.org Cc: linux-mediatek@lists.infradead.org Cc: linuxppc-dev@lists.ozlabs.org Cc: linux-samsung-soc@vger.kernel.org Cc: linux-omap@vger.kernel.org Cc: linux-arm-msm@vger.kernel.org Cc: devicetree@vger.kernel.org Cc: linux-kernel@vger.kernel.org Serge Semin (18): arm: dts: keystone: Correct DWC USB3 compatible string arm64: dts: amlogic: meson-g12: Set FL-adj property value arc: dts: Harmonize EHCI/OHCI DT nodes name arm: dts: hisi-x5hd2: Harmonize EHCI/OHCI DT nodes name arm: dts: lpc18xx: Harmonize EHCI/OHCI DT nodes name arm64: dts: hisi: Harmonize EHCI/OHCI DT nodes name mips: dts: jz47x: Harmonize EHCI/OHCI DT nodes name mips: dts: sead3: Harmonize EHCI/OHCI DT nodes name mips: dts: ralink: mt7628a: Harmonize EHCI/OHCI DT nodes name powerpc: dts: akebono: Harmonize EHCI/OHCI DT nodes name arm64: dts: marvell: cp11x: Harmonize xHCI DT nodes name arm: dts: marvell: armada-375: Harmonize DWC USB3 DT nodes name arm: dts: keystone: Harmonize DWC USB3 DT nodes name arm: dts: stih407-family: Harmonize DWC USB3 DT nodes name arm64: dts: apm: Harmonize DWC USB3 DT nodes name arm64: dts: hi3660: Harmonize DWC USB3 DT nodes name usb: dwc3: qcom: Detect DWC3 DT-nodes with "usb"-prefixed names arm64: dts: qcom: Harmonize DWC USB3 DT nodes name arch/arc/boot/dts/axc003.dtsi | 4 ++-- arch/arc/boot/dts/axc003_idu.dtsi | 4 ++-- arch/arc/boot/dts/axs10x_mb.dtsi | 4 ++-- arch/arc/boot/dts/hsdk.dts | 4 ++-- arch/arc/boot/dts/vdk_axs10x_mb.dtsi | 2 +- arch/arm/boot/dts/armada-375.dtsi | 2 +- arch/arm/boot/dts/hisi-x5hd2.dtsi | 4 ++-- arch/arm/boot/dts/keystone-k2e.dtsi | 6 +++--- arch/arm/boot/dts/keystone.dtsi | 4 ++-- arch/arm/boot/dts/lpc18xx.dtsi | 4 ++-- arch/arm/boot/dts/stih407-family.dtsi | 2 +- arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi | 2 +- arch/arm64/boot/dts/apm/apm-shadowcat.dtsi | 4 ++-- arch/arm64/boot/dts/apm/apm-storm.dtsi | 6 +++--- arch/arm64/boot/dts/hisilicon/hi3660.dtsi | 2 +- arch/arm64/boot/dts/hisilicon/hi3798cv200.dtsi | 4 ++-- arch/arm64/boot/dts/hisilicon/hip06.dtsi | 4 ++-- arch/arm64/boot/dts/hisilicon/hip07.dtsi | 4 ++-- arch/arm64/boot/dts/marvell/armada-cp11x.dtsi | 4 ++-- arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi | 4 ++-- arch/arm64/boot/dts/qcom/ipq8074.dtsi | 4 ++-- arch/arm64/boot/dts/qcom/msm8996.dtsi | 4 ++-- arch/arm64/boot/dts/qcom/msm8998.dtsi | 2 +- arch/arm64/boot/dts/qcom/qcs404-evb.dtsi | 2 +- arch/arm64/boot/dts/qcom/qcs404.dtsi | 4 ++-- arch/arm64/boot/dts/qcom/sc7180.dtsi | 2 +- arch/arm64/boot/dts/qcom/sdm845.dtsi | 4 ++-- arch/arm64/boot/dts/qcom/sm8150.dtsi | 2 +- arch/mips/boot/dts/ingenic/jz4740.dtsi | 2 +- arch/mips/boot/dts/ingenic/jz4770.dtsi | 2 +- arch/mips/boot/dts/mti/sead3.dts | 2 +- arch/mips/boot/dts/ralink/mt7628a.dtsi | 2 +- arch/powerpc/boot/dts/akebono.dts | 6 +++--- drivers/usb/dwc3/dwc3-qcom.c | 3 ++- 34 files changed, 58 insertions(+), 57 deletions(-) -- 2.28.0
Syonpsys IP cores are supposed to be defined with "snps" vendor-prefix. Use it instead of the deprecated "synopsys" one. Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org> --- arch/arm/boot/dts/keystone-k2e.dtsi | 2 +- arch/arm/boot/dts/keystone.dtsi | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm/boot/dts/keystone-k2e.dtsi b/arch/arm/boot/dts/keystone-k2e.dtsi index 2d94faf31fab..fa1b8499c5a7 100644 --- a/arch/arm/boot/dts/keystone-k2e.dtsi +++ b/arch/arm/boot/dts/keystone-k2e.dtsi @@ -79,7 +79,7 @@ keystone_usb1: usb@25000000 { status = "disabled"; usb1: dwc3@25010000 { - compatible = "synopsys,dwc3"; + compatible = "snps,dwc3"; reg = <0x25010000 0x70000>; interrupts = <GIC_SPI 414 IRQ_TYPE_EDGE_RISING>; usb-phy = <&usb1_phy>, <&usb1_phy>; diff --git a/arch/arm/boot/dts/keystone.dtsi b/arch/arm/boot/dts/keystone.dtsi index c298675a29a5..8d046a1b690c 100644 --- a/arch/arm/boot/dts/keystone.dtsi +++ b/arch/arm/boot/dts/keystone.dtsi @@ -218,7 +218,7 @@ keystone_usb0: usb@2680000 { status = "disabled"; usb0: dwc3@2690000 { - compatible = "synopsys,dwc3"; + compatible = "snps,dwc3"; reg = <0x2690000 0x70000>; interrupts = <GIC_SPI 393 IRQ_TYPE_EDGE_RISING>; usb-phy = <&usb_phy>, <&usb_phy>; -- 2.28.0
In accordance with the DWC USB3 bindings the property is supposed to have uint32 type. It's erroneous from the DT schema and driver points of view to declare it as boolean. As Neil suggested set it to 0x20 so not break the platform and to make the dtbs checker happy. Link: https://lore.kernel.org/linux-usb/20201010224121.12672-16-Sergey.Semin@baikalelectronics.ru/ Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> Reviewed-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> Reviewed-by: Neil Armstrong <narmstrong@baylibre.com> Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org> --- arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi index 1e83ec5b8c91..3033ab2be1ff 100644 --- a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi +++ b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi @@ -2380,7 +2380,7 @@ dwc3: usb@ff500000 { interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>; dr_mode = "host"; snps,dis_u2_susphy_quirk; - snps,quirk-frame-length-adjustment; + snps,quirk-frame-length-adjustment = <0x20>; snps,parkmode-disable-ss-quirk; }; }; -- 2.28.0
In accordance with the Generic EHCI/OHCI bindings the corresponding node name is suppose to comply with the Generic USB HCD DT schema, which requires the USB nodes to have the name acceptable by the regexp: "^usb(@.*)?" . Make sure the "generic-ehci" and "generic-ohci"-compatible nodes are correctly named. Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> Acked-by: Alexey Brodkin <abrodkin@synopsys.com> Acked-by: Krzysztof Kozlowski <krzk@kernel.org> --- arch/arc/boot/dts/axc003.dtsi | 4 ++-- arch/arc/boot/dts/axc003_idu.dtsi | 4 ++-- arch/arc/boot/dts/axs10x_mb.dtsi | 4 ++-- arch/arc/boot/dts/hsdk.dts | 4 ++-- arch/arc/boot/dts/vdk_axs10x_mb.dtsi | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/arch/arc/boot/dts/axc003.dtsi b/arch/arc/boot/dts/axc003.dtsi index ac8e1b463a70..256ecffbc31e 100644 --- a/arch/arc/boot/dts/axc003.dtsi +++ b/arch/arc/boot/dts/axc003.dtsi @@ -103,11 +103,11 @@ ethernet@18000 { dma-coherent; }; - ehci@40000 { + usb@40000 { dma-coherent; }; - ohci@60000 { + usb@60000 { dma-coherent; }; diff --git a/arch/arc/boot/dts/axc003_idu.dtsi b/arch/arc/boot/dts/axc003_idu.dtsi index 9da21e7fd246..6eda28cbd15e 100644 --- a/arch/arc/boot/dts/axc003_idu.dtsi +++ b/arch/arc/boot/dts/axc003_idu.dtsi @@ -110,11 +110,11 @@ ethernet@18000 { dma-coherent; }; - ehci@40000 { + usb@40000 { dma-coherent; }; - ohci@60000 { + usb@60000 { dma-coherent; }; diff --git a/arch/arc/boot/dts/axs10x_mb.dtsi b/arch/arc/boot/dts/axs10x_mb.dtsi index 99d3e7175bf7..b64435385304 100644 --- a/arch/arc/boot/dts/axs10x_mb.dtsi +++ b/arch/arc/boot/dts/axs10x_mb.dtsi @@ -87,13 +87,13 @@ gmac: ethernet@18000 { mac-address = [00 00 00 00 00 00]; /* Filled in by U-Boot */ }; - ehci@40000 { + usb@40000 { compatible = "generic-ehci"; reg = < 0x40000 0x100 >; interrupts = < 8 >; }; - ohci@60000 { + usb@60000 { compatible = "generic-ohci"; reg = < 0x60000 0x100 >; interrupts = < 8 >; diff --git a/arch/arc/boot/dts/hsdk.dts b/arch/arc/boot/dts/hsdk.dts index dcaa44e408ac..fdd4f7f635d3 100644 --- a/arch/arc/boot/dts/hsdk.dts +++ b/arch/arc/boot/dts/hsdk.dts @@ -234,7 +234,7 @@ phy0: ethernet-phy@0 { /* Micrel KSZ9031 */ }; }; - ohci@60000 { + usb@60000 { compatible = "snps,hsdk-v1.0-ohci", "generic-ohci"; reg = <0x60000 0x100>; interrupts = <15>; @@ -242,7 +242,7 @@ ohci@60000 { dma-coherent; }; - ehci@40000 { + usb@40000 { compatible = "snps,hsdk-v1.0-ehci", "generic-ehci"; reg = <0x40000 0x100>; interrupts = <15>; diff --git a/arch/arc/boot/dts/vdk_axs10x_mb.dtsi b/arch/arc/boot/dts/vdk_axs10x_mb.dtsi index cbb179770293..90a412026e64 100644 --- a/arch/arc/boot/dts/vdk_axs10x_mb.dtsi +++ b/arch/arc/boot/dts/vdk_axs10x_mb.dtsi @@ -46,7 +46,7 @@ ethernet@18000 { clock-names = "stmmaceth"; }; - ehci@40000 { + usb@40000 { compatible = "generic-ehci"; reg = < 0x40000 0x100 >; interrupts = < 8 >; -- 2.28.0
In accordance with the Generic EHCI/OHCI bindings the corresponding node name is suppose to comply with the Generic USB HCD DT schema, which requires the USB nodes to have the name acceptable by the regexp: "^usb(@.*)?" . Make sure the "generic-ehci" and "generic-ohci"-compatible nodes are correctly named. Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> Acked-by: Krzysztof Kozlowski <krzk@kernel.org> --- arch/arm/boot/dts/hisi-x5hd2.dtsi | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm/boot/dts/hisi-x5hd2.dtsi b/arch/arm/boot/dts/hisi-x5hd2.dtsi index 3ee7967c202d..693b85b2cc7d 100644 --- a/arch/arm/boot/dts/hisi-x5hd2.dtsi +++ b/arch/arm/boot/dts/hisi-x5hd2.dtsi @@ -452,14 +452,14 @@ gmac1: ethernet@1841000 { status = "disabled"; }; - usb0: ehci@1890000 { + usb0: usb@1890000 { compatible = "generic-ehci"; reg = <0x1890000 0x1000>; interrupts = <0 66 4>; clocks = <&clock HIX5HD2_USB_CLK>; }; - usb1: ohci@1880000 { + usb1: usb@1880000 { compatible = "generic-ohci"; reg = <0x1880000 0x1000>; interrupts = <0 67 4>; -- 2.28.0
In accordance with the Generic EHCI/OHCI bindings the corresponding node name is suppose to comply with the Generic USB HCD DT schema, which requires the USB nodes to have the name acceptable by the regexp: "^usb(@.*)?" . Make sure the "generic-ehci" and "generic-ohci"-compatible nodes are correctly named. Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> Acked-by: Vladimir Zapolskiy <vz@mleia.com> Acked-by: Krzysztof Kozlowski <krzk@kernel.org> --- arch/arm/boot/dts/lpc18xx.dtsi | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm/boot/dts/lpc18xx.dtsi b/arch/arm/boot/dts/lpc18xx.dtsi index 10b8249b8ab6..82ffd7b0ad8a 100644 --- a/arch/arm/boot/dts/lpc18xx.dtsi +++ b/arch/arm/boot/dts/lpc18xx.dtsi @@ -121,7 +121,7 @@ mmcsd: mmcsd@40004000 { status = "disabled"; }; - usb0: ehci@40006100 { + usb0: usb@40006100 { compatible = "nxp,lpc1850-ehci", "generic-ehci"; reg = <0x40006100 0x100>; interrupts = <8>; @@ -133,7 +133,7 @@ usb0: ehci@40006100 { status = "disabled"; }; - usb1: ehci@40007100 { + usb1: usb@40007100 { compatible = "nxp,lpc1850-ehci", "generic-ehci"; reg = <0x40007100 0x100>; interrupts = <9>; -- 2.28.0
In accordance with the Generic EHCI/OHCI bindings the corresponding node name is suppose to comply with the Generic USB HCD DT schema, which requires the USB nodes to have the name acceptable by the regexp: "^usb(@.*)?" . Make sure the "generic-ehci" and "generic-ohci"-compatible nodes are correctly named. Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> Acked-by: Krzysztof Kozlowski <krzk@kernel.org> --- arch/arm64/boot/dts/hisilicon/hi3798cv200.dtsi | 4 ++-- arch/arm64/boot/dts/hisilicon/hip06.dtsi | 4 ++-- arch/arm64/boot/dts/hisilicon/hip07.dtsi | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/arch/arm64/boot/dts/hisilicon/hi3798cv200.dtsi b/arch/arm64/boot/dts/hisilicon/hi3798cv200.dtsi index 12bc1d3ed424..a4acecb75c89 100644 --- a/arch/arm64/boot/dts/hisilicon/hi3798cv200.dtsi +++ b/arch/arm64/boot/dts/hisilicon/hi3798cv200.dtsi @@ -585,7 +585,7 @@ pcie: pcie@9860000 { status = "disabled"; }; - ohci: ohci@9880000 { + ohci: usb@9880000 { compatible = "generic-ohci"; reg = <0x9880000 0x10000>; interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; @@ -600,7 +600,7 @@ ohci: ohci@9880000 { status = "disabled"; }; - ehci: ehci@9890000 { + ehci: usb@9890000 { compatible = "generic-ehci"; reg = <0x9890000 0x10000>; interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>; diff --git a/arch/arm64/boot/dts/hisilicon/hip06.dtsi b/arch/arm64/boot/dts/hisilicon/hip06.dtsi index 50ceaa959bdc..1226440d54ad 100644 --- a/arch/arm64/boot/dts/hisilicon/hip06.dtsi +++ b/arch/arm64/boot/dts/hisilicon/hip06.dtsi @@ -373,7 +373,7 @@ refclk: refclk { #clock-cells = <0>; }; - usb_ohci: ohci@a7030000 { + usb_ohci: usb@a7030000 { compatible = "generic-ohci"; reg = <0x0 0xa7030000 0x0 0x10000>; interrupt-parent = <&mbigen_usb>; @@ -382,7 +382,7 @@ usb_ohci: ohci@a7030000 { status = "disabled"; }; - usb_ehci: ehci@a7020000 { + usb_ehci: usb@a7020000 { compatible = "generic-ehci"; reg = <0x0 0xa7020000 0x0 0x10000>; interrupt-parent = <&mbigen_usb>; diff --git a/arch/arm64/boot/dts/hisilicon/hip07.dtsi b/arch/arm64/boot/dts/hisilicon/hip07.dtsi index 4773a533fce5..93f99a5255ac 100644 --- a/arch/arm64/boot/dts/hisilicon/hip07.dtsi +++ b/arch/arm64/boot/dts/hisilicon/hip07.dtsi @@ -1253,7 +1253,7 @@ uart0: uart@602b0000 { status = "disabled"; }; - usb_ohci: ohci@a7030000 { + usb_ohci: usb@a7030000 { compatible = "generic-ohci"; reg = <0x0 0xa7030000 0x0 0x10000>; interrupt-parent = <&mbigen_usb>; @@ -1262,7 +1262,7 @@ usb_ohci: ohci@a7030000 { status = "disabled"; }; - usb_ehci: ehci@a7020000 { + usb_ehci: usb@a7020000 { compatible = "generic-ehci"; reg = <0x0 0xa7020000 0x0 0x10000>; interrupt-parent = <&mbigen_usb>; -- 2.28.0
In accordance with the Generic EHCI/OHCI bindings the corresponding node name is suppose to comply with the Generic USB HCD DT schema, which requires the USB nodes to have the name acceptable by the regexp: "^usb(@.*)?" . Make sure the "generic-ehci" and "generic-ohci"-compatible nodes are correctly named. Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> Acked-by: Paul Cercueil <paul@crapouillou.net> Acked-by: Krzysztof Kozlowski <krzk@kernel.org> --- arch/mips/boot/dts/ingenic/jz4740.dtsi | 2 +- arch/mips/boot/dts/ingenic/jz4770.dtsi | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/mips/boot/dts/ingenic/jz4740.dtsi b/arch/mips/boot/dts/ingenic/jz4740.dtsi index 1520585c235c..b989ff62ffbc 100644 --- a/arch/mips/boot/dts/ingenic/jz4740.dtsi +++ b/arch/mips/boot/dts/ingenic/jz4740.dtsi @@ -281,7 +281,7 @@ dmac: dma-controller@13020000 { clocks = <&cgu JZ4740_CLK_DMA>; }; - uhc: uhc@13030000 { + uhc: usb@13030000 { compatible = "ingenic,jz4740-ohci", "generic-ohci"; reg = <0x13030000 0x1000>; diff --git a/arch/mips/boot/dts/ingenic/jz4770.dtsi b/arch/mips/boot/dts/ingenic/jz4770.dtsi index fa11ac950499..e45c03038826 100644 --- a/arch/mips/boot/dts/ingenic/jz4770.dtsi +++ b/arch/mips/boot/dts/ingenic/jz4770.dtsi @@ -417,7 +417,7 @@ dmac1: dma-controller@13420100 { interrupts = <23>; }; - uhc: uhc@13430000 { + uhc: usb@13430000 { compatible = "generic-ohci"; reg = <0x13430000 0x1000>; -- 2.28.0
In accordance with the Generic EHCI/OHCI bindings the corresponding node name is suppose to comply with the Generic USB HCD DT schema, which requires the USB nodes to have the name acceptable by the regexp: "^usb(@.*)?" . Make sure the "generic-ehci" and "generic-ohci"-compatible nodes are correctly named. Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> Acked-by: Krzysztof Kozlowski <krzk@kernel.org> --- arch/mips/boot/dts/mti/sead3.dts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/mips/boot/dts/mti/sead3.dts b/arch/mips/boot/dts/mti/sead3.dts index 192c26ff1d3d..1cf6728af8fe 100644 --- a/arch/mips/boot/dts/mti/sead3.dts +++ b/arch/mips/boot/dts/mti/sead3.dts @@ -56,7 +56,7 @@ gic: interrupt-controller@1b1c0000 { interrupt-parent = <&cpu_intc>; }; - ehci@1b200000 { + usb@1b200000 { compatible = "generic-ehci"; reg = <0x1b200000 0x1000>; -- 2.28.0
In accordance with the Generic EHCI/OHCI bindings the corresponding node name is suppose to comply with the Generic USB HCD DT schema, which requires the USB nodes to have the name acceptable by the regexp: "^usb(@.*)?" . Make sure the "generic-ehci" and "generic-ohci"-compatible nodes are correctly named. Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> Acked-by: Krzysztof Kozlowski <krzk@kernel.org> --- arch/mips/boot/dts/ralink/mt7628a.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/mips/boot/dts/ralink/mt7628a.dtsi b/arch/mips/boot/dts/ralink/mt7628a.dtsi index 892e8ab863c5..45bf96a3d17a 100644 --- a/arch/mips/boot/dts/ralink/mt7628a.dtsi +++ b/arch/mips/boot/dts/ralink/mt7628a.dtsi @@ -275,7 +275,7 @@ usb_phy: usb-phy@10120000 { reset-names = "host", "device"; }; - ehci@101c0000 { + usb@101c0000 { compatible = "generic-ehci"; reg = <0x101c0000 0x1000>; -- 2.28.0
In accordance with the Generic EHCI/OHCI bindings the corresponding node name is suppose to comply with the Generic USB HCD DT schema, which requires the USB nodes to have the name acceptable by the regexp: "^usb(@.*)?" . Make sure the "generic-ehci" and "generic-ohci"-compatible nodes are correctly named. Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> Acked-by: Krzysztof Kozlowski <krzk@kernel.org> --- arch/powerpc/boot/dts/akebono.dts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/arch/powerpc/boot/dts/akebono.dts b/arch/powerpc/boot/dts/akebono.dts index df18f8dc4642..343326c30380 100644 --- a/arch/powerpc/boot/dts/akebono.dts +++ b/arch/powerpc/boot/dts/akebono.dts @@ -126,7 +126,7 @@ SATA0: sata@30000010000 { interrupts = <93 2>; }; - EHCI0: ehci@30010000000 { + EHCI0: usb@30010000000 { compatible = "ibm,476gtr-ehci", "generic-ehci"; reg = <0x300 0x10000000 0x0 0x10000>; interrupt-parent = <&MPIC>; @@ -140,14 +140,14 @@ SD0: sd@30000000000 { interrupt-parent = <&MPIC>; }; - OHCI0: ohci@30010010000 { + OHCI0: usb@30010010000 { compatible = "ibm,476gtr-ohci", "generic-ohci"; reg = <0x300 0x10010000 0x0 0x10000>; interrupt-parent = <&MPIC>; interrupts = <89 1>; }; - OHCI1: ohci@30010020000 { + OHCI1: usb@30010020000 { compatible = "ibm,476gtr-ohci", "generic-ohci"; reg = <0x300 0x10020000 0x0 0x10000>; interrupt-parent = <&MPIC>; -- 2.28.0
In accordance with the Generic xHCI bindings the corresponding node name is suppose to comply with the Generic USB HCD DT schema, which requires the USB nodes to have the name acceptable by the regexp: "^usb(@.*)?" . Make sure the "generic-xhci"-compatible nodes are correctly named. Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> Acked-by: Krzysztof Kozlowski <krzk@kernel.org> --- arch/arm64/boot/dts/marvell/armada-cp11x.dtsi | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm64/boot/dts/marvell/armada-cp11x.dtsi b/arch/arm64/boot/dts/marvell/armada-cp11x.dtsi index 9dcf16beabf5..1e37ae181acf 100644 --- a/arch/arm64/boot/dts/marvell/armada-cp11x.dtsi +++ b/arch/arm64/boot/dts/marvell/armada-cp11x.dtsi @@ -275,7 +275,7 @@ CP11X_LABEL(thermal): thermal-sensor@70 { }; }; - CP11X_LABEL(usb3_0): usb3@500000 { + CP11X_LABEL(usb3_0): usb@500000 { compatible = "marvell,armada-8k-xhci", "generic-xhci"; reg = <0x500000 0x4000>; @@ -287,7 +287,7 @@ CP11X_LABEL(usb3_0): usb3@500000 { status = "disabled"; }; - CP11X_LABEL(usb3_1): usb3@510000 { + CP11X_LABEL(usb3_1): usb@510000 { compatible = "marvell,armada-8k-xhci", "generic-xhci"; reg = <0x510000 0x4000>; -- 2.28.0
In accordance with the DWC USB3 bindings the corresponding node name is suppose to comply with the Generic USB HCD DT schema, which requires the USB nodes to have the name acceptable by the regexp: "^usb(@.*)?" . Make sure the "snps,dwc3"-compatible nodes are correctly named. Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> Acked-by: Krzysztof Kozlowski <krzk@kernel.org> --- arch/arm/boot/dts/armada-375.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/boot/dts/armada-375.dtsi b/arch/arm/boot/dts/armada-375.dtsi index 9805e507c695..7f2f24a29e6c 100644 --- a/arch/arm/boot/dts/armada-375.dtsi +++ b/arch/arm/boot/dts/armada-375.dtsi @@ -426,7 +426,7 @@ usb1: usb@54000 { status = "disabled"; }; - usb2: usb3@58000 { + usb2: usb@58000 { compatible = "marvell,armada-375-xhci"; reg = <0x58000 0x20000>,<0x5b880 0x80>; interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>; -- 2.28.0
In accordance with the DWC USB3 bindings the corresponding node name is suppose to comply with the Generic USB HCD DT schema, which requires the USB nodes to have the name acceptable by the regexp: "^usb(@.*)?" . Make sure the "snps,dwc3"-compatible nodes are correctly named. Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> Acked-by: Krzysztof Kozlowski <krzk@kernel.org> --- arch/arm/boot/dts/keystone-k2e.dtsi | 4 ++-- arch/arm/boot/dts/keystone.dtsi | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/arch/arm/boot/dts/keystone-k2e.dtsi b/arch/arm/boot/dts/keystone-k2e.dtsi index fa1b8499c5a7..b8f152e7af7f 100644 --- a/arch/arm/boot/dts/keystone-k2e.dtsi +++ b/arch/arm/boot/dts/keystone-k2e.dtsi @@ -52,7 +52,7 @@ &soc0 { usb: usb@2680000 { interrupts = <GIC_SPI 152 IRQ_TYPE_EDGE_RISING>; - dwc3@2690000 { + usb@2690000 { interrupts = <GIC_SPI 152 IRQ_TYPE_EDGE_RISING>; }; }; @@ -78,7 +78,7 @@ keystone_usb1: usb@25000000 { dma-ranges; status = "disabled"; - usb1: dwc3@25010000 { + usb1: usb@25010000 { compatible = "snps,dwc3"; reg = <0x25010000 0x70000>; interrupts = <GIC_SPI 414 IRQ_TYPE_EDGE_RISING>; diff --git a/arch/arm/boot/dts/keystone.dtsi b/arch/arm/boot/dts/keystone.dtsi index 8d046a1b690c..fc9fdc857ae8 100644 --- a/arch/arm/boot/dts/keystone.dtsi +++ b/arch/arm/boot/dts/keystone.dtsi @@ -217,7 +217,7 @@ keystone_usb0: usb@2680000 { dma-ranges; status = "disabled"; - usb0: dwc3@2690000 { + usb0: usb@2690000 { compatible = "snps,dwc3"; reg = <0x2690000 0x70000>; interrupts = <GIC_SPI 393 IRQ_TYPE_EDGE_RISING>; -- 2.28.0
In accordance with the DWC USB3 bindings the corresponding node name is suppose to comply with the Generic USB HCD DT schema, which requires the USB nodes to have the name acceptable by the regexp: "^usb(@.*)?" . Make sure the "snps,dwc3"-compatible nodes are correctly named. Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> Acked-by: Krzysztof Kozlowski <krzk@kernel.org> --- arch/arm/boot/dts/stih407-family.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/boot/dts/stih407-family.dtsi b/arch/arm/boot/dts/stih407-family.dtsi index 23a1746f3baa..2352f76b5a69 100644 --- a/arch/arm/boot/dts/stih407-family.dtsi +++ b/arch/arm/boot/dts/stih407-family.dtsi @@ -681,7 +681,7 @@ st_dwc3: dwc3@8f94000 { status = "disabled"; - dwc3: dwc3@9900000 { + dwc3: usb@9900000 { compatible = "snps,dwc3"; reg = <0x09900000 0x100000>; interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>; -- 2.28.0
In accordance with the DWC USB3 bindings the corresponding node name is suppose to comply with the Generic USB HCD DT schema, which requires the USB nodes to have the name acceptable by the regexp: "^usb(@.*)?" . Make sure the "snps,dwc3"-compatible nodes are correctly named despite of the warning comment about possible backward compatibility issues. Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> Acked-by: Krzysztof Kozlowski <krzk@kernel.org> --- arch/arm64/boot/dts/apm/apm-shadowcat.dtsi | 4 ++-- arch/arm64/boot/dts/apm/apm-storm.dtsi | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/arch/arm64/boot/dts/apm/apm-shadowcat.dtsi b/arch/arm64/boot/dts/apm/apm-shadowcat.dtsi index 3feb1881bbc2..a0a194b8db7a 100644 --- a/arch/arm64/boot/dts/apm/apm-shadowcat.dtsi +++ b/arch/arm64/boot/dts/apm/apm-shadowcat.dtsi @@ -597,8 +597,8 @@ serial0: serial@10600000 { interrupts = <0x0 0x4c 0x4>; }; - /* Do not change dwusb name, coded for backward compatibility */ - usb0: dwusb@19000000 { + /* Node-name might need to be coded as dwusb for backward compatibility */ + usb0: usb@19000000 { status = "disabled"; compatible = "snps,dwc3"; reg = <0x0 0x19000000 0x0 0x100000>; diff --git a/arch/arm64/boot/dts/apm/apm-storm.dtsi b/arch/arm64/boot/dts/apm/apm-storm.dtsi index 8c802d87e751..f5083b3b9579 100644 --- a/arch/arm64/boot/dts/apm/apm-storm.dtsi +++ b/arch/arm64/boot/dts/apm/apm-storm.dtsi @@ -923,8 +923,8 @@ sata3: sata@1a800000 { phy-names = "sata-phy"; }; - /* Do not change dwusb name, coded for backward compatibility */ - usb0: dwusb@19000000 { + /* Node-name might need to be coded as dwusb for backward compatibility */ + usb0: usb@19000000 { status = "disabled"; compatible = "snps,dwc3"; reg = <0x0 0x19000000 0x0 0x100000>; @@ -933,7 +933,7 @@ usb0: dwusb@19000000 { dr_mode = "host"; }; - usb1: dwusb@19800000 { + usb1: usb@19800000 { status = "disabled"; compatible = "snps,dwc3"; reg = <0x0 0x19800000 0x0 0x100000>; -- 2.28.0
In accordance with the DWC USB3 bindings the corresponding node name is suppose to comply with the Generic USB HCD DT schema, which requires the USB nodes to have the name acceptable by the regexp: "^usb(@.*)?" . Make sure the "snps,dwc3"-compatible nodes are correctly named. Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> Acked-by: Krzysztof Kozlowski <krzk@kernel.org> --- arch/arm64/boot/dts/hisilicon/hi3660.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm64/boot/dts/hisilicon/hi3660.dtsi b/arch/arm64/boot/dts/hisilicon/hi3660.dtsi index d25aac5e0bf8..aea3800029b5 100644 --- a/arch/arm64/boot/dts/hisilicon/hi3660.dtsi +++ b/arch/arm64/boot/dts/hisilicon/hi3660.dtsi @@ -1166,7 +1166,7 @@ usb_phy: usb-phy { }; }; - dwc3: dwc3@ff100000 { + dwc3: usb@ff100000 { compatible = "snps,dwc3"; reg = <0x0 0xff100000 0x0 0x100000>; -- 2.28.0
In accordance with the USB HCD/DRD schema all the USB controllers are supposed to have DT-nodes named with prefix "^usb(@.*)?". Since the existing DT-nodes will be renamed in a subsequent patch let's first make sure the DWC3 Qualcomm driver supports them and second falls back to the deprecated naming so not to fail on the legacy DTS-files passed to the newer kernels. Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> --- drivers/usb/dwc3/dwc3-qcom.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/usb/dwc3/dwc3-qcom.c b/drivers/usb/dwc3/dwc3-qcom.c index e1e78e9824b1..661263e62f21 100644 --- a/drivers/usb/dwc3/dwc3-qcom.c +++ b/drivers/usb/dwc3/dwc3-qcom.c @@ -519,7 +519,8 @@ static int dwc3_qcom_of_register_core(struct platform_device *pdev) struct device *dev = &pdev->dev; int ret; - dwc3_np = of_get_child_by_name(np, "dwc3"); + dwc3_np = of_get_child_by_name(np, "usb") ?: + of_get_child_by_name(np, "dwc3"); if (!dwc3_np) { dev_err(dev, "failed to find dwc3 core child\n"); return -ENODEV; -- 2.28.0
In accordance with the DWC USB3 bindings the corresponding node name is suppose to comply with the Generic USB HCD DT schema, which requires the USB nodes to have the name acceptable by the regexp: "^usb(@.*)?" . Make sure the "snps,dwc3"-compatible nodes are correctly named. Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> Acked-by: Krzysztof Kozlowski <krzk@kernel.org> --- arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi | 4 ++-- arch/arm64/boot/dts/qcom/ipq8074.dtsi | 4 ++-- arch/arm64/boot/dts/qcom/msm8996.dtsi | 4 ++-- arch/arm64/boot/dts/qcom/msm8998.dtsi | 2 +- arch/arm64/boot/dts/qcom/qcs404-evb.dtsi | 2 +- arch/arm64/boot/dts/qcom/qcs404.dtsi | 4 ++-- arch/arm64/boot/dts/qcom/sc7180.dtsi | 2 +- arch/arm64/boot/dts/qcom/sdm845.dtsi | 4 ++-- arch/arm64/boot/dts/qcom/sm8150.dtsi | 2 +- 9 files changed, 14 insertions(+), 14 deletions(-) diff --git a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi b/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi index defcbd15edf9..34e97da98270 100644 --- a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi +++ b/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi @@ -1064,7 +1064,7 @@ &usb2 { status = "okay"; extcon = <&usb2_id>; - dwc3@7600000 { + usb@7600000 { extcon = <&usb2_id>; dr_mode = "otg"; maximum-speed = "high-speed"; @@ -1075,7 +1075,7 @@ &usb3 { status = "okay"; extcon = <&usb3_id>; - dwc3@6a00000 { + usb@6a00000 { extcon = <&usb3_id>; dr_mode = "otg"; }; diff --git a/arch/arm64/boot/dts/qcom/ipq8074.dtsi b/arch/arm64/boot/dts/qcom/ipq8074.dtsi index 96a5ec89b5f0..1129062a4ca1 100644 --- a/arch/arm64/boot/dts/qcom/ipq8074.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq8074.dtsi @@ -427,7 +427,7 @@ usb_0: usb@8af8800 { resets = <&gcc GCC_USB0_BCR>; status = "disabled"; - dwc_0: dwc3@8a00000 { + dwc_0: usb@8a00000 { compatible = "snps,dwc3"; reg = <0x8a00000 0xcd00>; interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>; @@ -468,7 +468,7 @@ usb_1: usb@8cf8800 { resets = <&gcc GCC_USB1_BCR>; status = "disabled"; - dwc_1: dwc3@8c00000 { + dwc_1: usb@8c00000 { compatible = "snps,dwc3"; reg = <0x8c00000 0xcd00>; interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; diff --git a/arch/arm64/boot/dts/qcom/msm8996.dtsi b/arch/arm64/boot/dts/qcom/msm8996.dtsi index 9951286db775..66b6d2f0a093 100644 --- a/arch/arm64/boot/dts/qcom/msm8996.dtsi +++ b/arch/arm64/boot/dts/qcom/msm8996.dtsi @@ -1767,7 +1767,7 @@ usb3: usb@6af8800 { power-domains = <&gcc USB30_GDSC>; status = "disabled"; - dwc3@6a00000 { + usb@6a00000 { compatible = "snps,dwc3"; reg = <0x06a00000 0xcc00>; interrupts = <0 131 IRQ_TYPE_LEVEL_HIGH>; @@ -1978,7 +1978,7 @@ usb2: usb@76f8800 { power-domains = <&gcc USB30_GDSC>; status = "disabled"; - dwc3@7600000 { + usb@7600000 { compatible = "snps,dwc3"; reg = <0x07600000 0xcc00>; interrupts = <0 138 IRQ_TYPE_LEVEL_HIGH>; diff --git a/arch/arm64/boot/dts/qcom/msm8998.dtsi b/arch/arm64/boot/dts/qcom/msm8998.dtsi index c45870600909..7cc7897e7b83 100644 --- a/arch/arm64/boot/dts/qcom/msm8998.dtsi +++ b/arch/arm64/boot/dts/qcom/msm8998.dtsi @@ -1678,7 +1678,7 @@ usb3: usb@a8f8800 { resets = <&gcc GCC_USB_30_BCR>; - usb3_dwc3: dwc3@a800000 { + usb3_dwc3: usb@a800000 { compatible = "snps,dwc3"; reg = <0x0a800000 0xcd00>; interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>; diff --git a/arch/arm64/boot/dts/qcom/qcs404-evb.dtsi b/arch/arm64/boot/dts/qcom/qcs404-evb.dtsi index 6422cf9d5855..88d7b7a53743 100644 --- a/arch/arm64/boot/dts/qcom/qcs404-evb.dtsi +++ b/arch/arm64/boot/dts/qcom/qcs404-evb.dtsi @@ -337,7 +337,7 @@ &usb2_phy_sec { &usb3 { status = "okay"; - dwc3@7580000 { + usb@7580000 { dr_mode = "host"; }; }; diff --git a/arch/arm64/boot/dts/qcom/qcs404.dtsi b/arch/arm64/boot/dts/qcom/qcs404.dtsi index b654b802e95c..f6ef17553064 100644 --- a/arch/arm64/boot/dts/qcom/qcs404.dtsi +++ b/arch/arm64/boot/dts/qcom/qcs404.dtsi @@ -544,7 +544,7 @@ usb3: usb@7678800 { assigned-clock-rates = <19200000>, <200000000>; status = "disabled"; - dwc3@7580000 { + usb@7580000 { compatible = "snps,dwc3"; reg = <0x07580000 0xcd00>; interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; @@ -573,7 +573,7 @@ usb2: usb@79b8800 { assigned-clock-rates = <19200000>, <133333333>; status = "disabled"; - dwc3@78c0000 { + usb@78c0000 { compatible = "snps,dwc3"; reg = <0x078c0000 0xcc00>; interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>; diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi index d46b3833e52f..bbc9a2b5c570 100644 --- a/arch/arm64/boot/dts/qcom/sc7180.dtsi +++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi @@ -2673,7 +2673,7 @@ usb_1: usb@a6f8800 { <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_USB3>; interconnect-names = "usb-ddr", "apps-usb"; - usb_1_dwc3: dwc3@a600000 { + usb_1_dwc3: usb@a600000 { compatible = "snps,dwc3"; reg = <0 0x0a600000 0 0xe000>; interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>; diff --git a/arch/arm64/boot/dts/qcom/sdm845.dtsi b/arch/arm64/boot/dts/qcom/sdm845.dtsi index 2884577dcb77..ca20e4e91f61 100644 --- a/arch/arm64/boot/dts/qcom/sdm845.dtsi +++ b/arch/arm64/boot/dts/qcom/sdm845.dtsi @@ -3573,7 +3573,7 @@ usb_1: usb@a6f8800 { <&gladiator_noc MASTER_APPSS_PROC &config_noc SLAVE_USB3_0>; interconnect-names = "usb-ddr", "apps-usb"; - usb_1_dwc3: dwc3@a600000 { + usb_1_dwc3: usb@a600000 { compatible = "snps,dwc3"; reg = <0 0x0a600000 0 0xcd00>; interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>; @@ -3621,7 +3621,7 @@ usb_2: usb@a8f8800 { <&gladiator_noc MASTER_APPSS_PROC &config_noc SLAVE_USB3_1>; interconnect-names = "usb-ddr", "apps-usb"; - usb_2_dwc3: dwc3@a800000 { + usb_2_dwc3: usb@a800000 { compatible = "snps,dwc3"; reg = <0 0x0a800000 0 0xcd00>; interrupts = <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>; diff --git a/arch/arm64/boot/dts/qcom/sm8150.dtsi b/arch/arm64/boot/dts/qcom/sm8150.dtsi index b86a7ead3006..167d14dda974 100644 --- a/arch/arm64/boot/dts/qcom/sm8150.dtsi +++ b/arch/arm64/boot/dts/qcom/sm8150.dtsi @@ -846,7 +846,7 @@ usb_1: usb@a6f8800 { resets = <&gcc GCC_USB30_PRIM_BCR>; - usb_1_dwc3: dwc3@a600000 { + usb_1_dwc3: usb@a600000 { compatible = "snps,dwc3"; reg = <0 0x0a600000 0 0xcd00>; interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>; -- 2.28.0
On Wed 11 Nov 03:15 CST 2020, Serge Semin wrote: > In accordance with the USB HCD/DRD schema all the USB controllers are > supposed to have DT-nodes named with prefix "^usb(@.*)?". Since the > existing DT-nodes will be renamed in a subsequent patch let's first make > sure the DWC3 Qualcomm driver supports them and second falls back to the > deprecated naming so not to fail on the legacy DTS-files passed to the > newer kernels. > > Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org> Regards, Bjorn > --- > drivers/usb/dwc3/dwc3-qcom.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/usb/dwc3/dwc3-qcom.c b/drivers/usb/dwc3/dwc3-qcom.c > index e1e78e9824b1..661263e62f21 100644 > --- a/drivers/usb/dwc3/dwc3-qcom.c > +++ b/drivers/usb/dwc3/dwc3-qcom.c > @@ -519,7 +519,8 @@ static int dwc3_qcom_of_register_core(struct platform_device *pdev) > struct device *dev = &pdev->dev; > int ret; > > - dwc3_np = of_get_child_by_name(np, "dwc3"); > + dwc3_np = of_get_child_by_name(np, "usb") ?: > + of_get_child_by_name(np, "dwc3"); > if (!dwc3_np) { > dev_err(dev, "failed to find dwc3 core child\n"); > return -ENODEV; > -- > 2.28.0 >
On Wed 11 Nov 03:15 CST 2020, Serge Semin wrote: > In accordance with the DWC USB3 bindings the corresponding node > name is suppose to comply with the Generic USB HCD DT schema, which > requires the USB nodes to have the name acceptable by the regexp: > "^usb(@.*)?" . Make sure the "snps,dwc3"-compatible nodes are correctly > named. > > Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> > Acked-by: Krzysztof Kozlowski <krzk@kernel.org> Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org> Given the risk of merge conflicts with this patch I would prefer to take it through the qcom dts tree. Please let me know when patch 17 has been merged (or if you prefer that I take it through the same path). Regards, Bjorn > --- > arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi | 4 ++-- > arch/arm64/boot/dts/qcom/ipq8074.dtsi | 4 ++-- > arch/arm64/boot/dts/qcom/msm8996.dtsi | 4 ++-- > arch/arm64/boot/dts/qcom/msm8998.dtsi | 2 +- > arch/arm64/boot/dts/qcom/qcs404-evb.dtsi | 2 +- > arch/arm64/boot/dts/qcom/qcs404.dtsi | 4 ++-- > arch/arm64/boot/dts/qcom/sc7180.dtsi | 2 +- > arch/arm64/boot/dts/qcom/sdm845.dtsi | 4 ++-- > arch/arm64/boot/dts/qcom/sm8150.dtsi | 2 +- > 9 files changed, 14 insertions(+), 14 deletions(-) > > diff --git a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi b/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi > index defcbd15edf9..34e97da98270 100644 > --- a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi > +++ b/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi > @@ -1064,7 +1064,7 @@ &usb2 { > status = "okay"; > extcon = <&usb2_id>; > > - dwc3@7600000 { > + usb@7600000 { > extcon = <&usb2_id>; > dr_mode = "otg"; > maximum-speed = "high-speed"; > @@ -1075,7 +1075,7 @@ &usb3 { > status = "okay"; > extcon = <&usb3_id>; > > - dwc3@6a00000 { > + usb@6a00000 { > extcon = <&usb3_id>; > dr_mode = "otg"; > }; > diff --git a/arch/arm64/boot/dts/qcom/ipq8074.dtsi b/arch/arm64/boot/dts/qcom/ipq8074.dtsi > index 96a5ec89b5f0..1129062a4ca1 100644 > --- a/arch/arm64/boot/dts/qcom/ipq8074.dtsi > +++ b/arch/arm64/boot/dts/qcom/ipq8074.dtsi > @@ -427,7 +427,7 @@ usb_0: usb@8af8800 { > resets = <&gcc GCC_USB0_BCR>; > status = "disabled"; > > - dwc_0: dwc3@8a00000 { > + dwc_0: usb@8a00000 { > compatible = "snps,dwc3"; > reg = <0x8a00000 0xcd00>; > interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>; > @@ -468,7 +468,7 @@ usb_1: usb@8cf8800 { > resets = <&gcc GCC_USB1_BCR>; > status = "disabled"; > > - dwc_1: dwc3@8c00000 { > + dwc_1: usb@8c00000 { > compatible = "snps,dwc3"; > reg = <0x8c00000 0xcd00>; > interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; > diff --git a/arch/arm64/boot/dts/qcom/msm8996.dtsi b/arch/arm64/boot/dts/qcom/msm8996.dtsi > index 9951286db775..66b6d2f0a093 100644 > --- a/arch/arm64/boot/dts/qcom/msm8996.dtsi > +++ b/arch/arm64/boot/dts/qcom/msm8996.dtsi > @@ -1767,7 +1767,7 @@ usb3: usb@6af8800 { > power-domains = <&gcc USB30_GDSC>; > status = "disabled"; > > - dwc3@6a00000 { > + usb@6a00000 { > compatible = "snps,dwc3"; > reg = <0x06a00000 0xcc00>; > interrupts = <0 131 IRQ_TYPE_LEVEL_HIGH>; > @@ -1978,7 +1978,7 @@ usb2: usb@76f8800 { > power-domains = <&gcc USB30_GDSC>; > status = "disabled"; > > - dwc3@7600000 { > + usb@7600000 { > compatible = "snps,dwc3"; > reg = <0x07600000 0xcc00>; > interrupts = <0 138 IRQ_TYPE_LEVEL_HIGH>; > diff --git a/arch/arm64/boot/dts/qcom/msm8998.dtsi b/arch/arm64/boot/dts/qcom/msm8998.dtsi > index c45870600909..7cc7897e7b83 100644 > --- a/arch/arm64/boot/dts/qcom/msm8998.dtsi > +++ b/arch/arm64/boot/dts/qcom/msm8998.dtsi > @@ -1678,7 +1678,7 @@ usb3: usb@a8f8800 { > > resets = <&gcc GCC_USB_30_BCR>; > > - usb3_dwc3: dwc3@a800000 { > + usb3_dwc3: usb@a800000 { > compatible = "snps,dwc3"; > reg = <0x0a800000 0xcd00>; > interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>; > diff --git a/arch/arm64/boot/dts/qcom/qcs404-evb.dtsi b/arch/arm64/boot/dts/qcom/qcs404-evb.dtsi > index 6422cf9d5855..88d7b7a53743 100644 > --- a/arch/arm64/boot/dts/qcom/qcs404-evb.dtsi > +++ b/arch/arm64/boot/dts/qcom/qcs404-evb.dtsi > @@ -337,7 +337,7 @@ &usb2_phy_sec { > &usb3 { > status = "okay"; > > - dwc3@7580000 { > + usb@7580000 { > dr_mode = "host"; > }; > }; > diff --git a/arch/arm64/boot/dts/qcom/qcs404.dtsi b/arch/arm64/boot/dts/qcom/qcs404.dtsi > index b654b802e95c..f6ef17553064 100644 > --- a/arch/arm64/boot/dts/qcom/qcs404.dtsi > +++ b/arch/arm64/boot/dts/qcom/qcs404.dtsi > @@ -544,7 +544,7 @@ usb3: usb@7678800 { > assigned-clock-rates = <19200000>, <200000000>; > status = "disabled"; > > - dwc3@7580000 { > + usb@7580000 { > compatible = "snps,dwc3"; > reg = <0x07580000 0xcd00>; > interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; > @@ -573,7 +573,7 @@ usb2: usb@79b8800 { > assigned-clock-rates = <19200000>, <133333333>; > status = "disabled"; > > - dwc3@78c0000 { > + usb@78c0000 { > compatible = "snps,dwc3"; > reg = <0x078c0000 0xcc00>; > interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>; > diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi > index d46b3833e52f..bbc9a2b5c570 100644 > --- a/arch/arm64/boot/dts/qcom/sc7180.dtsi > +++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi > @@ -2673,7 +2673,7 @@ usb_1: usb@a6f8800 { > <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_USB3>; > interconnect-names = "usb-ddr", "apps-usb"; > > - usb_1_dwc3: dwc3@a600000 { > + usb_1_dwc3: usb@a600000 { > compatible = "snps,dwc3"; > reg = <0 0x0a600000 0 0xe000>; > interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>; > diff --git a/arch/arm64/boot/dts/qcom/sdm845.dtsi b/arch/arm64/boot/dts/qcom/sdm845.dtsi > index 2884577dcb77..ca20e4e91f61 100644 > --- a/arch/arm64/boot/dts/qcom/sdm845.dtsi > +++ b/arch/arm64/boot/dts/qcom/sdm845.dtsi > @@ -3573,7 +3573,7 @@ usb_1: usb@a6f8800 { > <&gladiator_noc MASTER_APPSS_PROC &config_noc SLAVE_USB3_0>; > interconnect-names = "usb-ddr", "apps-usb"; > > - usb_1_dwc3: dwc3@a600000 { > + usb_1_dwc3: usb@a600000 { > compatible = "snps,dwc3"; > reg = <0 0x0a600000 0 0xcd00>; > interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>; > @@ -3621,7 +3621,7 @@ usb_2: usb@a8f8800 { > <&gladiator_noc MASTER_APPSS_PROC &config_noc SLAVE_USB3_1>; > interconnect-names = "usb-ddr", "apps-usb"; > > - usb_2_dwc3: dwc3@a800000 { > + usb_2_dwc3: usb@a800000 { > compatible = "snps,dwc3"; > reg = <0 0x0a800000 0 0xcd00>; > interrupts = <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>; > diff --git a/arch/arm64/boot/dts/qcom/sm8150.dtsi b/arch/arm64/boot/dts/qcom/sm8150.dtsi > index b86a7ead3006..167d14dda974 100644 > --- a/arch/arm64/boot/dts/qcom/sm8150.dtsi > +++ b/arch/arm64/boot/dts/qcom/sm8150.dtsi > @@ -846,7 +846,7 @@ usb_1: usb@a6f8800 { > > resets = <&gcc GCC_USB30_PRIM_BCR>; > > - usb_1_dwc3: dwc3@a600000 { > + usb_1_dwc3: usb@a600000 { > compatible = "snps,dwc3"; > reg = <0 0x0a600000 0 0xcd00>; > interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>; > -- > 2.28.0 >
Hello Bjorn On Wed, Nov 11, 2020 at 10:08:44AM -0600, Bjorn Andersson wrote: > On Wed 11 Nov 03:15 CST 2020, Serge Semin wrote: > > > In accordance with the DWC USB3 bindings the corresponding node > > name is suppose to comply with the Generic USB HCD DT schema, which > > requires the USB nodes to have the name acceptable by the regexp: > > "^usb(@.*)?" . Make sure the "snps,dwc3"-compatible nodes are correctly > > named. > > > > Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> > > Acked-by: Krzysztof Kozlowski <krzk@kernel.org> > > Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org> > > Given the risk of merge conflicts with this patch I would prefer to take > it through the qcom dts tree. Please let me know when patch 17 has been > merged (or if you prefer that I take it through the same path). I don't really know through what path the patch was supposed to find its way into the kernel. Since I haven't got a public repo then for me a preferred solution would be to merge this patch and the other by means of the qcom tree. Thanks -Sergey > > Regards, > Bjorn > > > --- > > arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi | 4 ++-- > > arch/arm64/boot/dts/qcom/ipq8074.dtsi | 4 ++-- > > arch/arm64/boot/dts/qcom/msm8996.dtsi | 4 ++-- > > arch/arm64/boot/dts/qcom/msm8998.dtsi | 2 +- > > arch/arm64/boot/dts/qcom/qcs404-evb.dtsi | 2 +- > > arch/arm64/boot/dts/qcom/qcs404.dtsi | 4 ++-- > > arch/arm64/boot/dts/qcom/sc7180.dtsi | 2 +- > > arch/arm64/boot/dts/qcom/sdm845.dtsi | 4 ++-- > > arch/arm64/boot/dts/qcom/sm8150.dtsi | 2 +- > > 9 files changed, 14 insertions(+), 14 deletions(-) > > > > diff --git a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi b/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi > > index defcbd15edf9..34e97da98270 100644 > > --- a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi > > +++ b/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi > > @@ -1064,7 +1064,7 @@ &usb2 { > > status = "okay"; > > extcon = <&usb2_id>; > > > > - dwc3@7600000 { > > + usb@7600000 { > > extcon = <&usb2_id>; > > dr_mode = "otg"; > > maximum-speed = "high-speed"; > > @@ -1075,7 +1075,7 @@ &usb3 { > > status = "okay"; > > extcon = <&usb3_id>; > > > > - dwc3@6a00000 { > > + usb@6a00000 { > > extcon = <&usb3_id>; > > dr_mode = "otg"; > > }; > > diff --git a/arch/arm64/boot/dts/qcom/ipq8074.dtsi b/arch/arm64/boot/dts/qcom/ipq8074.dtsi > > index 96a5ec89b5f0..1129062a4ca1 100644 > > --- a/arch/arm64/boot/dts/qcom/ipq8074.dtsi > > +++ b/arch/arm64/boot/dts/qcom/ipq8074.dtsi > > @@ -427,7 +427,7 @@ usb_0: usb@8af8800 { > > resets = <&gcc GCC_USB0_BCR>; > > status = "disabled"; > > > > - dwc_0: dwc3@8a00000 { > > + dwc_0: usb@8a00000 { > > compatible = "snps,dwc3"; > > reg = <0x8a00000 0xcd00>; > > interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>; > > @@ -468,7 +468,7 @@ usb_1: usb@8cf8800 { > > resets = <&gcc GCC_USB1_BCR>; > > status = "disabled"; > > > > - dwc_1: dwc3@8c00000 { > > + dwc_1: usb@8c00000 { > > compatible = "snps,dwc3"; > > reg = <0x8c00000 0xcd00>; > > interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; > > diff --git a/arch/arm64/boot/dts/qcom/msm8996.dtsi b/arch/arm64/boot/dts/qcom/msm8996.dtsi > > index 9951286db775..66b6d2f0a093 100644 > > --- a/arch/arm64/boot/dts/qcom/msm8996.dtsi > > +++ b/arch/arm64/boot/dts/qcom/msm8996.dtsi > > @@ -1767,7 +1767,7 @@ usb3: usb@6af8800 { > > power-domains = <&gcc USB30_GDSC>; > > status = "disabled"; > > > > - dwc3@6a00000 { > > + usb@6a00000 { > > compatible = "snps,dwc3"; > > reg = <0x06a00000 0xcc00>; > > interrupts = <0 131 IRQ_TYPE_LEVEL_HIGH>; > > @@ -1978,7 +1978,7 @@ usb2: usb@76f8800 { > > power-domains = <&gcc USB30_GDSC>; > > status = "disabled"; > > > > - dwc3@7600000 { > > + usb@7600000 { > > compatible = "snps,dwc3"; > > reg = <0x07600000 0xcc00>; > > interrupts = <0 138 IRQ_TYPE_LEVEL_HIGH>; > > diff --git a/arch/arm64/boot/dts/qcom/msm8998.dtsi b/arch/arm64/boot/dts/qcom/msm8998.dtsi > > index c45870600909..7cc7897e7b83 100644 > > --- a/arch/arm64/boot/dts/qcom/msm8998.dtsi > > +++ b/arch/arm64/boot/dts/qcom/msm8998.dtsi > > @@ -1678,7 +1678,7 @@ usb3: usb@a8f8800 { > > > > resets = <&gcc GCC_USB_30_BCR>; > > > > - usb3_dwc3: dwc3@a800000 { > > + usb3_dwc3: usb@a800000 { > > compatible = "snps,dwc3"; > > reg = <0x0a800000 0xcd00>; > > interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>; > > diff --git a/arch/arm64/boot/dts/qcom/qcs404-evb.dtsi b/arch/arm64/boot/dts/qcom/qcs404-evb.dtsi > > index 6422cf9d5855..88d7b7a53743 100644 > > --- a/arch/arm64/boot/dts/qcom/qcs404-evb.dtsi > > +++ b/arch/arm64/boot/dts/qcom/qcs404-evb.dtsi > > @@ -337,7 +337,7 @@ &usb2_phy_sec { > > &usb3 { > > status = "okay"; > > > > - dwc3@7580000 { > > + usb@7580000 { > > dr_mode = "host"; > > }; > > }; > > diff --git a/arch/arm64/boot/dts/qcom/qcs404.dtsi b/arch/arm64/boot/dts/qcom/qcs404.dtsi > > index b654b802e95c..f6ef17553064 100644 > > --- a/arch/arm64/boot/dts/qcom/qcs404.dtsi > > +++ b/arch/arm64/boot/dts/qcom/qcs404.dtsi > > @@ -544,7 +544,7 @@ usb3: usb@7678800 { > > assigned-clock-rates = <19200000>, <200000000>; > > status = "disabled"; > > > > - dwc3@7580000 { > > + usb@7580000 { > > compatible = "snps,dwc3"; > > reg = <0x07580000 0xcd00>; > > interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; > > @@ -573,7 +573,7 @@ usb2: usb@79b8800 { > > assigned-clock-rates = <19200000>, <133333333>; > > status = "disabled"; > > > > - dwc3@78c0000 { > > + usb@78c0000 { > > compatible = "snps,dwc3"; > > reg = <0x078c0000 0xcc00>; > > interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>; > > diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi > > index d46b3833e52f..bbc9a2b5c570 100644 > > --- a/arch/arm64/boot/dts/qcom/sc7180.dtsi > > +++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi > > @@ -2673,7 +2673,7 @@ usb_1: usb@a6f8800 { > > <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_USB3>; > > interconnect-names = "usb-ddr", "apps-usb"; > > > > - usb_1_dwc3: dwc3@a600000 { > > + usb_1_dwc3: usb@a600000 { > > compatible = "snps,dwc3"; > > reg = <0 0x0a600000 0 0xe000>; > > interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>; > > diff --git a/arch/arm64/boot/dts/qcom/sdm845.dtsi b/arch/arm64/boot/dts/qcom/sdm845.dtsi > > index 2884577dcb77..ca20e4e91f61 100644 > > --- a/arch/arm64/boot/dts/qcom/sdm845.dtsi > > +++ b/arch/arm64/boot/dts/qcom/sdm845.dtsi > > @@ -3573,7 +3573,7 @@ usb_1: usb@a6f8800 { > > <&gladiator_noc MASTER_APPSS_PROC &config_noc SLAVE_USB3_0>; > > interconnect-names = "usb-ddr", "apps-usb"; > > > > - usb_1_dwc3: dwc3@a600000 { > > + usb_1_dwc3: usb@a600000 { > > compatible = "snps,dwc3"; > > reg = <0 0x0a600000 0 0xcd00>; > > interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>; > > @@ -3621,7 +3621,7 @@ usb_2: usb@a8f8800 { > > <&gladiator_noc MASTER_APPSS_PROC &config_noc SLAVE_USB3_1>; > > interconnect-names = "usb-ddr", "apps-usb"; > > > > - usb_2_dwc3: dwc3@a800000 { > > + usb_2_dwc3: usb@a800000 { > > compatible = "snps,dwc3"; > > reg = <0 0x0a800000 0 0xcd00>; > > interrupts = <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>; > > diff --git a/arch/arm64/boot/dts/qcom/sm8150.dtsi b/arch/arm64/boot/dts/qcom/sm8150.dtsi > > index b86a7ead3006..167d14dda974 100644 > > --- a/arch/arm64/boot/dts/qcom/sm8150.dtsi > > +++ b/arch/arm64/boot/dts/qcom/sm8150.dtsi > > @@ -846,7 +846,7 @@ usb_1: usb@a6f8800 { > > > > resets = <&gcc GCC_USB30_PRIM_BCR>; > > > > - usb_1_dwc3: dwc3@a600000 { > > + usb_1_dwc3: usb@a600000 { > > compatible = "snps,dwc3"; > > reg = <0 0x0a600000 0 0xcd00>; > > interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>; > > -- > > 2.28.0 > >
On Wed, Nov 11, 2020 at 12:15:41PM +0300, Serge Semin wrote:
> In accordance with the Generic EHCI/OHCI bindings the corresponding node
> name is suppose to comply with the Generic USB HCD DT schema, which
> requires the USB nodes to have the name acceptable by the regexp:
> "^usb(@.*)?" . Make sure the "generic-ehci" and "generic-ohci"-compatible
> nodes are correctly named.
>
> Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
> Acked-by: Paul Cercueil <paul@crapouillou.net>
> Acked-by: Krzysztof Kozlowski <krzk@kernel.org>
> ---
> arch/mips/boot/dts/ingenic/jz4740.dtsi | 2 +-
> arch/mips/boot/dts/ingenic/jz4770.dtsi | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
applied to mips-next.
Thomas.
--
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea. [ RFC1925, 2.3 ]
On Wed, Nov 11, 2020 at 12:15:42PM +0300, Serge Semin wrote:
> In accordance with the Generic EHCI/OHCI bindings the corresponding node
> name is suppose to comply with the Generic USB HCD DT schema, which
> requires the USB nodes to have the name acceptable by the regexp:
> "^usb(@.*)?" . Make sure the "generic-ehci" and "generic-ohci"-compatible
> nodes are correctly named.
>
> Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
> Acked-by: Krzysztof Kozlowski <krzk@kernel.org>
> ---
> arch/mips/boot/dts/mti/sead3.dts | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
applied to mips-next.
Thomas.
--
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea. [ RFC1925, 2.3 ]
On Wed, Nov 11, 2020 at 12:15:43PM +0300, Serge Semin wrote:
> In accordance with the Generic EHCI/OHCI bindings the corresponding node
> name is suppose to comply with the Generic USB HCD DT schema, which
> requires the USB nodes to have the name acceptable by the regexp:
> "^usb(@.*)?" . Make sure the "generic-ehci" and "generic-ohci"-compatible
> nodes are correctly named.
>
> Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
> Acked-by: Krzysztof Kozlowski <krzk@kernel.org>
> ---
> arch/mips/boot/dts/ralink/mt7628a.dtsi | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
applied to mips-next.
Thomas.
--
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea. [ RFC1925, 2.3 ]
Hi Serge,
On 2020/11/11 17:15, Serge Semin wrote:
> In accordance with the DWC USB3 bindings the corresponding node
> name is suppose to comply with the Generic USB HCD DT schema, which
> requires the USB nodes to have the name acceptable by the regexp:
> "^usb(@.*)?" . Make sure the "snps,dwc3"-compatible nodes are correctly
> named.
>
> Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
> Acked-by: Krzysztof Kozlowski <krzk@kernel.org>
> ---
> arch/arm64/boot/dts/hisilicon/hi3660.dtsi | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/arm64/boot/dts/hisilicon/hi3660.dtsi b/arch/arm64/boot/dts/hisilicon/hi3660.dtsi
> index d25aac5e0bf8..aea3800029b5 100644
> --- a/arch/arm64/boot/dts/hisilicon/hi3660.dtsi
> +++ b/arch/arm64/boot/dts/hisilicon/hi3660.dtsi
> @@ -1166,7 +1166,7 @@ usb_phy: usb-phy {
> };
> };
>
> - dwc3: dwc3@ff100000 {
> + dwc3: usb@ff100000 {
> compatible = "snps,dwc3";
> reg = <0x0 0xff100000 0x0 0x100000>;
>
>
Thanks!
Applied to the hisilicon arm64 dt tree.
Best Regards,
Wei
Hi Serge, On 2020/11/11 17:15, Serge Semin wrote: > In accordance with the Generic EHCI/OHCI bindings the corresponding node > name is suppose to comply with the Generic USB HCD DT schema, which > requires the USB nodes to have the name acceptable by the regexp: > "^usb(@.*)?" . Make sure the "generic-ehci" and "generic-ohci"-compatible > nodes are correctly named. > > Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> > Acked-by: Krzysztof Kozlowski <krzk@kernel.org> > --- > arch/arm64/boot/dts/hisilicon/hi3798cv200.dtsi | 4 ++-- > arch/arm64/boot/dts/hisilicon/hip06.dtsi | 4 ++-- > arch/arm64/boot/dts/hisilicon/hip07.dtsi | 4 ++-- > 3 files changed, 6 insertions(+), 6 deletions(-) > > diff --git a/arch/arm64/boot/dts/hisilicon/hi3798cv200.dtsi b/arch/arm64/boot/dts/hisilicon/hi3798cv200.dtsi > index 12bc1d3ed424..a4acecb75c89 100644 > --- a/arch/arm64/boot/dts/hisilicon/hi3798cv200.dtsi > +++ b/arch/arm64/boot/dts/hisilicon/hi3798cv200.dtsi > @@ -585,7 +585,7 @@ pcie: pcie@9860000 { > status = "disabled"; > }; > > - ohci: ohci@9880000 { > + ohci: usb@9880000 { > compatible = "generic-ohci"; > reg = <0x9880000 0x10000>; > interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; > @@ -600,7 +600,7 @@ ohci: ohci@9880000 { > status = "disabled"; > }; > > - ehci: ehci@9890000 { > + ehci: usb@9890000 { > compatible = "generic-ehci"; > reg = <0x9890000 0x10000>; > interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>; > diff --git a/arch/arm64/boot/dts/hisilicon/hip06.dtsi b/arch/arm64/boot/dts/hisilicon/hip06.dtsi > index 50ceaa959bdc..1226440d54ad 100644 > --- a/arch/arm64/boot/dts/hisilicon/hip06.dtsi > +++ b/arch/arm64/boot/dts/hisilicon/hip06.dtsi > @@ -373,7 +373,7 @@ refclk: refclk { > #clock-cells = <0>; > }; > > - usb_ohci: ohci@a7030000 { > + usb_ohci: usb@a7030000 { > compatible = "generic-ohci"; > reg = <0x0 0xa7030000 0x0 0x10000>; > interrupt-parent = <&mbigen_usb>; > @@ -382,7 +382,7 @@ usb_ohci: ohci@a7030000 { > status = "disabled"; > }; > > - usb_ehci: ehci@a7020000 { > + usb_ehci: usb@a7020000 { > compatible = "generic-ehci"; > reg = <0x0 0xa7020000 0x0 0x10000>; > interrupt-parent = <&mbigen_usb>; > diff --git a/arch/arm64/boot/dts/hisilicon/hip07.dtsi b/arch/arm64/boot/dts/hisilicon/hip07.dtsi > index 4773a533fce5..93f99a5255ac 100644 > --- a/arch/arm64/boot/dts/hisilicon/hip07.dtsi > +++ b/arch/arm64/boot/dts/hisilicon/hip07.dtsi > @@ -1253,7 +1253,7 @@ uart0: uart@602b0000 { > status = "disabled"; > }; > > - usb_ohci: ohci@a7030000 { > + usb_ohci: usb@a7030000 { > compatible = "generic-ohci"; > reg = <0x0 0xa7030000 0x0 0x10000>; > interrupt-parent = <&mbigen_usb>; > @@ -1262,7 +1262,7 @@ usb_ohci: ohci@a7030000 { > status = "disabled"; > }; > > - usb_ehci: ehci@a7020000 { > + usb_ehci: usb@a7020000 { > compatible = "generic-ehci"; > reg = <0x0 0xa7020000 0x0 0x10000>; > interrupt-parent = <&mbigen_usb>; > Thanks! But a similar patch has been sent out earlier: https://patchwork.kernel.org/project/linux-arm-kernel/patch/20201012131739.1655-8-thunder.leizhen@huawei.com/ Best Regards, Wei
Hi Serge, On 2020/11/11 17:15, Serge Semin wrote: > In accordance with the Generic EHCI/OHCI bindings the corresponding node > name is suppose to comply with the Generic USB HCD DT schema, which > requires the USB nodes to have the name acceptable by the regexp: > "^usb(@.*)?" . Make sure the "generic-ehci" and "generic-ohci"-compatible > nodes are correctly named. > > Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> > Acked-by: Krzysztof Kozlowski <krzk@kernel.org> > --- > arch/arm/boot/dts/hisi-x5hd2.dtsi | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/arch/arm/boot/dts/hisi-x5hd2.dtsi b/arch/arm/boot/dts/hisi-x5hd2.dtsi > index 3ee7967c202d..693b85b2cc7d 100644 > --- a/arch/arm/boot/dts/hisi-x5hd2.dtsi > +++ b/arch/arm/boot/dts/hisi-x5hd2.dtsi > @@ -452,14 +452,14 @@ gmac1: ethernet@1841000 { > status = "disabled"; > }; > > - usb0: ehci@1890000 { > + usb0: usb@1890000 { > compatible = "generic-ehci"; > reg = <0x1890000 0x1000>; > interrupts = <0 66 4>; > clocks = <&clock HIX5HD2_USB_CLK>; > }; > > - usb1: ohci@1880000 { > + usb1: usb@1880000 { > compatible = "generic-ohci"; > reg = <0x1880000 0x1000>; > interrupts = <0 67 4>; > Thanks! But a similar patch has been sent out earlier: https://patchwork.kernel.org/project/linux-arm-kernel/patch/20201012061225.1597-4-thunder.leizhen@huawei.com/ Best Regards, Wei
Hi, > In accordance with the DWC USB3 bindings the corresponding node > name is suppose to comply with the Generic USB HCD DT schema, which > requires the USB nodes to have the name acceptable by the regexp: > "^usb(@.*)?" . Make sure the "snps,dwc3"-compatible nodes are correctly > named. > > Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> > Acked-by: Krzysztof Kozlowski <krzk@kernel.org> Applied on mvebu/dt Thanks, Gregory > --- > arch/arm/boot/dts/armada-375.dtsi | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/arm/boot/dts/armada-375.dtsi b/arch/arm/boot/dts/armada-375.dtsi > index 9805e507c695..7f2f24a29e6c 100644 > --- a/arch/arm/boot/dts/armada-375.dtsi > +++ b/arch/arm/boot/dts/armada-375.dtsi > @@ -426,7 +426,7 @@ usb1: usb@54000 { > status = "disabled"; > }; > > - usb2: usb3@58000 { > + usb2: usb@58000 { > compatible = "marvell,armada-375-xhci"; > reg = <0x58000 0x20000>,<0x5b880 0x80>; > interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>; > -- > 2.28.0 > -- Gregory Clement, Bootlin Embedded Linux and Kernel engineering http://bootlin.com
Hi, > In accordance with the Generic xHCI bindings the corresponding node > name is suppose to comply with the Generic USB HCD DT schema, which > requires the USB nodes to have the name acceptable by the regexp: > "^usb(@.*)?" . Make sure the "generic-xhci"-compatible nodes are > correctly named. > > Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> > Acked-by: Krzysztof Kozlowski <krzk@kernel.org> Applied on mvebu/dt64 Thanks, Gregory > --- > arch/arm64/boot/dts/marvell/armada-cp11x.dtsi | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/arch/arm64/boot/dts/marvell/armada-cp11x.dtsi b/arch/arm64/boot/dts/marvell/armada-cp11x.dtsi > index 9dcf16beabf5..1e37ae181acf 100644 > --- a/arch/arm64/boot/dts/marvell/armada-cp11x.dtsi > +++ b/arch/arm64/boot/dts/marvell/armada-cp11x.dtsi > @@ -275,7 +275,7 @@ CP11X_LABEL(thermal): thermal-sensor@70 { > }; > }; > > - CP11X_LABEL(usb3_0): usb3@500000 { > + CP11X_LABEL(usb3_0): usb@500000 { > compatible = "marvell,armada-8k-xhci", > "generic-xhci"; > reg = <0x500000 0x4000>; > @@ -287,7 +287,7 @@ CP11X_LABEL(usb3_0): usb3@500000 { > status = "disabled"; > }; > > - CP11X_LABEL(usb3_1): usb3@510000 { > + CP11X_LABEL(usb3_1): usb@510000 { > compatible = "marvell,armada-8k-xhci", > "generic-xhci"; > reg = <0x510000 0x4000>; > -- > 2.28.0 > -- Gregory Clement, Bootlin Embedded Linux and Kernel engineering http://bootlin.com
On Wed, Nov 11, 2020 at 1:22 AM Serge Semin
<Sergey.Semin@baikalelectronics.ru> wrote:
>
> In accordance with the DWC USB3 bindings the corresponding node
> name is suppose to comply with the Generic USB HCD DT schema, which
> requires the USB nodes to have the name acceptable by the regexp:
> "^usb(@.*)?" . Make sure the "snps,dwc3"-compatible nodes are correctly
> named.
>
> Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
> Acked-by: Krzysztof Kozlowski <krzk@kernel.org>
> ---
> arch/arm64/boot/dts/hisilicon/hi3660.dtsi | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/arm64/boot/dts/hisilicon/hi3660.dtsi b/arch/arm64/boot/dts/hisilicon/hi3660.dtsi
> index d25aac5e0bf8..aea3800029b5 100644
> --- a/arch/arm64/boot/dts/hisilicon/hi3660.dtsi
> +++ b/arch/arm64/boot/dts/hisilicon/hi3660.dtsi
> @@ -1166,7 +1166,7 @@ usb_phy: usb-phy {
> };
> };
>
> - dwc3: dwc3@ff100000 {
> + dwc3: usb@ff100000 {
> compatible = "snps,dwc3";
> reg = <0x0 0xff100000 0x0 0x100000>;
Oof. So this patch is breaking the usb gadget functionality on HiKey960 w/ AOSP.
In order to choose the right controller for gadget mode with AOSP, one
sets the "sys.usb.controller" property, which until now for HiKey960
has been "ff100000.dwc3".
After this patch, the controller isn't found and we would have to
change userland to use "ff100000.usb", which would then break booting
on older kernels (testing various LTS releases on AOSP is one of the
key uses of the HiKey960).
So while I understand the desire to unify the schema, as HiKey960
really isn't likely to be used outside of AOSP, I wonder if reverting
this one change is in the best interest of not breaking existing
userland?
thanks
-john
On Fri, Dec 18, 2020 at 09:11:42PM -0800, John Stultz wrote:
> On Wed, Nov 11, 2020 at 1:22 AM Serge Semin
> <Sergey.Semin@baikalelectronics.ru> wrote:
> >
> > In accordance with the DWC USB3 bindings the corresponding node
> > name is suppose to comply with the Generic USB HCD DT schema, which
> > requires the USB nodes to have the name acceptable by the regexp:
> > "^usb(@.*)?" . Make sure the "snps,dwc3"-compatible nodes are correctly
> > named.
> >
> > Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
> > Acked-by: Krzysztof Kozlowski <krzk@kernel.org>
> > ---
> > arch/arm64/boot/dts/hisilicon/hi3660.dtsi | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/arch/arm64/boot/dts/hisilicon/hi3660.dtsi b/arch/arm64/boot/dts/hisilicon/hi3660.dtsi
> > index d25aac5e0bf8..aea3800029b5 100644
> > --- a/arch/arm64/boot/dts/hisilicon/hi3660.dtsi
> > +++ b/arch/arm64/boot/dts/hisilicon/hi3660.dtsi
> > @@ -1166,7 +1166,7 @@ usb_phy: usb-phy {
> > };
> > };
> >
> > - dwc3: dwc3@ff100000 {
> > + dwc3: usb@ff100000 {
> > compatible = "snps,dwc3";
> > reg = <0x0 0xff100000 0x0 0x100000>;
>
>
> Oof. So this patch is breaking the usb gadget functionality on HiKey960 w/ AOSP.
>
> In order to choose the right controller for gadget mode with AOSP, one
> sets the "sys.usb.controller" property, which until now for HiKey960
> has been "ff100000.dwc3".
> After this patch, the controller isn't found and we would have to
> change userland to use "ff100000.usb", which would then break booting
> on older kernels (testing various LTS releases on AOSP is one of the
> key uses of the HiKey960).
>
> So while I understand the desire to unify the schema, as HiKey960
> really isn't likely to be used outside of AOSP, I wonder if reverting
> this one change is in the best interest of not breaking existing
> userland?
The node names are not part of an ABI, are they? I expect only
compatibles and properties to be stable. If user-space looks for
something by name, it's a user-space's mistake. Not mentioning that you
also look for specific address... Imagine remapping of addresses with
ranges (for whatever reason) - AOSP also would be broken? Addresses are
definitely not an ABI.
Best regards,
Krzysztof
On Sat, Dec 19, 2020 at 3:06 AM Krzysztof Kozlowski <krzk@kernel.org> wrote:
> On Fri, Dec 18, 2020 at 09:11:42PM -0800, John Stultz wrote:
> > On Wed, Nov 11, 2020 at 1:22 AM Serge Semin
> > <Sergey.Semin@baikalelectronics.ru> wrote:
> > >
> > > In accordance with the DWC USB3 bindings the corresponding node
> > > name is suppose to comply with the Generic USB HCD DT schema, which
> > > requires the USB nodes to have the name acceptable by the regexp:
> > > "^usb(@.*)?" . Make sure the "snps,dwc3"-compatible nodes are correctly
> > > named.
> > >
> > > Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
> > > Acked-by: Krzysztof Kozlowski <krzk@kernel.org>
> > > ---
> > > arch/arm64/boot/dts/hisilicon/hi3660.dtsi | 2 +-
> > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/arch/arm64/boot/dts/hisilicon/hi3660.dtsi b/arch/arm64/boot/dts/hisilicon/hi3660.dtsi
> > > index d25aac5e0bf8..aea3800029b5 100644
> > > --- a/arch/arm64/boot/dts/hisilicon/hi3660.dtsi
> > > +++ b/arch/arm64/boot/dts/hisilicon/hi3660.dtsi
> > > @@ -1166,7 +1166,7 @@ usb_phy: usb-phy {
> > > };
> > > };
> > >
> > > - dwc3: dwc3@ff100000 {
> > > + dwc3: usb@ff100000 {
> > > compatible = "snps,dwc3";
> > > reg = <0x0 0xff100000 0x0 0x100000>;
> >
> >
> > Oof. So this patch is breaking the usb gadget functionality on HiKey960 w/ AOSP.
> >
> > In order to choose the right controller for gadget mode with AOSP, one
> > sets the "sys.usb.controller" property, which until now for HiKey960
> > has been "ff100000.dwc3".
> > After this patch, the controller isn't found and we would have to
> > change userland to use "ff100000.usb", which would then break booting
> > on older kernels (testing various LTS releases on AOSP is one of the
> > key uses of the HiKey960).
> >
> > So while I understand the desire to unify the schema, as HiKey960
> > really isn't likely to be used outside of AOSP, I wonder if reverting
> > this one change is in the best interest of not breaking existing
> > userland?
>
> The node names are not part of an ABI, are they? I expect only
> compatibles and properties to be stable. If user-space looks for
> something by name, it's a user-space's mistake. Not mentioning that you
> also look for specific address... Imagine remapping of addresses with
> ranges (for whatever reason) - AOSP also would be broken? Addresses are
> definitely not an ABI.
Though that is how it's exported through sysfs.
In AOSP it is then used to setup the configfs gadget by writing that
value into /config/usb_gadget/g1/UDC.
Given there may be multiple controllers on a device, or even if its
just one and the dummy hcd driver is enabled, I'm not sure how folks
reference the "right" one without the node name?
I understand the fuzziness with sysfs ABI, and I get that having
consistent naming is important, but like the eth0 -> enp3s0 changes,
it seems like this is going to break things.
Greg? Is there some better way AOSP should be doing this?
thanks
-john
On Mon, Dec 21, 2020 at 12:24:11PM -0800, John Stultz wrote: > On Sat, Dec 19, 2020 at 3:06 AM Krzysztof Kozlowski <krzk@kernel.org> wrote: > > On Fri, Dec 18, 2020 at 09:11:42PM -0800, John Stultz wrote: > > > On Wed, Nov 11, 2020 at 1:22 AM Serge Semin > > > <Sergey.Semin@baikalelectronics.ru> wrote: > > > > > > > > In accordance with the DWC USB3 bindings the corresponding node > > > > name is suppose to comply with the Generic USB HCD DT schema, which > > > > requires the USB nodes to have the name acceptable by the regexp: > > > > "^usb(@.*)?" . Make sure the "snps,dwc3"-compatible nodes are correctly > > > > named. > > > > > > > > Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> > > > > Acked-by: Krzysztof Kozlowski <krzk@kernel.org> > > > > --- > > > > arch/arm64/boot/dts/hisilicon/hi3660.dtsi | 2 +- > > > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > > > > > diff --git a/arch/arm64/boot/dts/hisilicon/hi3660.dtsi b/arch/arm64/boot/dts/hisilicon/hi3660.dtsi > > > > index d25aac5e0bf8..aea3800029b5 100644 > > > > --- a/arch/arm64/boot/dts/hisilicon/hi3660.dtsi > > > > +++ b/arch/arm64/boot/dts/hisilicon/hi3660.dtsi > > > > @@ -1166,7 +1166,7 @@ usb_phy: usb-phy { > > > > }; > > > > }; > > > > > > > > - dwc3: dwc3@ff100000 { > > > > + dwc3: usb@ff100000 { > > > > compatible = "snps,dwc3"; > > > > reg = <0x0 0xff100000 0x0 0x100000>; > > > > > > > > > Oof. So this patch is breaking the usb gadget functionality on HiKey960 w/ AOSP. > > > > > > In order to choose the right controller for gadget mode with AOSP, one > > > sets the "sys.usb.controller" property, which until now for HiKey960 > > > has been "ff100000.dwc3". > > > After this patch, the controller isn't found and we would have to > > > change userland to use "ff100000.usb", which would then break booting > > > on older kernels (testing various LTS releases on AOSP is one of the > > > key uses of the HiKey960). > > > > > > So while I understand the desire to unify the schema, as HiKey960 > > > really isn't likely to be used outside of AOSP, I wonder if reverting > > > this one change is in the best interest of not breaking existing > > > userland? > > > > The node names are not part of an ABI, are they? I expect only > > compatibles and properties to be stable. If user-space looks for > > something by name, it's a user-space's mistake. Not mentioning that you > > also look for specific address... Imagine remapping of addresses with > > ranges (for whatever reason) - AOSP also would be broken? Addresses are > > definitely not an ABI. > > Though that is how it's exported through sysfs. The ABI is the format of sysfs file for example in /sys/devices. However the ABI is not the exact address or node name of each device. > In AOSP it is then used to setup the configfs gadget by writing that > value into /config/usb_gadget/g1/UDC. > > Given there may be multiple controllers on a device, or even if its > just one and the dummy hcd driver is enabled, I'm not sure how folks > reference the "right" one without the node name? I think it is the same type of problem as for all other subsystems, e.g. mmc, hwmon/iio. They usually solve it either with aliases or with special property with the name/label. > I understand the fuzziness with sysfs ABI, and I get that having > consistent naming is important, but like the eth0 -> enp3s0 changes, > it seems like this is going to break things. One could argue whether interface name is or is not ABI. But please tell me how the address of a device in one's representation (for example DT) is a part of a stable interface? > Greg? Is there some better way AOSP should be doing this? If you need to find specific device, maybe go through the given bus and check compatibles? Best regards, Krzysztof