On Mon, Mar 11, 2019 at 10:40:09AM +0000, Jun Li wrote:
> Some typec super speed active channel switch can be controlled via
> a GPIO, this binding can be used to specify the switch node by
> a GPIO and the remote endpoint of its consumer.
> 
> Signed-off-by: Li Jun <[email protected]>
> ---
>  .../devicetree/bindings/usb/typec-switch-gpio.txt  | 30 
> ++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/usb/typec-switch-gpio.txt 
> b/Documentation/devicetree/bindings/usb/typec-switch-gpio.txt
> new file mode 100644
> index 0000000..4ef76cf
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/usb/typec-switch-gpio.txt
> @@ -0,0 +1,30 @@
> +Typec orientation switch via a GPIO
> +-----------------------------------
> +
> +Required properties:
> +- compatible: should be set one of following:
> +     - "nxp,ptn36043" for NXP Type-C SuperSpeed active switch.
> +
> +- gpios: the GPIO used to switch the super speed active channel,

Perhaps switch-gpios in case there are other gpios needed.

> +             GPIO_ACTIVE_HIGH: GPIO state high for cc1;
> +             GPIO_ACTIVE_LOW:  GPIO state low for cc1.
> +- orientation-switch: must be present.

Why is this needed? The compatible can't imply this?

> +
> +Required sub-node:
> +- port: specify the remote endpoint of typec switch consumer.
> +
> +Example:
> +
> +ptn36043 {
> +     compatible = "nxp,ptn36043";
> +     pinctrl-names = "default";
> +     pinctrl-0 = <&pinctrl_ss_sel>;
> +     gpios = <&gpio3 15 GPIO_ACTIVE_HIGH>;
> +     orientation-switch;
> +
> +     port {
> +             usb3_data_ss: endpoint {
> +                     remote-endpoint = <&typec_con_ss>;
> +             };
> +     };
> +};
> -- 
> 2.7.4
> 

Reply via email to