OSDN Git Service

dt-bindings: add bindings for USB physical connector
authorAndrzej Hajda <a.hajda@samsung.com>
Tue, 27 Feb 2018 07:11:29 +0000 (08:11 +0100)
committerChanwoo Choi <cw00.choi@samsung.com>
Wed, 7 Mar 2018 02:22:46 +0000 (11:22 +0900)
These bindings allow to describe most known standard USB connectors
and it should be possible to extend it if necessary.
USB connectors, beside USB can be used to route other protocols,
for example UART, Audio, MHL. In such case every device passing data
through the connector should have appropriate graph bindings.

Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Documentation/devicetree/bindings/connector/usb-connector.txt [new file with mode: 0644]

diff --git a/Documentation/devicetree/bindings/connector/usb-connector.txt b/Documentation/devicetree/bindings/connector/usb-connector.txt
new file mode 100644 (file)
index 0000000..e1463f1
--- /dev/null
@@ -0,0 +1,75 @@
+USB Connector
+=============
+
+USB connector node represents physical USB connector. It should be
+a child of USB interface controller.
+
+Required properties:
+- compatible: describes type of the connector, must be one of:
+    "usb-a-connector",
+    "usb-b-connector",
+    "usb-c-connector".
+
+Optional properties:
+- label: symbolic name for the connector,
+- type: size of the connector, should be specified in case of USB-A, USB-B
+  non-fullsize connectors: "mini", "micro".
+
+Required nodes:
+- any data bus to the connector should be modeled using the OF graph bindings
+  specified in bindings/graph.txt, unless the bus is between parent node and
+  the connector. Since single connector can have multpile data buses every bus
+  has assigned OF graph port number as follows:
+    0: High Speed (HS), present in all connectors,
+    1: Super Speed (SS), present in SS capable connectors,
+    2: Sideband use (SBU), present in USB-C.
+
+Examples
+--------
+
+1. Micro-USB connector with HS lines routed via controller (MUIC):
+
+muic-max77843@66 {
+       ...
+       usb_con: connector {
+               compatible = "usb-b-connector";
+               label = "micro-USB";
+               type = "micro";
+       };
+};
+
+2. USB-C connector attached to CC controller (s2mm005), HS lines routed
+to companion PMIC (max77865), SS lines to USB3 PHY and SBU to DisplayPort.
+DisplayPort video lines are routed to the connector via SS mux in USB3 PHY.
+
+ccic: s2mm005@33 {
+       ...
+       usb_con: connector {
+               compatible = "usb-c-connector";
+               label = "USB-C";
+
+               ports {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+
+                       port@0 {
+                               reg = <0>;
+                               usb_con_hs: endpoint {
+                                       remote-endpoint = <&max77865_usbc_hs>;
+                               };
+                       };
+                       port@1 {
+                               reg = <1>;
+                               usb_con_ss: endpoint {
+                                       remote-endpoint = <&usbdrd_phy_ss>;
+                               };
+                       };
+                       port@2 {
+                               reg = <2>;
+                               usb_con_sbu: endpoint {
+                                       remote-endpoint = <&dp_aux>;
+                               };
+                       };
+               };
+       };
+};