1f126890aSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2f126890aSEmmanuel Vadot%YAML 1.2 3f126890aSEmmanuel Vadot--- 4f126890aSEmmanuel Vadot$id: http://devicetree.org/schemas/usb/onnn,nb7vpq904m.yaml# 5f126890aSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6f126890aSEmmanuel Vadot 7f126890aSEmmanuel Vadottitle: ON Semiconductor Type-C DisplayPort ALT Mode Linear Redriver 8f126890aSEmmanuel Vadot 9f126890aSEmmanuel Vadotmaintainers: 10f126890aSEmmanuel Vadot - Neil Armstrong <neil.armstrong@linaro.org> 11f126890aSEmmanuel Vadot 12f126890aSEmmanuel Vadotproperties: 13f126890aSEmmanuel Vadot compatible: 14f126890aSEmmanuel Vadot enum: 15f126890aSEmmanuel Vadot - onnn,nb7vpq904m 16f126890aSEmmanuel Vadot 17f126890aSEmmanuel Vadot reg: 18f126890aSEmmanuel Vadot maxItems: 1 19f126890aSEmmanuel Vadot 20f126890aSEmmanuel Vadot vcc-supply: 21f126890aSEmmanuel Vadot description: power supply (1.8V) 22f126890aSEmmanuel Vadot 23f126890aSEmmanuel Vadot enable-gpios: true 24*01950c46SEmmanuel Vadot orientation-switch: true 25*01950c46SEmmanuel Vadot retimer-switch: true 26f126890aSEmmanuel Vadot 27f126890aSEmmanuel Vadot ports: 28f126890aSEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/ports 29f126890aSEmmanuel Vadot properties: 30f126890aSEmmanuel Vadot port@0: 31f126890aSEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 32f126890aSEmmanuel Vadot description: Super Speed (SS) Output endpoint to the Type-C connector 33f126890aSEmmanuel Vadot 34f126890aSEmmanuel Vadot port@1: 35f126890aSEmmanuel Vadot $ref: /schemas/graph.yaml#/$defs/port-base 36f126890aSEmmanuel Vadot description: Super Speed (SS) Input endpoint from the Super-Speed PHY 37f126890aSEmmanuel Vadot unevaluatedProperties: false 38f126890aSEmmanuel Vadot 39f126890aSEmmanuel Vadot properties: 40f126890aSEmmanuel Vadot endpoint: 41f126890aSEmmanuel Vadot $ref: /schemas/graph.yaml#/$defs/endpoint-base 42f126890aSEmmanuel Vadot unevaluatedProperties: false 43f126890aSEmmanuel Vadot 44f126890aSEmmanuel Vadot properties: 45f126890aSEmmanuel Vadot data-lanes: 46f126890aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 47f126890aSEmmanuel Vadot description: | 48f126890aSEmmanuel Vadot An array of physical data lane indexes. Position determines how 49f126890aSEmmanuel Vadot lanes are connected to the redriver, It is assumed the same order 50f126890aSEmmanuel Vadot is kept on the other side of the redriver. 51f126890aSEmmanuel Vadot Lane number represents the following 52f126890aSEmmanuel Vadot - 0 is RX2 lane 53f126890aSEmmanuel Vadot - 1 is TX2 lane 54f126890aSEmmanuel Vadot - 2 is TX1 lane 55f126890aSEmmanuel Vadot - 3 is RX1 lane 56f126890aSEmmanuel Vadot The position determines the physical port of the redriver, in the 57f126890aSEmmanuel Vadot order A, B, C & D. 58f126890aSEmmanuel Vadot oneOf: 59f126890aSEmmanuel Vadot - items: 60f126890aSEmmanuel Vadot - const: 0 61f126890aSEmmanuel Vadot - const: 1 62f126890aSEmmanuel Vadot - const: 2 63f126890aSEmmanuel Vadot - const: 3 64f126890aSEmmanuel Vadot description: | 65f126890aSEmmanuel Vadot This is the lanes default layout 66f126890aSEmmanuel Vadot - Port A to RX2 lane 67f126890aSEmmanuel Vadot - Port B to TX2 lane 68f126890aSEmmanuel Vadot - Port C to TX1 lane 69f126890aSEmmanuel Vadot - Port D to RX1 lane 70f126890aSEmmanuel Vadot - items: 71f126890aSEmmanuel Vadot - const: 3 72f126890aSEmmanuel Vadot - const: 2 73f126890aSEmmanuel Vadot - const: 1 74f126890aSEmmanuel Vadot - const: 0 75f126890aSEmmanuel Vadot description: | 76f126890aSEmmanuel Vadot This is the USBRX2/USBTX2 and USBRX1/USBTX1 swapped lanes layout 77f126890aSEmmanuel Vadot - Port A to RX1 lane 78f126890aSEmmanuel Vadot - Port B to TX1 lane 79f126890aSEmmanuel Vadot - Port C to TX2 lane 80f126890aSEmmanuel Vadot - Port D to RX2 lane 81f126890aSEmmanuel Vadot 82f126890aSEmmanuel Vadot port@2: 83f126890aSEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 84f126890aSEmmanuel Vadot description: 85f126890aSEmmanuel Vadot Sideband Use (SBU) AUX lines endpoint to the Type-C connector for the purpose of 86f126890aSEmmanuel Vadot handling altmode muxing and orientation switching. 87f126890aSEmmanuel Vadot 88f126890aSEmmanuel Vadotrequired: 89f126890aSEmmanuel Vadot - compatible 90f126890aSEmmanuel Vadot - reg 91f126890aSEmmanuel Vadot 92*01950c46SEmmanuel VadotallOf: 93*01950c46SEmmanuel Vadot - $ref: usb-switch.yaml# 94*01950c46SEmmanuel Vadot 95f126890aSEmmanuel VadotadditionalProperties: false 96f126890aSEmmanuel Vadot 97f126890aSEmmanuel Vadotexamples: 98f126890aSEmmanuel Vadot - | 99f126890aSEmmanuel Vadot i2c { 100f126890aSEmmanuel Vadot #address-cells = <1>; 101f126890aSEmmanuel Vadot #size-cells = <0>; 102f126890aSEmmanuel Vadot 103f126890aSEmmanuel Vadot typec-mux@32 { 104f126890aSEmmanuel Vadot compatible = "onnn,nb7vpq904m"; 105f126890aSEmmanuel Vadot reg = <0x32>; 106f126890aSEmmanuel Vadot 107f126890aSEmmanuel Vadot vcc-supply = <&vreg_l15b_1p8>; 108f126890aSEmmanuel Vadot 109f126890aSEmmanuel Vadot retimer-switch; 110f126890aSEmmanuel Vadot orientation-switch; 111f126890aSEmmanuel Vadot 112f126890aSEmmanuel Vadot ports { 113f126890aSEmmanuel Vadot #address-cells = <1>; 114f126890aSEmmanuel Vadot #size-cells = <0>; 115f126890aSEmmanuel Vadot 116f126890aSEmmanuel Vadot port@0 { 117f126890aSEmmanuel Vadot reg = <0>; 118f126890aSEmmanuel Vadot usb_con_ss: endpoint { 119f126890aSEmmanuel Vadot remote-endpoint = <&typec_con_ss>; 120f126890aSEmmanuel Vadot }; 121f126890aSEmmanuel Vadot }; 122f126890aSEmmanuel Vadot port@1 { 123f126890aSEmmanuel Vadot reg = <1>; 124f126890aSEmmanuel Vadot phy_con_ss: endpoint { 125f126890aSEmmanuel Vadot remote-endpoint = <&usb_phy_ss>; 126f126890aSEmmanuel Vadot data-lanes = <3 2 1 0>; 127f126890aSEmmanuel Vadot }; 128f126890aSEmmanuel Vadot }; 129f126890aSEmmanuel Vadot port@2 { 130f126890aSEmmanuel Vadot reg = <2>; 131f126890aSEmmanuel Vadot usb_con_sbu: endpoint { 132f126890aSEmmanuel Vadot remote-endpoint = <&typec_dp_aux>; 133f126890aSEmmanuel Vadot }; 134f126890aSEmmanuel Vadot }; 135f126890aSEmmanuel Vadot }; 136f126890aSEmmanuel Vadot }; 137f126890aSEmmanuel Vadot }; 138f126890aSEmmanuel Vadot... 139