On Wed, Jun 08, 2016 at 03:48:00PM +0200, Krzysztof Kozlowski wrote: > From: Robert Baldyga <r.baldyga@xxxxxxxxxxx> > > Add information about VBUS pin detection support, 'debounce' property > and some other details. The extcon bindings are a complete mess if you've seen my recent comments. I'm inclined to NAK anything that amends broken bindings. This one is headed in the right direction though... > Signed-off-by: Robert Baldyga <r.baldyga@xxxxxxxxxxx> > Acked-by: Roger Quadros <rogerq@xxxxxx> > Signed-off-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx> > --- > .../devicetree/bindings/extcon/extcon-usb-gpio.txt | 28 ++++++++++++++++++++-- > 1 file changed, 26 insertions(+), 2 deletions(-) > > diff --git a/Documentation/devicetree/bindings/extcon/extcon-usb-gpio.txt b/Documentation/devicetree/bindings/extcon/extcon-usb-gpio.txt > index af0b903de293..7096f399b771 100644 > --- a/Documentation/devicetree/bindings/extcon/extcon-usb-gpio.txt > +++ b/Documentation/devicetree/bindings/extcon/extcon-usb-gpio.txt > @@ -1,16 +1,40 @@ > USB GPIO Extcon device > > -This is a virtual device used to generate USB cable states from the USB ID pin > -connected to a GPIO pin. > +This is a virtual device used to generate USB cable states from the USB > +ID and VBUS signals connected to GPIO pins. It is not a virtual device, but a connector and connector states. > + > +The extcon cable states USB and USB_HOST are actually VBUS and !ID > +pin states and do not indicate what mode the USB needs to operate in. > +That decision is done by the USB stack. > + > +Some devices have only one of these GPIO pins, so we support cases when > +only one of them is present. Hence properties 'id-gpio' and 'vbus-gpio' > +are described as optional, but at least one of them has to be present > +in extcon-usb-gpio node. > + > +In general we have three cases: > +1. If VBUS and ID gpios are present we pass them as is > + USB-HOST = !ID, USB = VBUS > +2. If only VBUS gpio is present we assume that ID pin is always High. > + USB-HOST = false, USB = VBUS. > +3. If only ID pin is available we infer the VBUS pin states based on ID. > + USB-HOST = !ID, USB = ID USB and USB-HOST look like driver details. Shouldn't this just be in terms of host and device? > > Required properties: > - compatible: Should be "linux,extcon-usb-gpio" I'd prefer to see this deprecated in favor of a string that defines the type of connector (usb-a-connector, usb-microab-connector, etc.) > + > +Optional properties > - id-gpio: gpio for USB ID pin. See gpio binding. > +- vbus-gpio: gpio for USB VBUS pin. See gpio binding. vbus-gpios > +- debounce: gpio debounce time in milliseconds (u32). debounce of which gpio? Needs a unit suffix. > + > > Example: Examples of extcon-usb-gpio node in dra7-evm.dts as listed below: > extcon_usb1 { > compatible = "linux,extcon-usb-gpio"; > id-gpio = <&gpio6 1 GPIO_ACTIVE_HIGH>; > + vbus-gpio = <&gpio6 2 GPIO_ACTIVE_HIGH>; > + debounce = <25>; > } > > &omap_dwc3_1 { > -- > 1.9.1 > -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html