* [PATCH v2 0/2] Add usb2 nodes on RK3328 SoCs and enable usb2 on RK3328 evb
@ 2017-06-16 10:34 William Wu
2017-06-16 10:34 ` [PATCH v2 1/2] arm64: dts: rockchip: add usb2 nodes for RK3328 SoCs William Wu
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: William Wu @ 2017-06-16 10:34 UTC (permalink / raw)
To: linux-arm-kernel
This series adds support for usb2 on RK3328 SoCs.
Tested on RK3328 evaluation board.
William Wu (2):
arm64: dts: rockchip: add usb2 nodes for RK3328 SoCs
arm64: dts: rockchip: enable usb2 for RK3328 evaluation board
arch/arm64/boot/dts/rockchip/rk3328-evb.dts | 25 ++++++++++
arch/arm64/boot/dts/rockchip/rk3328.dtsi | 76 +++++++++++++++++++++++++++++
2 files changed, 101 insertions(+)
--
2.0.0
^ permalink raw reply [flat|nested] 4+ messages in thread* [PATCH v2 1/2] arm64: dts: rockchip: add usb2 nodes for RK3328 SoCs 2017-06-16 10:34 [PATCH v2 0/2] Add usb2 nodes on RK3328 SoCs and enable usb2 on RK3328 evb William Wu @ 2017-06-16 10:34 ` William Wu 2017-06-16 10:34 ` [PATCH v2 2/2] arm64: dts: rockchip: enable usb2 for RK3328 evaluation board William Wu 2017-06-30 20:29 ` [PATCH v2 0/2] Add usb2 nodes on RK3328 SoCs and enable usb2 on RK3328 evb Heiko Stuebner 2 siblings, 0 replies; 4+ messages in thread From: William Wu @ 2017-06-16 10:34 UTC (permalink / raw) To: linux-arm-kernel This patch adds usb2 otg/host controllers and phys nodes for Rockchip RK3328 SoCs. Signed-off-by: William Wu <william.wu@rock-chips.com> --- Changes in v2: - set usb2 otg dr_mode as "otg" arch/arm64/boot/dts/rockchip/rk3328.dtsi | 76 ++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rockchip/rk3328.dtsi index 0be96ce..05ea8f3 100644 --- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi @@ -372,6 +372,43 @@ <32768>; }; + usb2phy_grf: syscon at ff450000 { + compatible = "rockchip,rk3328-usb2phy-grf", "syscon", + "simple-mfd"; + reg = <0x0 0xff450000 0x0 0x10000>; + #address-cells = <1>; + #size-cells = <1>; + + u2phy: usb2-phy at 100 { + compatible = "rockchip,rk3328-usb2phy"; + reg = <0x100 0x10>; + clocks = <&xin24m>; + clock-names = "phyclk"; + #clock-cells = <0>; + assigned-clocks = <&cru USB480M>; + assigned-clock-parents = <&u2phy>; + clock-output-names = "usb480m_phy"; + status = "disabled"; + + u2phy_otg: otg-port { + #phy-cells = <0>; + interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>; + interrupt-names = "otg-bvalid", "otg-id", + "linestate"; + status = "disabled"; + }; + + u2phy_host: host-port { + #phy-cells = <0>; + interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; + interrupt-names = "linestate"; + status = "disabled"; + }; + }; + }; + sdmmc: dwmmc at ff500000 { compatible = "rockchip,rk3328-dw-mshc", "rockchip,rk3288-dw-mshc"; reg = <0x0 0xff500000 0x0 0x4000>; @@ -424,6 +461,45 @@ status = "disabled"; }; + usb20_otg: usb at ff580000 { + compatible = "rockchip,rk3328-usb", "rockchip,rk3066-usb", + "snps,dwc2"; + reg = <0x0 0xff580000 0x0 0x40000>; + interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&cru HCLK_OTG>; + clock-names = "otg"; + dr_mode = "otg"; + g-np-tx-fifo-size = <16>; + g-rx-fifo-size = <280>; + g-tx-fifo-size = <256 128 128 64 32 16>; + g-use-dma; + phys = <&u2phy_otg>; + phy-names = "usb2-phy"; + status = "disabled"; + }; + + usb_host0_ehci: usb at ff5c0000 { + compatible = "generic-ehci"; + reg = <0x0 0xff5c0000 0x0 0x10000>; + interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&cru HCLK_HOST0>, <&u2phy>; + clock-names = "usbhost", "utmi"; + phys = <&u2phy_host>; + phy-names = "usb"; + status = "disabled"; + }; + + usb_host0_ohci: usb at ff5d0000 { + compatible = "generic-ohci"; + reg = <0x0 0xff5d0000 0x0 0x10000>; + interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&cru HCLK_HOST0>, <&u2phy>; + clock-names = "usbhost", "utmi"; + phys = <&u2phy_host>; + phy-names = "usb"; + status = "disabled"; + }; + gic: interrupt-controller at ff811000 { compatible = "arm,gic-400"; #interrupt-cells = <3>; -- 2.0.0 ^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH v2 2/2] arm64: dts: rockchip: enable usb2 for RK3328 evaluation board 2017-06-16 10:34 [PATCH v2 0/2] Add usb2 nodes on RK3328 SoCs and enable usb2 on RK3328 evb William Wu 2017-06-16 10:34 ` [PATCH v2 1/2] arm64: dts: rockchip: add usb2 nodes for RK3328 SoCs William Wu @ 2017-06-16 10:34 ` William Wu 2017-06-30 20:29 ` [PATCH v2 0/2] Add usb2 nodes on RK3328 SoCs and enable usb2 on RK3328 evb Heiko Stuebner 2 siblings, 0 replies; 4+ messages in thread From: William Wu @ 2017-06-16 10:34 UTC (permalink / raw) To: linux-arm-kernel Rockchip's RK3328 evaluation board has one usb2 otg controller and one usb2 host controller which consist of EHCI and OHCI. Each usb controller connects with one usb2 phy port through UTMI+ interface. Let's enable them to support usb2 on RK3328 evaluation board. Signed-off-by: William Wu <william.wu@rock-chips.com> --- Changes in v2: - None arch/arm64/boot/dts/rockchip/rk3328-evb.dts | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/arch/arm64/boot/dts/rockchip/rk3328-evb.dts b/arch/arm64/boot/dts/rockchip/rk3328-evb.dts index cf27239..da02bb7 100644 --- a/arch/arm64/boot/dts/rockchip/rk3328-evb.dts +++ b/arch/arm64/boot/dts/rockchip/rk3328-evb.dts @@ -55,3 +55,28 @@ &uart2 { status = "okay"; }; + +&u2phy { + status = "okay"; + + u2phy_otg: otg-port { + status = "okay"; + }; + + u2phy_host: host-port { + status = "okay"; + }; + +}; + +&usb20_otg { + status = "okay"; +}; + +&usb_host0_ehci { + status = "okay"; +}; + +&usb_host0_ohci { + status = "okay"; +}; -- 2.0.0 ^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH v2 0/2] Add usb2 nodes on RK3328 SoCs and enable usb2 on RK3328 evb 2017-06-16 10:34 [PATCH v2 0/2] Add usb2 nodes on RK3328 SoCs and enable usb2 on RK3328 evb William Wu 2017-06-16 10:34 ` [PATCH v2 1/2] arm64: dts: rockchip: add usb2 nodes for RK3328 SoCs William Wu 2017-06-16 10:34 ` [PATCH v2 2/2] arm64: dts: rockchip: enable usb2 for RK3328 evaluation board William Wu @ 2017-06-30 20:29 ` Heiko Stuebner 2 siblings, 0 replies; 4+ messages in thread From: Heiko Stuebner @ 2017-06-30 20:29 UTC (permalink / raw) To: linux-arm-kernel Am Freitag, 16. Juni 2017, 18:34:13 CEST schrieb William Wu: > This series adds support for usb2 on RK3328 SoCs. > Tested on RK3328 evaluation board. > > William Wu (2): > arm64: dts: rockchip: add usb2 nodes for RK3328 SoCs > arm64: dts: rockchip: enable usb2 for RK3328 evaluation board applied for 4.14 with the node references in patch2 slightly restructured. (u2phy subnodes separate via their phandle) Thanks Heiko ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2017-06-30 20:29 UTC | newest] Thread overview: 4+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2017-06-16 10:34 [PATCH v2 0/2] Add usb2 nodes on RK3328 SoCs and enable usb2 on RK3328 evb William Wu 2017-06-16 10:34 ` [PATCH v2 1/2] arm64: dts: rockchip: add usb2 nodes for RK3328 SoCs William Wu 2017-06-16 10:34 ` [PATCH v2 2/2] arm64: dts: rockchip: enable usb2 for RK3328 evaluation board William Wu 2017-06-30 20:29 ` [PATCH v2 0/2] Add usb2 nodes on RK3328 SoCs and enable usb2 on RK3328 evb Heiko Stuebner
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).