[PATCH] ARM: mvebu: use usb-nop-xceiv PHY for the xhci nodes on Armada 388 GP
Gregory CLEMENT
gregory.clement at free-electrons.com
Mon Jan 11 08:29:58 PST 2016
Hi,
On mer., déc. 23 2015, Gregory CLEMENT <gregory.clement at free-electrons.com> wrote:
> Using the usb-nop-xceiv PHY for the xhci nodes allows a better
> representation of the hardware but also a better handling of the
> regulator. By linking the regulator to the PHY there is no more need to
> use the regulator-always-on property, then it allows a better power
> management.
>
> The remaining usb node uses the ehci-orion driver which can't be used
> with the usb-nop-xceiv PHY and must keeps the direct link to the
> regulator with the regulator-always-on property.
>
> Signed-off-by: Gregory CLEMENT <gregory.clement at free-electrons.com>
I applied this one on mvebu/dt-for-4.6
Gregory
> ---
> arch/arm/boot/dts/armada-388-gp.dts | 16 ++++++++++++----
> 1 file changed, 12 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm/boot/dts/armada-388-gp.dts b/arch/arm/boot/dts/armada-388-gp.dts
> index ac3c9445ce57..51943598d858 100644
> --- a/arch/arm/boot/dts/armada-388-gp.dts
> +++ b/arch/arm/boot/dts/armada-388-gp.dts
> @@ -229,13 +229,13 @@
>
> /* CON5 */
> usb3 at f0000 {
> - vcc-supply = <®_usb2_1_vbus>;
> + usb-phy = <&usb2_1_phy>;
> status = "okay";
> };
>
> /* CON7 */
> usb3 at f8000 {
> - vcc-supply = <®_usb3_vbus>;
> + usb-phy = <&usb3_phy>;
> status = "okay";
> };
> };
> @@ -273,13 +273,22 @@
> };
> };
>
> + usb2_1_phy: usb2_1_phy {
> + compatible = "usb-nop-xceiv";
> + vcc-supply = <®_usb2_1_vbus>;
> + };
> +
> + usb3_phy: usb3_phy {
> + compatible = "usb-nop-xceiv";
> + vcc-supply = <®_usb3_vbus>;
> + };
> +
> reg_usb3_vbus: usb3-vbus {
> compatible = "regulator-fixed";
> regulator-name = "usb3-vbus";
> regulator-min-microvolt = <5000000>;
> regulator-max-microvolt = <5000000>;
> enable-active-high;
> - regulator-always-on;
> gpio = <&expander1 15 GPIO_ACTIVE_HIGH>;
> };
>
> @@ -299,7 +308,6 @@
> regulator-min-microvolt = <5000000>;
> regulator-max-microvolt = <5000000>;
> enable-active-high;
> - regulator-always-on;
> gpio = <&expander0 4 GPIO_ACTIVE_HIGH>;
> };
>
> --
> 2.5.0
>
--
Gregory Clement, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
More information about the linux-arm-kernel
mailing list