diff mbox series

[U-Boot,1/2] rk3399: Restore broken USB3 DTS description.

Message ID 20190507084914.47700-1-christoph.muellner@theobroma-systems.com
State Accepted
Delegated to: Kever Yang
Headers show
Series [U-Boot,1/2] rk3399: Restore broken USB3 DTS description. | expand

Commit Message

Christoph Muellner May 7, 2019, 8:49 a.m. UTC
This is a partial revert of commit 0a09f2f1173d
("rockchip: Adjust rk3399 device tree to be closer to linux").

Harmonizing the rk3399.dtsi with the one from Linux is a good idea.
However, this is only true if the information within that file can be
used by U-Boot. Before the named commit USB3 was working fine, after the
commit USB3 was broken on all RK3399 boards.

This commit reverts the USB3 changes to the original ones, which provide
the required information for the corresponding drivers in the U-Boot tree.

Signed-off-by: Christoph Muellner <christoph.muellner@theobroma-systems.com>
---

 arch/arm/dts/rk3399.dtsi | 88 ++++++++++++++++++------------------------------
 1 file changed, 32 insertions(+), 56 deletions(-)

Comments

Mark Kettenis May 7, 2019, 9:09 a.m. UTC | #1
> From: Christoph Muellner <christoph.muellner@theobroma-systems.com>
> Date: Tue,  7 May 2019 10:49:13 +0200
> 
> This is a partial revert of commit 0a09f2f1173d
> ("rockchip: Adjust rk3399 device tree to be closer to linux").
> 
> Harmonizing the rk3399.dtsi with the one from Linux is a good idea.
> However, this is only true if the information within that file can be
> used by U-Boot. Before the named commit USB3 was working fine, after the
> commit USB3 was broken on all RK3399 boards.
> 
> This commit reverts the USB3 changes to the original ones, which provide
> the required information for the corresponding drivers in the U-Boot tree.

Hi Christoph,

Can't this be fixed by adding "rockchip,rk3399-dwc3" to dwc3_glue_ids
list in drivers/usb/dwc3/dwc3-generic.c?

Cheers,

Mark

> Signed-off-by: Christoph Muellner <christoph.muellner@theobroma-systems.com>
> ---
> 
>  arch/arm/dts/rk3399.dtsi | 88 ++++++++++++++++++------------------------------
>  1 file changed, 32 insertions(+), 56 deletions(-)
> 
> diff --git a/arch/arm/dts/rk3399.dtsi b/arch/arm/dts/rk3399.dtsi
> index b53e41b4dc..823d459957 100644
> --- a/arch/arm/dts/rk3399.dtsi
> +++ b/arch/arm/dts/rk3399.dtsi
> @@ -349,69 +349,45 @@
>  		status = "disabled";
>  	};
>  
> -	usbdrd3_0: dwc3_typec0: usb@fe800000 {
> -		compatible = "rockchip,rk3399-dwc3";
> -		#address-cells = <2>;
> -		#size-cells = <2>;
> -		ranges;
> -		clocks = <&cru SCLK_USB3OTG0_REF>, <&cru SCLK_USB3OTG0_SUSPEND>,
> -			 <&cru ACLK_USB3OTG0>, <&cru ACLK_USB3_RKSOC_AXI_PERF>,
> -			 <&cru ACLK_USB3>, <&cru ACLK_USB3_GRF>;
> -		clock-names = "ref_clk", "suspend_clk",
> -			      "bus_clk", "aclk_usb3_rksoc_axi_perf",
> -			      "aclk_usb3", "grf_clk";
> -		resets = <&cru SRST_A_USB3_OTG0>;
> -		reset-names = "usb3-otg";
> +	dwc3_typec0: usb@fe800000 {
> +		compatible = "rockchip,rk3399-xhci";
> +		reg = <0x0 0xfe800000 0x0 0x100000>;
>  		status = "disabled";
> +		snps,dis-enblslpm-quirk;
> +		snps,phyif-utmi-bits = <16>;
> +		snps,dis-u2-freeclk-exists-quirk;
> +		snps,dis-u2-susphy-quirk;
>  
> -		usbdrd_dwc3_0: dwc3 {
> -			compatible = "snps,dwc3";
> -			reg = <0x0 0xfe800000 0x0 0x100000>;
> -			interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH 0>;
> -			dr_mode = "otg";
> -			phys = <&u2phy0_otg>, <&tcphy0_usb3>;
> -			phy-names = "usb2-phy", "usb3-phy";
> -			phy_type = "utmi_wide";
> -			snps,dis_enblslpm_quirk;
> -			snps,dis-u2-freeclk-exists-quirk;
> -			snps,dis_u2_susphy_quirk;
> -			snps,dis-del-phy-power-chg-quirk;
> -			snps,dis-tx-ipgap-linecheck-quirk;
> -			power-domains = <&power RK3399_PD_USB3>;
> -			status = "disabled";
> +		#address-cells = <2>;
> +		#size-cells = <2>;
> +		hub {
> +			compatible = "usb-hub";
> +			usb,device-class = <USB_CLASS_HUB>;
> +		};
> +		typec_phy0 {
> +			compatible = "rockchip,rk3399-usb3-phy";
> +			reg = <0x0 0xff7c0000 0x0 0x40000>;
>  		};
>  	};
>  
> -	dwc3_typec1: usbdrd3_1: usb@fe900000 {
> -		compatible = "rockchip,rk3399-dwc3";
> -		#address-cells = <2>;
> -		#size-cells = <2>;
> -		ranges;
> -		clocks = <&cru SCLK_USB3OTG1_REF>, <&cru SCLK_USB3OTG1_SUSPEND>,
> -			 <&cru ACLK_USB3OTG1>, <&cru ACLK_USB3_RKSOC_AXI_PERF>,
> -			 <&cru ACLK_USB3>, <&cru ACLK_USB3_GRF>;
> -		clock-names = "ref_clk", "suspend_clk",
> -			      "bus_clk", "aclk_usb3_rksoc_axi_perf",
> -			      "aclk_usb3", "grf_clk";
> -		resets = <&cru SRST_A_USB3_OTG1>;
> -		reset-names = "usb3-otg";
> +	dwc3_typec1: usb@fe900000 {
> +		compatible = "rockchip,rk3399-xhci";
> +		reg = <0x0 0xfe900000 0x0 0x100000>;
>  		status = "disabled";
> +		snps,dis-enblslpm-quirk;
> +		snps,phyif-utmi-bits = <16>;
> +		snps,dis-u2-freeclk-exists-quirk;
> +		snps,dis-u2-susphy-quirk;
>  
> -		usbdrd_dwc3_1: dwc3 {
> -			compatible = "snps,dwc3";
> -			reg = <0x0 0xfe900000 0x0 0x100000>;
> -			interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH 0>;
> -			dr_mode = "otg";
> -			phys = <&u2phy1_otg>, <&tcphy1_usb3>;
> -			phy-names = "usb2-phy", "usb3-phy";
> -			phy_type = "utmi_wide";
> -			snps,dis_enblslpm_quirk;
> -			snps,dis-u2-freeclk-exists-quirk;
> -			snps,dis_u2_susphy_quirk;
> -			snps,dis-del-phy-power-chg-quirk;
> -			snps,dis-tx-ipgap-linecheck-quirk;
> -			power-domains = <&power RK3399_PD_USB3>;
> -			status = "disabled";
> +		#address-cells = <2>;
> +		#size-cells = <2>;
> +		hub {
> +			compatible = "usb-hub";
> +			usb,device-class = <USB_CLASS_HUB>;
> +		};
> +		typec_phy1 {
> +			compatible = "rockchip,rk3399-usb3-phy";
> +			reg = <0x0 0xff800000 0x0 0x40000>;
>  		};
>  	};
>  
> -- 
> 2.11.0
> 
> _______________________________________________
> U-Boot mailing list
> U-Boot@lists.denx.de
> https://lists.denx.de/listinfo/u-boot
Kever Yang May 27, 2019, 6:46 a.m. UTC | #2
On 05/07/2019 04:49 PM, Christoph Muellner wrote:
> This is a partial revert of commit 0a09f2f1173d
> ("rockchip: Adjust rk3399 device tree to be closer to linux").
>
> Harmonizing the rk3399.dtsi with the one from Linux is a good idea.
> However, this is only true if the information within that file can be
> used by U-Boot. Before the named commit USB3 was working fine, after the
> commit USB3 was broken on all RK3399 boards.
>
> This commit reverts the USB3 changes to the original ones, which provide
> the required information for the corresponding drivers in the U-Boot tree.
>
> Signed-off-by: Christoph Muellner <christoph.muellner@theobroma-systems.com>
Yes, USB dts node is different from Linux now, and I thinks there are
patches
on the list are still working on sync with Linux, we have to make it
work first
before sync everything with Linux.

Reviewed-by: Kever Yang <kever.yang@rock-chips.com>

Thanks,
- Kever
> ---
>
>  arch/arm/dts/rk3399.dtsi | 88 ++++++++++++++++++------------------------------
>  1 file changed, 32 insertions(+), 56 deletions(-)
>
> diff --git a/arch/arm/dts/rk3399.dtsi b/arch/arm/dts/rk3399.dtsi
> index b53e41b4dc..823d459957 100644
> --- a/arch/arm/dts/rk3399.dtsi
> +++ b/arch/arm/dts/rk3399.dtsi
> @@ -349,69 +349,45 @@
>  		status = "disabled";
>  	};
>  
> -	usbdrd3_0: dwc3_typec0: usb@fe800000 {
> -		compatible = "rockchip,rk3399-dwc3";
> -		#address-cells = <2>;
> -		#size-cells = <2>;
> -		ranges;
> -		clocks = <&cru SCLK_USB3OTG0_REF>, <&cru SCLK_USB3OTG0_SUSPEND>,
> -			 <&cru ACLK_USB3OTG0>, <&cru ACLK_USB3_RKSOC_AXI_PERF>,
> -			 <&cru ACLK_USB3>, <&cru ACLK_USB3_GRF>;
> -		clock-names = "ref_clk", "suspend_clk",
> -			      "bus_clk", "aclk_usb3_rksoc_axi_perf",
> -			      "aclk_usb3", "grf_clk";
> -		resets = <&cru SRST_A_USB3_OTG0>;
> -		reset-names = "usb3-otg";
> +	dwc3_typec0: usb@fe800000 {
> +		compatible = "rockchip,rk3399-xhci";
> +		reg = <0x0 0xfe800000 0x0 0x100000>;
>  		status = "disabled";
> +		snps,dis-enblslpm-quirk;
> +		snps,phyif-utmi-bits = <16>;
> +		snps,dis-u2-freeclk-exists-quirk;
> +		snps,dis-u2-susphy-quirk;
>  
> -		usbdrd_dwc3_0: dwc3 {
> -			compatible = "snps,dwc3";
> -			reg = <0x0 0xfe800000 0x0 0x100000>;
> -			interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH 0>;
> -			dr_mode = "otg";
> -			phys = <&u2phy0_otg>, <&tcphy0_usb3>;
> -			phy-names = "usb2-phy", "usb3-phy";
> -			phy_type = "utmi_wide";
> -			snps,dis_enblslpm_quirk;
> -			snps,dis-u2-freeclk-exists-quirk;
> -			snps,dis_u2_susphy_quirk;
> -			snps,dis-del-phy-power-chg-quirk;
> -			snps,dis-tx-ipgap-linecheck-quirk;
> -			power-domains = <&power RK3399_PD_USB3>;
> -			status = "disabled";
> +		#address-cells = <2>;
> +		#size-cells = <2>;
> +		hub {
> +			compatible = "usb-hub";
> +			usb,device-class = <USB_CLASS_HUB>;
> +		};
> +		typec_phy0 {
> +			compatible = "rockchip,rk3399-usb3-phy";
> +			reg = <0x0 0xff7c0000 0x0 0x40000>;
>  		};
>  	};
>  
> -	dwc3_typec1: usbdrd3_1: usb@fe900000 {
> -		compatible = "rockchip,rk3399-dwc3";
> -		#address-cells = <2>;
> -		#size-cells = <2>;
> -		ranges;
> -		clocks = <&cru SCLK_USB3OTG1_REF>, <&cru SCLK_USB3OTG1_SUSPEND>,
> -			 <&cru ACLK_USB3OTG1>, <&cru ACLK_USB3_RKSOC_AXI_PERF>,
> -			 <&cru ACLK_USB3>, <&cru ACLK_USB3_GRF>;
> -		clock-names = "ref_clk", "suspend_clk",
> -			      "bus_clk", "aclk_usb3_rksoc_axi_perf",
> -			      "aclk_usb3", "grf_clk";
> -		resets = <&cru SRST_A_USB3_OTG1>;
> -		reset-names = "usb3-otg";
> +	dwc3_typec1: usb@fe900000 {
> +		compatible = "rockchip,rk3399-xhci";
> +		reg = <0x0 0xfe900000 0x0 0x100000>;
>  		status = "disabled";
> +		snps,dis-enblslpm-quirk;
> +		snps,phyif-utmi-bits = <16>;
> +		snps,dis-u2-freeclk-exists-quirk;
> +		snps,dis-u2-susphy-quirk;
>  
> -		usbdrd_dwc3_1: dwc3 {
> -			compatible = "snps,dwc3";
> -			reg = <0x0 0xfe900000 0x0 0x100000>;
> -			interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH 0>;
> -			dr_mode = "otg";
> -			phys = <&u2phy1_otg>, <&tcphy1_usb3>;
> -			phy-names = "usb2-phy", "usb3-phy";
> -			phy_type = "utmi_wide";
> -			snps,dis_enblslpm_quirk;
> -			snps,dis-u2-freeclk-exists-quirk;
> -			snps,dis_u2_susphy_quirk;
> -			snps,dis-del-phy-power-chg-quirk;
> -			snps,dis-tx-ipgap-linecheck-quirk;
> -			power-domains = <&power RK3399_PD_USB3>;
> -			status = "disabled";
> +		#address-cells = <2>;
> +		#size-cells = <2>;
> +		hub {
> +			compatible = "usb-hub";
> +			usb,device-class = <USB_CLASS_HUB>;
> +		};
> +		typec_phy1 {
> +			compatible = "rockchip,rk3399-usb3-phy";
> +			reg = <0x0 0xff800000 0x0 0x40000>;
>  		};
>  	};
>
Kever Yang July 26, 2019, 9:51 a.m. UTC | #3
Hi Chris,

Could you help to check if this patch still needed after patches from Mark:
c908d46f3a rockchip: xhci: Remove RK3399 support
062790f461 usb: xhci-dwc3: Add USB2 PHY configuration
aaa8d6b149 usb: dwc3-of-simple: Add support for RK3399

Thanks,
- Kever

Kever Yang <kever.yang@rock-chips.com> 于2019年5月27日周一 下午2:47写道:

>
>
> On 05/07/2019 04:49 PM, Christoph Muellner wrote:
> > This is a partial revert of commit 0a09f2f1173d
> > ("rockchip: Adjust rk3399 device tree to be closer to linux").
> >
> > Harmonizing the rk3399.dtsi with the one from Linux is a good idea.
> > However, this is only true if the information within that file can be
> > used by U-Boot. Before the named commit USB3 was working fine, after the
> > commit USB3 was broken on all RK3399 boards.
> >
> > This commit reverts the USB3 changes to the original ones, which provide
> > the required information for the corresponding drivers in the U-Boot
> tree.
> >
> > Signed-off-by: Christoph Muellner <
> christoph.muellner@theobroma-systems.com>
> Yes, USB dts node is different from Linux now, and I thinks there are
> patches
> on the list are still working on sync with Linux, we have to make it
> work first
> before sync everything with Linux.
>
> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
>
> Thanks,
> - Kever
> > ---
> >
> >  arch/arm/dts/rk3399.dtsi | 88
> ++++++++++++++++++------------------------------
> >  1 file changed, 32 insertions(+), 56 deletions(-)
> >
> > diff --git a/arch/arm/dts/rk3399.dtsi b/arch/arm/dts/rk3399.dtsi
> > index b53e41b4dc..823d459957 100644
> > --- a/arch/arm/dts/rk3399.dtsi
> > +++ b/arch/arm/dts/rk3399.dtsi
> > @@ -349,69 +349,45 @@
> >               status = "disabled";
> >       };
> >
> > -     usbdrd3_0: dwc3_typec0: usb@fe800000 {
> > -             compatible = "rockchip,rk3399-dwc3";
> > -             #address-cells = <2>;
> > -             #size-cells = <2>;
> > -             ranges;
> > -             clocks = <&cru SCLK_USB3OTG0_REF>, <&cru
> SCLK_USB3OTG0_SUSPEND>,
> > -                      <&cru ACLK_USB3OTG0>, <&cru
> ACLK_USB3_RKSOC_AXI_PERF>,
> > -                      <&cru ACLK_USB3>, <&cru ACLK_USB3_GRF>;
> > -             clock-names = "ref_clk", "suspend_clk",
> > -                           "bus_clk", "aclk_usb3_rksoc_axi_perf",
> > -                           "aclk_usb3", "grf_clk";
> > -             resets = <&cru SRST_A_USB3_OTG0>;
> > -             reset-names = "usb3-otg";
> > +     dwc3_typec0: usb@fe800000 {
> > +             compatible = "rockchip,rk3399-xhci";
> > +             reg = <0x0 0xfe800000 0x0 0x100000>;
> >               status = "disabled";
> > +             snps,dis-enblslpm-quirk;
> > +             snps,phyif-utmi-bits = <16>;
> > +             snps,dis-u2-freeclk-exists-quirk;
> > +             snps,dis-u2-susphy-quirk;
> >
> > -             usbdrd_dwc3_0: dwc3 {
> > -                     compatible = "snps,dwc3";
> > -                     reg = <0x0 0xfe800000 0x0 0x100000>;
> > -                     interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH 0>;
> > -                     dr_mode = "otg";
> > -                     phys = <&u2phy0_otg>, <&tcphy0_usb3>;
> > -                     phy-names = "usb2-phy", "usb3-phy";
> > -                     phy_type = "utmi_wide";
> > -                     snps,dis_enblslpm_quirk;
> > -                     snps,dis-u2-freeclk-exists-quirk;
> > -                     snps,dis_u2_susphy_quirk;
> > -                     snps,dis-del-phy-power-chg-quirk;
> > -                     snps,dis-tx-ipgap-linecheck-quirk;
> > -                     power-domains = <&power RK3399_PD_USB3>;
> > -                     status = "disabled";
> > +             #address-cells = <2>;
> > +             #size-cells = <2>;
> > +             hub {
> > +                     compatible = "usb-hub";
> > +                     usb,device-class = <USB_CLASS_HUB>;
> > +             };
> > +             typec_phy0 {
> > +                     compatible = "rockchip,rk3399-usb3-phy";
> > +                     reg = <0x0 0xff7c0000 0x0 0x40000>;
> >               };
> >       };
> >
> > -     dwc3_typec1: usbdrd3_1: usb@fe900000 {
> > -             compatible = "rockchip,rk3399-dwc3";
> > -             #address-cells = <2>;
> > -             #size-cells = <2>;
> > -             ranges;
> > -             clocks = <&cru SCLK_USB3OTG1_REF>, <&cru
> SCLK_USB3OTG1_SUSPEND>,
> > -                      <&cru ACLK_USB3OTG1>, <&cru
> ACLK_USB3_RKSOC_AXI_PERF>,
> > -                      <&cru ACLK_USB3>, <&cru ACLK_USB3_GRF>;
> > -             clock-names = "ref_clk", "suspend_clk",
> > -                           "bus_clk", "aclk_usb3_rksoc_axi_perf",
> > -                           "aclk_usb3", "grf_clk";
> > -             resets = <&cru SRST_A_USB3_OTG1>;
> > -             reset-names = "usb3-otg";
> > +     dwc3_typec1: usb@fe900000 {
> > +             compatible = "rockchip,rk3399-xhci";
> > +             reg = <0x0 0xfe900000 0x0 0x100000>;
> >               status = "disabled";
> > +             snps,dis-enblslpm-quirk;
> > +             snps,phyif-utmi-bits = <16>;
> > +             snps,dis-u2-freeclk-exists-quirk;
> > +             snps,dis-u2-susphy-quirk;
> >
> > -             usbdrd_dwc3_1: dwc3 {
> > -                     compatible = "snps,dwc3";
> > -                     reg = <0x0 0xfe900000 0x0 0x100000>;
> > -                     interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH 0>;
> > -                     dr_mode = "otg";
> > -                     phys = <&u2phy1_otg>, <&tcphy1_usb3>;
> > -                     phy-names = "usb2-phy", "usb3-phy";
> > -                     phy_type = "utmi_wide";
> > -                     snps,dis_enblslpm_quirk;
> > -                     snps,dis-u2-freeclk-exists-quirk;
> > -                     snps,dis_u2_susphy_quirk;
> > -                     snps,dis-del-phy-power-chg-quirk;
> > -                     snps,dis-tx-ipgap-linecheck-quirk;
> > -                     power-domains = <&power RK3399_PD_USB3>;
> > -                     status = "disabled";
> > +             #address-cells = <2>;
> > +             #size-cells = <2>;
> > +             hub {
> > +                     compatible = "usb-hub";
> > +                     usb,device-class = <USB_CLASS_HUB>;
> > +             };
> > +             typec_phy1 {
> > +                     compatible = "rockchip,rk3399-usb3-phy";
> > +                     reg = <0x0 0xff800000 0x0 0x40000>;
> >               };
> >       };
> >
>
>
>
> _______________________________________________
> U-Boot mailing list
> U-Boot@lists.denx.de
> https://lists.denx.de/listinfo/u-boot
>
Mark Kettenis July 26, 2019, 9:59 a.m. UTC | #4
> From: Kever Yang <kever.yang@rock-chips.com>
> Date: Fri, 26 Jul 2019 17:51:34 +0800
> 
> Hi Chris,
> 
> Could you help to check if this patch still needed after patches from Mark:
> c908d46f3a rockchip: xhci: Remove RK3399 support
> 062790f461 usb: xhci-dwc3: Add USB2 PHY configuration
> aaa8d6b149 usb: dwc3-of-simple: Add support for RK3399
> 
> Thanks,
> - Kever

Hi Kever,

This patch is no longer needed (and applying it now would break usb3
support).

Cheers,

Mark

> Kever Yang <kever.yang@rock-chips.com> 于2019年5月27日周一 下午2:47写道:
> 
> >
> >
> > On 05/07/2019 04:49 PM, Christoph Muellner wrote:
> > > This is a partial revert of commit 0a09f2f1173d
> > > ("rockchip: Adjust rk3399 device tree to be closer to linux").
> > >
> > > Harmonizing the rk3399.dtsi with the one from Linux is a good idea.
> > > However, this is only true if the information within that file can be
> > > used by U-Boot. Before the named commit USB3 was working fine, after the
> > > commit USB3 was broken on all RK3399 boards.
> > >
> > > This commit reverts the USB3 changes to the original ones, which provide
> > > the required information for the corresponding drivers in the U-Boot
> > tree.
> > >
> > > Signed-off-by: Christoph Muellner <
> > christoph.muellner@theobroma-systems.com>
> > Yes, USB dts node is different from Linux now, and I thinks there are
> > patches
> > on the list are still working on sync with Linux, we have to make it
> > work first
> > before sync everything with Linux.
> >
> > Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
> >
> > Thanks,
> > - Kever
> > > ---
> > >
> > >  arch/arm/dts/rk3399.dtsi | 88
> > ++++++++++++++++++------------------------------
> > >  1 file changed, 32 insertions(+), 56 deletions(-)
> > >
> > > diff --git a/arch/arm/dts/rk3399.dtsi b/arch/arm/dts/rk3399.dtsi
> > > index b53e41b4dc..823d459957 100644
> > > --- a/arch/arm/dts/rk3399.dtsi
> > > +++ b/arch/arm/dts/rk3399.dtsi
> > > @@ -349,69 +349,45 @@
> > >               status = "disabled";
> > >       };
> > >
> > > -     usbdrd3_0: dwc3_typec0: usb@fe800000 {
> > > -             compatible = "rockchip,rk3399-dwc3";
> > > -             #address-cells = <2>;
> > > -             #size-cells = <2>;
> > > -             ranges;
> > > -             clocks = <&cru SCLK_USB3OTG0_REF>, <&cru
> > SCLK_USB3OTG0_SUSPEND>,
> > > -                      <&cru ACLK_USB3OTG0>, <&cru
> > ACLK_USB3_RKSOC_AXI_PERF>,
> > > -                      <&cru ACLK_USB3>, <&cru ACLK_USB3_GRF>;
> > > -             clock-names = "ref_clk", "suspend_clk",
> > > -                           "bus_clk", "aclk_usb3_rksoc_axi_perf",
> > > -                           "aclk_usb3", "grf_clk";
> > > -             resets = <&cru SRST_A_USB3_OTG0>;
> > > -             reset-names = "usb3-otg";
> > > +     dwc3_typec0: usb@fe800000 {
> > > +             compatible = "rockchip,rk3399-xhci";
> > > +             reg = <0x0 0xfe800000 0x0 0x100000>;
> > >               status = "disabled";
> > > +             snps,dis-enblslpm-quirk;
> > > +             snps,phyif-utmi-bits = <16>;
> > > +             snps,dis-u2-freeclk-exists-quirk;
> > > +             snps,dis-u2-susphy-quirk;
> > >
> > > -             usbdrd_dwc3_0: dwc3 {
> > > -                     compatible = "snps,dwc3";
> > > -                     reg = <0x0 0xfe800000 0x0 0x100000>;
> > > -                     interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH 0>;
> > > -                     dr_mode = "otg";
> > > -                     phys = <&u2phy0_otg>, <&tcphy0_usb3>;
> > > -                     phy-names = "usb2-phy", "usb3-phy";
> > > -                     phy_type = "utmi_wide";
> > > -                     snps,dis_enblslpm_quirk;
> > > -                     snps,dis-u2-freeclk-exists-quirk;
> > > -                     snps,dis_u2_susphy_quirk;
> > > -                     snps,dis-del-phy-power-chg-quirk;
> > > -                     snps,dis-tx-ipgap-linecheck-quirk;
> > > -                     power-domains = <&power RK3399_PD_USB3>;
> > > -                     status = "disabled";
> > > +             #address-cells = <2>;
> > > +             #size-cells = <2>;
> > > +             hub {
> > > +                     compatible = "usb-hub";
> > > +                     usb,device-class = <USB_CLASS_HUB>;
> > > +             };
> > > +             typec_phy0 {
> > > +                     compatible = "rockchip,rk3399-usb3-phy";
> > > +                     reg = <0x0 0xff7c0000 0x0 0x40000>;
> > >               };
> > >       };
> > >
> > > -     dwc3_typec1: usbdrd3_1: usb@fe900000 {
> > > -             compatible = "rockchip,rk3399-dwc3";
> > > -             #address-cells = <2>;
> > > -             #size-cells = <2>;
> > > -             ranges;
> > > -             clocks = <&cru SCLK_USB3OTG1_REF>, <&cru
> > SCLK_USB3OTG1_SUSPEND>,
> > > -                      <&cru ACLK_USB3OTG1>, <&cru
> > ACLK_USB3_RKSOC_AXI_PERF>,
> > > -                      <&cru ACLK_USB3>, <&cru ACLK_USB3_GRF>;
> > > -             clock-names = "ref_clk", "suspend_clk",
> > > -                           "bus_clk", "aclk_usb3_rksoc_axi_perf",
> > > -                           "aclk_usb3", "grf_clk";
> > > -             resets = <&cru SRST_A_USB3_OTG1>;
> > > -             reset-names = "usb3-otg";
> > > +     dwc3_typec1: usb@fe900000 {
> > > +             compatible = "rockchip,rk3399-xhci";
> > > +             reg = <0x0 0xfe900000 0x0 0x100000>;
> > >               status = "disabled";
> > > +             snps,dis-enblslpm-quirk;
> > > +             snps,phyif-utmi-bits = <16>;
> > > +             snps,dis-u2-freeclk-exists-quirk;
> > > +             snps,dis-u2-susphy-quirk;
> > >
> > > -             usbdrd_dwc3_1: dwc3 {
> > > -                     compatible = "snps,dwc3";
> > > -                     reg = <0x0 0xfe900000 0x0 0x100000>;
> > > -                     interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH 0>;
> > > -                     dr_mode = "otg";
> > > -                     phys = <&u2phy1_otg>, <&tcphy1_usb3>;
> > > -                     phy-names = "usb2-phy", "usb3-phy";
> > > -                     phy_type = "utmi_wide";
> > > -                     snps,dis_enblslpm_quirk;
> > > -                     snps,dis-u2-freeclk-exists-quirk;
> > > -                     snps,dis_u2_susphy_quirk;
> > > -                     snps,dis-del-phy-power-chg-quirk;
> > > -                     snps,dis-tx-ipgap-linecheck-quirk;
> > > -                     power-domains = <&power RK3399_PD_USB3>;
> > > -                     status = "disabled";
> > > +             #address-cells = <2>;
> > > +             #size-cells = <2>;
> > > +             hub {
> > > +                     compatible = "usb-hub";
> > > +                     usb,device-class = <USB_CLASS_HUB>;
> > > +             };
> > > +             typec_phy1 {
> > > +                     compatible = "rockchip,rk3399-usb3-phy";
> > > +                     reg = <0x0 0xff800000 0x0 0x40000>;
> > >               };
> > >       };
> > >
> >
> >
> >
> > _______________________________________________
> > U-Boot mailing list
> > U-Boot@lists.denx.de
> > https://lists.denx.de/listinfo/u-boot
> >
> _______________________________________________
> U-Boot mailing list
> U-Boot@lists.denx.de
> https://lists.denx.de/listinfo/u-boot
diff mbox series

Patch

diff --git a/arch/arm/dts/rk3399.dtsi b/arch/arm/dts/rk3399.dtsi
index b53e41b4dc..823d459957 100644
--- a/arch/arm/dts/rk3399.dtsi
+++ b/arch/arm/dts/rk3399.dtsi
@@ -349,69 +349,45 @@ 
 		status = "disabled";
 	};
 
-	usbdrd3_0: dwc3_typec0: usb@fe800000 {
-		compatible = "rockchip,rk3399-dwc3";
-		#address-cells = <2>;
-		#size-cells = <2>;
-		ranges;
-		clocks = <&cru SCLK_USB3OTG0_REF>, <&cru SCLK_USB3OTG0_SUSPEND>,
-			 <&cru ACLK_USB3OTG0>, <&cru ACLK_USB3_RKSOC_AXI_PERF>,
-			 <&cru ACLK_USB3>, <&cru ACLK_USB3_GRF>;
-		clock-names = "ref_clk", "suspend_clk",
-			      "bus_clk", "aclk_usb3_rksoc_axi_perf",
-			      "aclk_usb3", "grf_clk";
-		resets = <&cru SRST_A_USB3_OTG0>;
-		reset-names = "usb3-otg";
+	dwc3_typec0: usb@fe800000 {
+		compatible = "rockchip,rk3399-xhci";
+		reg = <0x0 0xfe800000 0x0 0x100000>;
 		status = "disabled";
+		snps,dis-enblslpm-quirk;
+		snps,phyif-utmi-bits = <16>;
+		snps,dis-u2-freeclk-exists-quirk;
+		snps,dis-u2-susphy-quirk;
 
-		usbdrd_dwc3_0: dwc3 {
-			compatible = "snps,dwc3";
-			reg = <0x0 0xfe800000 0x0 0x100000>;
-			interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH 0>;
-			dr_mode = "otg";
-			phys = <&u2phy0_otg>, <&tcphy0_usb3>;
-			phy-names = "usb2-phy", "usb3-phy";
-			phy_type = "utmi_wide";
-			snps,dis_enblslpm_quirk;
-			snps,dis-u2-freeclk-exists-quirk;
-			snps,dis_u2_susphy_quirk;
-			snps,dis-del-phy-power-chg-quirk;
-			snps,dis-tx-ipgap-linecheck-quirk;
-			power-domains = <&power RK3399_PD_USB3>;
-			status = "disabled";
+		#address-cells = <2>;
+		#size-cells = <2>;
+		hub {
+			compatible = "usb-hub";
+			usb,device-class = <USB_CLASS_HUB>;
+		};
+		typec_phy0 {
+			compatible = "rockchip,rk3399-usb3-phy";
+			reg = <0x0 0xff7c0000 0x0 0x40000>;
 		};
 	};
 
-	dwc3_typec1: usbdrd3_1: usb@fe900000 {
-		compatible = "rockchip,rk3399-dwc3";
-		#address-cells = <2>;
-		#size-cells = <2>;
-		ranges;
-		clocks = <&cru SCLK_USB3OTG1_REF>, <&cru SCLK_USB3OTG1_SUSPEND>,
-			 <&cru ACLK_USB3OTG1>, <&cru ACLK_USB3_RKSOC_AXI_PERF>,
-			 <&cru ACLK_USB3>, <&cru ACLK_USB3_GRF>;
-		clock-names = "ref_clk", "suspend_clk",
-			      "bus_clk", "aclk_usb3_rksoc_axi_perf",
-			      "aclk_usb3", "grf_clk";
-		resets = <&cru SRST_A_USB3_OTG1>;
-		reset-names = "usb3-otg";
+	dwc3_typec1: usb@fe900000 {
+		compatible = "rockchip,rk3399-xhci";
+		reg = <0x0 0xfe900000 0x0 0x100000>;
 		status = "disabled";
+		snps,dis-enblslpm-quirk;
+		snps,phyif-utmi-bits = <16>;
+		snps,dis-u2-freeclk-exists-quirk;
+		snps,dis-u2-susphy-quirk;
 
-		usbdrd_dwc3_1: dwc3 {
-			compatible = "snps,dwc3";
-			reg = <0x0 0xfe900000 0x0 0x100000>;
-			interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH 0>;
-			dr_mode = "otg";
-			phys = <&u2phy1_otg>, <&tcphy1_usb3>;
-			phy-names = "usb2-phy", "usb3-phy";
-			phy_type = "utmi_wide";
-			snps,dis_enblslpm_quirk;
-			snps,dis-u2-freeclk-exists-quirk;
-			snps,dis_u2_susphy_quirk;
-			snps,dis-del-phy-power-chg-quirk;
-			snps,dis-tx-ipgap-linecheck-quirk;
-			power-domains = <&power RK3399_PD_USB3>;
-			status = "disabled";
+		#address-cells = <2>;
+		#size-cells = <2>;
+		hub {
+			compatible = "usb-hub";
+			usb,device-class = <USB_CLASS_HUB>;
+		};
+		typec_phy1 {
+			compatible = "rockchip,rk3399-usb3-phy";
+			reg = <0x0 0xff800000 0x0 0x40000>;
 		};
 	};