From: Frank Wang Date: Fri, 22 Jul 2016 01:42:31 +0000 (+0800) Subject: arm64: dts: rockchip: update usb2phy config for rk3399 X-Git-Tag: firefly_0821_release~2099 X-Git-Url: http://plrg.eecs.uci.edu/git/?p=firefly-linux-kernel-4.4.55.git;a=commitdiff_plain;h=05b51628345e3af46f36994bd513a0ffeef5de82 arm64: dts: rockchip: update usb2phy config for rk3399 Add host-port dt config and remove the old ones to support the new usb2phy driver. Plus, Add vcc5v0_host regulator for usb2phy and enable host-port config for all rk3399 board. Change-Id: Ia9d00525f53e5a6f52ca6681b4b6b98235822940 Signed-off-by: Frank Wang --- diff --git a/arch/arm64/boot/dts/rockchip/rk3399-box-808-android.dts b/arch/arm64/boot/dts/rockchip/rk3399-box-808-android.dts index f9de243ba7bf..51f42e3e3b32 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-box-808-android.dts +++ b/arch/arm64/boot/dts/rockchip/rk3399-box-808-android.dts @@ -83,6 +83,15 @@ vin-supply = <&vcc_sys>; }; + vcc5v0_host: vcc5v0-host-regulator { + compatible = "regulator-fixed"; + enable-active-high; + gpio = <&gpio4 25 GPIO_ACTIVE_HIGH>; + pinctrl-names = "default"; + pinctrl-0 = <&host_vbus_drv>; + regulator-name = "vcc5v0_host"; + }; + vdd_center: vdd-center { compatible = "pwm-regulator"; pwms = <&pwm2 0 25000 0>; @@ -537,6 +546,24 @@ status = "okay"; }; +&u2phy0 { + status = "okay"; + + u2phy0_host: host-port { + phy-supply = <&vcc5v0_host>; + status = "okay"; + }; +}; + +&u2phy1 { + status = "okay"; + + u2phy1_host: host-port { + phy-supply = <&vcc5v0_host>; + status = "okay"; + }; +}; + &uart0 { pinctrl-names = "default"; pinctrl-0 = <&uart0_xfer &uart0_cts>; @@ -547,10 +574,6 @@ status = "okay"; }; -&usb2phy { - vbus_drv-gpio = <&gpio4 25 GPIO_ACTIVE_HIGH>; -}; - &usb_host0_ehci { status = "okay"; }; @@ -730,6 +753,13 @@ <1 21 RK_FUNC_GPIO &pcfg_pull_up>; }; }; + + usb2 { + host_vbus_drv: host-vbus-drv { + rockchip,pins = + <4 25 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; }; &rk_screen { diff --git a/arch/arm64/boot/dts/rockchip/rk3399-evb.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-evb.dtsi index a1a4bea28224..c4533e8bf1f9 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-evb.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399-evb.dtsi @@ -65,6 +65,15 @@ regulator-max-microvolt = <3300000>; }; + vcc5v0_host: vcc5v0-host-regulator { + compatible = "regulator-fixed"; + enable-active-high; + gpio = <&gpio4 25 GPIO_ACTIVE_HIGH>; + pinctrl-names = "default"; + pinctrl-0 = <&host_vbus_drv>; + regulator-name = "vcc5v0_host"; + }; + backlight: backlight { compatible = "pwm-backlight"; pwms = <&pwm0 0 25000 0>; @@ -386,6 +395,24 @@ status = "okay"; }; +&u2phy0 { + status = "okay"; + + u2phy0_host: host-port { + phy-supply = <&vcc5v0_host>; + status = "okay"; + }; +}; + +&u2phy1 { + status = "okay"; + + u2phy1_host: host-port { + phy-supply = <&vcc5v0_host>; + status = "okay"; + }; +}; + &uart0 { pinctrl-names = "default"; pinctrl-0 = <&uart0_xfer &uart0_cts>; @@ -396,10 +423,6 @@ status = "okay"; }; -&usb2phy { - vbus_drv-gpio = <&gpio4 25 GPIO_ACTIVE_HIGH>; -}; - &usb_host0_ehci { status = "okay"; }; @@ -484,4 +507,11 @@ <1 18 RK_FUNC_GPIO &pcfg_pull_down>; }; }; + + usb2 { + host_vbus_drv: host-vbus-drv { + rockchip,pins = + <4 25 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; }; diff --git a/arch/arm64/boot/dts/rockchip/rk3399-mid-818-android.dts b/arch/arm64/boot/dts/rockchip/rk3399-mid-818-android.dts index 33b4ecc28be6..eefd8fd5df08 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-mid-818-android.dts +++ b/arch/arm64/boot/dts/rockchip/rk3399-mid-818-android.dts @@ -67,6 +67,15 @@ regulator-max-microvolt = <3300000>; }; + vcc5v0_host: vcc5v0-host-regulator { + compatible = "regulator-fixed"; + enable-active-high; + gpio = <&gpio4 25 GPIO_ACTIVE_HIGH>; + pinctrl-names = "default"; + pinctrl-0 = <&host_vbus_drv>; + regulator-name = "vcc5v0_host"; + }; + vdd_log: vdd-log { compatible = "pwm-regulator"; pwms = <&pwm2 0 25000 0>; @@ -687,6 +696,15 @@ status = "okay"; }; +&u2phy1 { + status = "okay"; + + u2phy1_host: host-port { + phy-supply = <&vcc5v0_host>; + status = "okay"; + }; +}; + &uart0 { pinctrl-names = "default"; pinctrl-0 = <&uart0_xfer &uart0_cts>; @@ -697,10 +715,6 @@ status = "okay"; }; -&usb2phy { - vbus_drv-gpio = <&gpio4 25 GPIO_ACTIVE_HIGH>; -}; - &usb_host0_ehci { status = "okay"; }; @@ -799,6 +813,13 @@ rockchip,pins = <4 24 RK_FUNC_GPIO &pcfg_pull_none>; }; }; + + usb2 { + host_vbus_drv: host-vbus-drv { + rockchip,pins = + <4 25 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; }; &rk_screen { diff --git a/arch/arm64/boot/dts/rockchip/rk3399-vr-android.dts b/arch/arm64/boot/dts/rockchip/rk3399-vr-android.dts index 013eb1522dab..e816a0114c2b 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-vr-android.dts +++ b/arch/arm64/boot/dts/rockchip/rk3399-vr-android.dts @@ -77,6 +77,15 @@ regulator-max-microvolt = <3300000>; }; + vcc5v0_host: vcc5v0-host-regulator { + compatible = "regulator-fixed"; + enable-active-high; + gpio = <&gpio4 25 GPIO_ACTIVE_HIGH>; + pinctrl-names = "default"; + pinctrl-0 = <&host_vbus_drv>; + regulator-name = "vcc5v0_host"; + }; + backlight: backlight { compatible = "pwm-backlight"; pwms = <&pwm0 0 25000 0>; @@ -631,6 +640,24 @@ }; }; +&u2phy0 { + status = "okay"; + + u2phy0_host: host-port { + phy-supply = <&vcc5v0_host>; + status = "okay"; + }; +}; + +&u2phy1 { + status = "okay"; + + u2phy1_host: host-port { + phy-supply = <&vcc5v0_host>; + status = "okay"; + }; +}; + &uart0 { pinctrl-names = "default"; pinctrl-0 = <&uart0_xfer &uart0_cts>; @@ -641,10 +668,6 @@ status = "okay"; }; -&usb2phy { - vbus_drv-gpio = <&gpio4 25 GPIO_ACTIVE_HIGH>; -}; - &usb_host0_ehci { status = "okay"; }; @@ -781,4 +804,11 @@ rockchip,pins = <1 4 RK_FUNC_GPIO &pcfg_pull_none>; }; }; + + usb2 { + host_vbus_drv: host-vbus-drv { + rockchip,pins = + <4 25 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; }; diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rockchip/rk3399.dtsi index 3c16f6a3e39f..6ce3dccc825f 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi @@ -369,33 +369,14 @@ status = "disabled"; }; - usb2phy: usb2phy { - compatible = "rockchip,rk3399-usb-phy"; - rockchip,grf = <&grf>; - #address-cells = <1>; - #size-cells = <0>; - - usb2phy0: usb2-phy0 { - #phy-cells = <0>; - #clock-cells = <0>; - reg = <0xe458>; - }; - - usb2phy1: usb2-phy1 { - #phy-cells = <0>; - #clock-cells = <0>; - reg = <0xe468>; - }; - }; - usb_host0_ehci: usb@fe380000 { compatible = "generic-ehci"; reg = <0x0 0xfe380000 0x0 0x20000>; interrupts = ; clocks = <&cru HCLK_HOST0>, <&cru HCLK_HOST0_ARB>; clock-names = "hclk_host0", "hclk_host0_arb"; - phys = <&usb2phy0>; - phy-names = "usb2_phy0"; + phys = <&u2phy0_host>; + phy-names = "usb"; status = "disabled"; }; @@ -414,8 +395,8 @@ interrupts = ; clocks = <&cru HCLK_HOST1>, <&cru HCLK_HOST1_ARB>; clock-names = "hclk_host1", "hclk_host1_arb"; - phys = <&usb2phy1>; - phy-names = "usb2_phy1"; + phys = <&u2phy1_host>; + phy-names = "usb"; status = "disabled"; }; @@ -1198,6 +1179,30 @@ "linestate"; status = "disabled"; }; + + u2phy0_host: host-port { + #phy-cells = <0>; + interrupts = ; + interrupt-names = "linestate"; + status = "disabled"; + }; + }; + + u2phy1: usb2-phy@e460 { + compatible = "rockchip,rk3399-usb2phy"; + reg = <0xe460 0x10>; + clocks = <&cru SCLK_USB2PHY1_REF>; + clock-names = "phyclk"; + #clock-cells = <0>; + clock-output-names = "clk_usbphy1_480m"; + status = "disabled"; + + u2phy1_host: host-port { + #phy-cells = <0>; + interrupts = ; + interrupt-names = "linestate"; + status = "disabled"; + }; }; };