[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20160222025446.GN15973@rob-hp-laptop>
Date: Sun, 21 Feb 2016 20:54:46 -0600
From: Rob Herring <robh@...nel.org>
To: Enric Balletbo i Serra <enric.balletbo@...labora.com>
Cc: devicetree@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-pm@...r.kernel.org, Sebastian Reichel <sre@...nel.org>,
Pawel Moll <pawel.moll@....com>,
Mark Rutland <mark.rutland@....com>,
Ian Campbell <ijc+devicetree@...lion.org.uk>,
Kumar Gala <galak@...eaurora.org>,
Dmitry Eremin-Solenikov <dbaryshkov@...il.com>,
David Woodhouse <dwmw2@...radead.org>,
Sjoerd Simons <sjoerd.simons@...labora.co.uk>,
Martyn Welch <martyn.welch@...labora.com>
Subject: Re: [PATCHv2 1/2] devicetree: Add UCS1002 USB Port Power Controller
binding
On Thu, Feb 18, 2016 at 10:52:50AM +0100, Enric Balletbo i Serra wrote:
> The UCS1002-2 provides a USB port power switch for precise control of up
> to 2.5 amperes continuous current.
>
> You can add support to your board with current binding.
>
> Example:
>
> ucs1002: ucs1002@57 {
> compatible = "microchip,ucs1002";
> reg = <0x57>;
> };
>
> Signed-off-by: Enric Balletbo i Serra <enric.balletbo@...labora.com>
> ---
>
> Changes since v1:
> - Fix units, are microamps (Rob Herring)
> - Remove microchip,pin-ignore as is implied by absence of gpio properties (Rob
> Herring)
> - Group control gpios instead of use separate gpios. All control gpios must be
> set together (Enric Balletbo)
>
> .../devicetree/bindings/power/ucs1002.txt | 41 ++++++++++++++++++++++
> 1 file changed, 41 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/power/ucs1002.txt
>
> diff --git a/Documentation/devicetree/bindings/power/ucs1002.txt b/Documentation/devicetree/bindings/power/ucs1002.txt
> new file mode 100644
> index 0000000..bb2f91e
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/power/ucs1002.txt
> @@ -0,0 +1,41 @@
> +UCS1002-2 Programmable USB Port Power Controller with Charger Emulation bindings
> +
> +Required properties:
> +- compatible: "microchip,ucs1002"
> +- reg: integer, the I2C address of the device.
> +
> +Optional properties:
> +- interrupt-parent: the phandle of the interrupt controller that services
> + interrupts for this device.
> +- interrupts: interrupt specifiers for two interrupt sources.
> + - First interrupt specifier is for A_DET interrupt.
> + - Second interrupt specifier is for ALERT interrupt.
> +- microchip,current-limit: integer, maximum current in microamps. Note that the
This needs a microamps as a suffix (e.g.
microchip,current-limit-microamps). That's kind of long, so maybe drop
"current" from the name as that is implied with the units.
> + default value is based on the resistor on the COMM_SEL/ILIM pin and this
> + value cannot be changed to be higher than hardware set value. Accepted
> + values are: 500000, 900000, 1000000, 1200000, 1500000, 1800000, 2000000 and
> + 2500000 (microamps).
> +- control-gpios = list of gpios used as pin states when determining the active mode
> + selection and power state. Must provide EM_EN, M1, M2 and PWR_EN gpio mapping.
> + If this property is not set it uses I2C for configuration.
> +
> +Example (polling):
> +
> + ucs1002: ucs1002@57 {
> + compatible = "microchip,ucs1002";
> + reg = <0x57>;
> + microchip,current-limit = <2000000>;
> + };
> +
> +Example (interrupts + control gpios):
> +
> + ucs1002: ucs1002@57 {
> + compatible = "microchip,ucs1002";
> + reg = <0x57>;
> + interrupt-parent = <&gpio0>;
> + interrupts = <30 0>, <31 0>;
> + control-gpios = <&gpio0 2 GPIO_ACTIVE_HIGH>, /* EM_EN */
> + <&gpio0 3 GPIO_ACTIVE_HIGH>, /* M1 */
> + <&gpio1 17 GPIO_ACTIVE_HIGH>, /* M2 */
> + <&gpio1 19 0>; /* PWR_EN */
> + };
> --
> 2.1.0
>
Powered by blists - more mailing lists