blob: f9410eb76a621a2e6d1d98ab44f7bad3c37eb123 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/usb/fcs,fsa4480.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: ON Semiconductor Analog Audio Switch
8
9maintainers:
10 - Bjorn Andersson <bjorn.andersson@linaro.org>
11
12properties:
13 compatible:
14 oneOf:
15 - const: fcs,fsa4480
16 - items:
17 - enum:
18 - ocs,ocp96011
19 - const: fcs,fsa4480
20
21 reg:
22 maxItems: 1
23
24 interrupts:
25 maxItems: 1
26
27 vcc-supply:
28 description: power supply (2.7V-5.5V)
29
30 mode-switch:
31 description: Flag the port as possible handle of altmode switching
32 type: boolean
33
34 orientation-switch:
35 description: Flag the port as possible handler of orientation switching
36 type: boolean
37
38 port:
39 $ref: /schemas/graph.yaml#/$defs/port-base
40 description:
41 A port node to link the FSA4480 to a TypeC controller for the purpose of
42 handling altmode muxing and orientation switching.
43 unevaluatedProperties: false
44
45 properties:
46 endpoint:
47 $ref: /schemas/graph.yaml#/$defs/endpoint-base
48 unevaluatedProperties: false
49
50 properties:
51 data-lanes:
52 $ref: /schemas/types.yaml#/definitions/uint32-array
53 description:
54 Specifies how the AUX+/- lines are connected to SBU1/2.
55 oneOf:
56 - items:
57 - const: 0
58 - const: 1
59 description: |
60 Default AUX/SBU layout (FSA4480)
61 - AUX+ connected to SBU2
62 - AUX- connected to SBU1
63 Default AUX/SBU layout (OCP96011)
64 - AUX+ connected to SBU1
65 - AUX- connected to SBU2
66 - items:
67 - const: 1
68 - const: 0
69 description: |
70 Swapped AUX/SBU layout (FSA4480)
71 - AUX+ connected to SBU1
72 - AUX- connected to SBU2
73 Swapped AUX/SBU layout (OCP96011)
74 - AUX+ connected to SBU2
75 - AUX- connected to SBU1
76
77required:
78 - compatible
79 - reg
80 - port
81
82additionalProperties: false
83
84examples:
85 - |
86 #include <dt-bindings/interrupt-controller/irq.h>
87 i2c13 {
88 #address-cells = <1>;
89 #size-cells = <0>;
90
91 typec-mux@42 {
92 compatible = "fcs,fsa4480";
93 reg = <0x42>;
94
95 interrupts-extended = <&tlmm 2 IRQ_TYPE_LEVEL_LOW>;
96
97 vcc-supply = <&vreg_bob>;
98
99 mode-switch;
100 orientation-switch;
101
102 port {
103 fsa4480_ept: endpoint {
104 remote-endpoint = <&typec_controller>;
105 };
106 };
107 };
108 };
109...