Re: [PATCH] arm64: dts: marvell: armada-7040-db: Add USB current regulators

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Miquel Raynal <miquel.raynal@xxxxxxxxxxx> writes:

> Armada 7040-db USB ports deliver 500mA by default while they
> could deliver up to 900mA (usually, for USB3 devices).
>
> The board embeds a GPIO controlled regulator on each port which can be
> configured to deliver each amount of current.
>
> Add a vin-supply property to the USB3 Vbus nodes for this purpose. The
> regulator will be automatically 'enabled', ie. set to limit at 900mA
> instead of 500mA.
>
> Suggested-by: Alex Leibovich <alexl@xxxxxxxxxxx>
> Signed-off-by: Miquel Raynal <miquel.raynal@xxxxxxxxxxx>

Applied on mvebu/dt64

Thanks,

Gregory
> ---
>  .../arm64/boot/dts/marvell/armada-7040-db.dts | 28 +++++++++++++++++++
>  1 file changed, 28 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/marvell/armada-7040-db.dts b/arch/arm64/boot/dts/marvell/armada-7040-db.dts
> index d20d84ce7ca8..f34ee87a0f56 100644
> --- a/arch/arm64/boot/dts/marvell/armada-7040-db.dts
> +++ b/arch/arm64/boot/dts/marvell/armada-7040-db.dts
> @@ -28,6 +28,32 @@
>  		ethernet2 = &cp0_eth2;
>  	};
>  
> +	cp0_exp_usb3_0_current_regulator: gpio-regulator {
> +		compatible = "regulator-gpio";
> +		regulator-name = "cp0-usb3-0-current-regulator";
> +		regulator-type = "current";
> +		regulator-min-microamp = <500000>;
> +		regulator-max-microamp = <900000>;
> +		gpios = <&expander0 4 GPIO_ACTIVE_HIGH>;
> +		states = <500000 0x0
> +			  900000 0x1>;
> +		enable-active-high;
> +		gpios-states = <0>;
> +	};
> +
> +	cp0_exp_usb3_1_current_regulator: gpio-regulator {
> +		compatible = "regulator-gpio";
> +		regulator-name = "cp0-usb3-1-current-regulator";
> +		regulator-type = "current";
> +		regulator-min-microamp = <500000>;
> +		regulator-max-microamp = <900000>;
> +		gpios = <&expander0 5 GPIO_ACTIVE_HIGH>;
> +		states = <500000 0x0
> +			  900000 0x1>;
> +		enable-active-high;
> +		gpios-states = <0>;
> +	};
> +
>  	cp0_reg_usb3_0_vbus: cp0-usb3-0-vbus {
>  		compatible = "regulator-fixed";
>  		regulator-name = "usb3h0-vbus";
> @@ -35,6 +61,7 @@
>  		regulator-max-microvolt = <5000000>;
>  		enable-active-high;
>  		gpio = <&expander0 0 GPIO_ACTIVE_HIGH>;
> +		vin-supply = <&cp0_exp_usb3_0_current_regulator>;
>  	};
>  
>  	cp0_reg_usb3_1_vbus: cp0-usb3-1-vbus {
> @@ -44,6 +71,7 @@
>  		regulator-max-microvolt = <5000000>;
>  		enable-active-high;
>  		gpio = <&expander0 1 GPIO_ACTIVE_HIGH>;
> +		vin-supply = <&cp0_exp_usb3_1_current_regulator>;
>  	};
>  
>  	cp0_usb3_0_phy: cp0-usb3-0-phy {
> -- 
> 2.19.1
>
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

-- 
Gregory Clement, Bootlin
Embedded Linux and Kernel engineering
http://bootlin.com



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux