* [PATCH 0/2] add usb2-phy support for RK3308 SoC @ 2019-12-17 7:57 Akash Gajjar 2019-12-17 7:57 ` [PATCH 1/2] arch: arm64: rockchip: add usb node for RK3308 Akash Gajjar 2019-12-17 7:57 ` [PATCH 2/2] phy: phy-rockchip-inno-usb2: add usb2-phy support for RK3308 SoC Akash Gajjar 0 siblings, 2 replies; 4+ messages in thread From: Akash Gajjar @ 2019-12-17 7:57 UTC (permalink / raw) To: heiko Cc: jagan, tom, kever.yang, Akash Gajjar, Kishon Vijay Abraham I, Rob Herring, Mark Rutland, Andy Yan, linux-kernel, devicetree, linux-arm-kernel, linux-rockchip Add usb2-phy support in RK3308 SoC dtsi Add usb2-phy support for RK3308 SoC in Rockchip USB driver - Tested USB2.0 with these patches on RockPiS board and Mainline Linux kernel Akash Gajjar (2): arch: arm64: rockchip: add usb node for RK3308 phy: phy-rockchip-inno-usb2: add usb2-phy support for RK3308 SoC .../bindings/phy/phy-rockchip-inno-usb2.txt | 1 + arch/arm64/boot/dts/rockchip/rk3308.dtsi | 49 +++++++++++++++++++ drivers/phy/rockchip/phy-rockchip-inno-usb2.c | 44 +++++++++++++++++ 3 files changed, 94 insertions(+) -- 2.17.1 ^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 1/2] arch: arm64: rockchip: add usb node for RK3308 2019-12-17 7:57 [PATCH 0/2] add usb2-phy support for RK3308 SoC Akash Gajjar @ 2019-12-17 7:57 ` Akash Gajjar 2019-12-17 7:57 ` [PATCH 2/2] phy: phy-rockchip-inno-usb2: add usb2-phy support for RK3308 SoC Akash Gajjar 1 sibling, 0 replies; 4+ messages in thread From: Akash Gajjar @ 2019-12-17 7:57 UTC (permalink / raw) To: heiko Cc: jagan, tom, kever.yang, Akash Gajjar, Kishon Vijay Abraham I, Rob Herring, Mark Rutland, Andy Yan, linux-kernel, devicetree, linux-arm-kernel, linux-rockchip Add the ehci/ochi usb node support for the RK3308 soc. Signed-off-by: Akash Gajjar <akash@openedev.com> --- arch/arm64/boot/dts/rockchip/rk3308.dtsi | 49 ++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/arch/arm64/boot/dts/rockchip/rk3308.dtsi b/arch/arm64/boot/dts/rockchip/rk3308.dtsi index 8bdc66c62975..4e51362b5373 100644 --- a/arch/arm64/boot/dts/rockchip/rk3308.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3308.dtsi @@ -243,6 +243,33 @@ status = "disabled"; }; + usb2phy_grf: syscon@ff008000 { + compatible = "rockchip,rk3308-usb2phy-grf", "syscon", + "simple-mfd"; + reg = <0x0 0xff008000 0x0 0x4000>; + #address-cells = <1>; + #size-cells = <1>; + + u2phy: usb2-phy@100 { + compatible = "rockchip,rk3308-usb2phy"; + reg = <0x100 0x10>; + clocks = <&cru SCLK_USBPHY_REF>; + clock-names = "phyclk"; + #clock-cells = <0>; + assigned-clocks = <&cru USB480M>; + assigned-clock-parents = <&u2phy>; + clock-output-names = "usb480m_phy"; + status = "disabled"; + + u2phy_host: host-port { + #phy-cells = <0>; + interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; + interrupt-names = "linestate"; + status = "disabled"; + }; + }; + }; + wdt: watchdog@ff080000 { compatible = "snps,dw-wdt"; reg = <0x0 0xff080000 0x0 0x100>; @@ -584,6 +611,28 @@ status = "disabled"; }; + usb_host_ehci: usb@ff440000 { + compatible = "generic-ehci"; + reg = <0x0 0xff440000 0x0 0x10000>; + interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&cru HCLK_HOST>, <&cru HCLK_HOST_ARB>, <&u2phy>; + clock-names = "usbhost", "arbiter", "utmi"; + phys = <&u2phy_host>; + phy-names = "usb"; + status = "disabled"; + }; + + usb_host_ohci: usb@ff450000 { + compatible = "generic-ohci"; + reg = <0x0 0xff450000 0x0 0x10000>; + interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&cru HCLK_HOST>, <&cru HCLK_HOST_ARB>, <&u2phy>; + clock-names = "usbhost", "arbiter", "utmi"; + phys = <&u2phy_host>; + phy-names = "usb"; + status = "disabled"; + }; + sdmmc: dwmmc@ff480000 { compatible = "rockchip,rk3308-dw-mshc", "rockchip,rk3288-dw-mshc"; reg = <0x0 0xff480000 0x0 0x4000>; -- 2.17.1 ^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH 2/2] phy: phy-rockchip-inno-usb2: add usb2-phy support for RK3308 SoC 2019-12-17 7:57 [PATCH 0/2] add usb2-phy support for RK3308 SoC Akash Gajjar 2019-12-17 7:57 ` [PATCH 1/2] arch: arm64: rockchip: add usb node for RK3308 Akash Gajjar @ 2019-12-17 7:57 ` Akash Gajjar 2019-12-26 21:07 ` Rob Herring 1 sibling, 1 reply; 4+ messages in thread From: Akash Gajjar @ 2019-12-17 7:57 UTC (permalink / raw) To: heiko Cc: jagan, tom, kever.yang, Akash Gajjar, Kishon Vijay Abraham I, Rob Herring, Mark Rutland, Andy Yan, linux-kernel, devicetree, linux-arm-kernel, linux-rockchip This patch adds usb2-phy support for RK3308 SoCs and amend phy Documentation. Signed-off-by: Akash Gajjar <akash@openedev.com> --- .../bindings/phy/phy-rockchip-inno-usb2.txt | 1 + drivers/phy/rockchip/phy-rockchip-inno-usb2.c | 44 +++++++++++++++++++ 2 files changed, 45 insertions(+) diff --git a/Documentation/devicetree/bindings/phy/phy-rockchip-inno-usb2.txt b/Documentation/devicetree/bindings/phy/phy-rockchip-inno-usb2.txt index 541f5298827c..e978aad34d3f 100644 --- a/Documentation/devicetree/bindings/phy/phy-rockchip-inno-usb2.txt +++ b/Documentation/devicetree/bindings/phy/phy-rockchip-inno-usb2.txt @@ -5,6 +5,7 @@ Required properties (phy (parent) node): * "rockchip,px30-usb2phy" * "rockchip,rk3228-usb2phy" * "rockchip,rk3328-usb2phy" + * "rockchip,rk3308-usb2phy" * "rockchip,rk3366-usb2phy" * "rockchip,rk3399-usb2phy" * "rockchip,rv1108-usb2phy" diff --git a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c index 680cc0c8825c..9fe817486ea1 100644 --- a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c +++ b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c @@ -1256,6 +1256,49 @@ static const struct rockchip_usb2phy_cfg rk3228_phy_cfgs[] = { { /* sentinel */ } }; +static const struct rockchip_usb2phy_cfg rk3308_phy_cfgs[] = { + { + .reg = 0x100, + .num_ports = 2, + .clkout_ctl = { 0x0108, 4, 4, 1, 0 }, + .port_cfgs = { + [USB2PHY_PORT_OTG] = { + .phy_sus = { 0x0100, 8, 0, 0, 0x1d1 }, + .bvalid_det_en = { 0x3020, 2, 2, 0, 1 }, + .bvalid_det_st = { 0x3024, 2, 2, 0, 1 }, + .bvalid_det_clr = { 0x3028, 2, 2, 0, 1 }, + .ls_det_en = { 0x3020, 0, 0, 0, 1 }, + .ls_det_st = { 0x3024, 0, 0, 0, 1 }, + .ls_det_clr = { 0x3028, 0, 0, 0, 1 }, + .utmi_avalid = { 0x0120, 10, 10, 0, 1 }, + .utmi_bvalid = { 0x0120, 9, 9, 0, 1 }, + .utmi_ls = { 0x0120, 5, 4, 0, 1 }, + }, + [USB2PHY_PORT_HOST] = { + .phy_sus = { 0x0104, 8, 0, 0, 0x1d1 }, + .ls_det_en = { 0x3020, 1, 1, 0, 1 }, + .ls_det_st = { 0x3024, 1, 1, 0, 1 }, + .ls_det_clr = { 0x3028, 1, 1, 0, 1 }, + .utmi_ls = { 0x120, 17, 16, 0, 1 }, + .utmi_hstdet = { 0x120, 19, 19, 0, 1 } + } + }, + .chg_det = { + .opmode = { 0x0100, 3, 0, 5, 1 }, + .cp_det = { 0x0120, 24, 24, 0, 1 }, + .dcp_det = { 0x0120, 23, 23, 0, 1 }, + .dp_det = { 0x0120, 25, 25, 0, 1 }, + .idm_sink_en = { 0x0108, 8, 8, 0, 1 }, + .idp_sink_en = { 0x0108, 7, 7, 0, 1 }, + .idp_src_en = { 0x0108, 9, 9, 0, 1 }, + .rdm_pdwn_en = { 0x0108, 10, 10, 0, 1 }, + .vdm_src_en = { 0x0108, 12, 12, 0, 1 }, + .vdp_src_en = { 0x0108, 11, 11, 0, 1 }, + }, + }, + { /* sentinel */ } +}; + static const struct rockchip_usb2phy_cfg rk3328_phy_cfgs[] = { { .reg = 0x100, @@ -1425,6 +1468,7 @@ static const struct rockchip_usb2phy_cfg rv1108_phy_cfgs[] = { static const struct of_device_id rockchip_usb2phy_dt_match[] = { { .compatible = "rockchip,px30-usb2phy", .data = &rk3328_phy_cfgs }, { .compatible = "rockchip,rk3228-usb2phy", .data = &rk3228_phy_cfgs }, + { .compatible = "rockchip,rk3308-usb2phy", .data = &rk3308_phy_cfgs }, { .compatible = "rockchip,rk3328-usb2phy", .data = &rk3328_phy_cfgs }, { .compatible = "rockchip,rk3366-usb2phy", .data = &rk3366_phy_cfgs }, { .compatible = "rockchip,rk3399-usb2phy", .data = &rk3399_phy_cfgs }, -- 2.17.1 ^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH 2/2] phy: phy-rockchip-inno-usb2: add usb2-phy support for RK3308 SoC 2019-12-17 7:57 ` [PATCH 2/2] phy: phy-rockchip-inno-usb2: add usb2-phy support for RK3308 SoC Akash Gajjar @ 2019-12-26 21:07 ` Rob Herring 0 siblings, 0 replies; 4+ messages in thread From: Rob Herring @ 2019-12-26 21:07 UTC (permalink / raw) To: Akash Gajjar Cc: heiko, jagan, tom, kever.yang, Akash Gajjar, Kishon Vijay Abraham I, Mark Rutland, Andy Yan, linux-kernel, devicetree, linux-arm-kernel, linux-rockchip On Tue, 17 Dec 2019 13:27:15 +0530, Akash Gajjar wrote: > This patch adds usb2-phy support for RK3308 SoCs and amend phy Documentation. > > Signed-off-by: Akash Gajjar <akash@openedev.com> > --- > .../bindings/phy/phy-rockchip-inno-usb2.txt | 1 + > drivers/phy/rockchip/phy-rockchip-inno-usb2.c | 44 +++++++++++++++++++ > 2 files changed, 45 insertions(+) > Acked-by: Rob Herring <robh@kernel.org> ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2019-12-26 21:07 UTC | newest] Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2019-12-17 7:57 [PATCH 0/2] add usb2-phy support for RK3308 SoC Akash Gajjar 2019-12-17 7:57 ` [PATCH 1/2] arch: arm64: rockchip: add usb node for RK3308 Akash Gajjar 2019-12-17 7:57 ` [PATCH 2/2] phy: phy-rockchip-inno-usb2: add usb2-phy support for RK3308 SoC Akash Gajjar 2019-12-26 21:07 ` Rob Herring
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).