[PATCH 1/2] arm64: dts: rockchip: add the usb3 nodes to rk356x
Michael Riesch
michael.riesch at wolfvision.net
Fri Feb 25 02:09:42 PST 2022
The Rockchip RK3566 and RK3568 feature two USB 3.0 xHCI controllers,
one of them with Dual Role Device (DRD) capability.
Signed-off-by: Sascha Hauer <s.hauer at pengutronix.de>
Signed-off-by: Michael Riesch <michael.riesch at wolfvision.net>
---
arch/arm64/boot/dts/rockchip/rk3568.dtsi | 5 ++
arch/arm64/boot/dts/rockchip/rk356x.dtsi | 58 ++++++++++++++++++++++++
2 files changed, 63 insertions(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk3568.dtsi b/arch/arm64/boot/dts/rockchip/rk3568.dtsi
index 91a0b798b857..0cd4ef36066a 100644
--- a/arch/arm64/boot/dts/rockchip/rk3568.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3568.dtsi
@@ -116,3 +116,8 @@ power-domain at RK3568_PD_PIPE {
#power-domain-cells = <0>;
};
};
+
+&usb_host0_dwc3 {
+ phys = <&usb2phy0_otg>, <&combphy0 PHY_TYPE_USB3>;
+ phy-names = "usb2-phy", "usb3-phy";
+};
diff --git a/arch/arm64/boot/dts/rockchip/rk356x.dtsi b/arch/arm64/boot/dts/rockchip/rk356x.dtsi
index 8b9fae3d348a..b46794486037 100644
--- a/arch/arm64/boot/dts/rockchip/rk356x.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk356x.dtsi
@@ -230,6 +230,64 @@ scmi_shmem: sram at 0 {
};
};
+ usb_host0_xhci: usb at fcc00000 {
+ compatible = "rockchip,rk3399-dwc3";
+ #address-cells = <2>;
+ clocks = <&cru CLK_USB3OTG0_REF>, <&cru CLK_USB3OTG0_SUSPEND>,
+ <&cru ACLK_USB3OTG0>, <&cru PCLK_PIPE>;
+ clock-names = "ref_clk", "suspend_clk", "bus_clk", "grf_clk";
+ ranges;
+ #size-cells = <2>;
+ status = "disabled";
+
+ usb_host0_dwc3: usb at fcc00000 {
+ compatible = "snps,dwc3";
+ reg = <0x0 0xfcc00000 0x0 0x400000>;
+ interrupts = <GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>;
+ dr_mode = "otg";
+ phy_type = "utmi_wide";
+ power-domains = <&power RK3568_PD_PIPE>;
+ resets = <&cru SRST_USB3OTG0>;
+ reset-names = "usb3-otg";
+ snps,dis-del-phy-power-chg-quirk;
+ snps,dis_enblslpm_quirk;
+ snps,dis_rxdet_inp3_quirk;
+ snps,dis-tx-ipgap-linecheck-quirk;
+ snps,dis-u2-freeclk-exists-quirk;
+ snps,xhci-trb-ent-quirk;
+ };
+ };
+
+ usb_host1_xhci: usb at fd000000 {
+ compatible = "rockchip,rk3399-dwc3";
+ #address-cells = <2>;
+ clocks = <&cru CLK_USB3OTG1_REF>, <&cru CLK_USB3OTG1_SUSPEND>,
+ <&cru ACLK_USB3OTG1>, <&cru PCLK_PIPE>;
+ clock-names = "ref_clk", "suspend_clk", "bus_clk", "grf_clk";
+ ranges;
+ #size-cells = <2>;
+ status = "disabled";
+
+ usb_host1_dwc3: usb at fd000000 {
+ compatible = "snps,dwc3";
+ reg = <0x0 0xfd000000 0x0 0x400000>;
+ interrupts = <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>;
+ dr_mode = "host";
+ phy_type = "utmi_wide";
+ phys = <&usb2phy0_host>, <&combphy1 PHY_TYPE_USB3>;
+ phy-names = "usb2-phy", "usb3-phy";
+ power-domains = <&power RK3568_PD_PIPE>;
+ resets = <&cru SRST_USB3OTG1>;
+ reset-names = "usb3-host";
+ snps,dis-del-phy-power-chg-quirk;
+ snps,dis_enblslpm_quirk;
+ snps,dis_rxdet_inp3_quirk;
+ snps,dis-tx-ipgap-linecheck-quirk;
+ snps,dis-u2-freeclk-exists-quirk;
+ snps,xhci-trb-ent-quirk;
+ };
+ };
+
gic: interrupt-controller at fd400000 {
compatible = "arm,gic-v3";
reg = <0x0 0xfd400000 0 0x10000>, /* GICD */
--
2.30.2
More information about the linux-arm-kernel
mailing list