xref: /freebsd/sys/contrib/device-tree/Bindings/usb/analogix,anx7411.yaml (revision b97ee269eae3cbaf35c18f51a459aea581c2a7dc)
1*b97ee269SEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2*b97ee269SEmmanuel Vadot%YAML 1.2
3*b97ee269SEmmanuel Vadot---
4*b97ee269SEmmanuel Vadot$id: http://devicetree.org/schemas/usb/analogix,anx7411.yaml#
5*b97ee269SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*b97ee269SEmmanuel Vadot
7*b97ee269SEmmanuel Vadottitle: Analogix ANX7411 Type-C controller bindings
8*b97ee269SEmmanuel Vadot
9*b97ee269SEmmanuel Vadotmaintainers:
10*b97ee269SEmmanuel Vadot  - Xin Ji <xji@analogixsemi.com>
11*b97ee269SEmmanuel Vadot
12*b97ee269SEmmanuel Vadotproperties:
13*b97ee269SEmmanuel Vadot  compatible:
14*b97ee269SEmmanuel Vadot    enum:
15*b97ee269SEmmanuel Vadot      - analogix,anx7411
16*b97ee269SEmmanuel Vadot
17*b97ee269SEmmanuel Vadot  reg:
18*b97ee269SEmmanuel Vadot    maxItems: 1
19*b97ee269SEmmanuel Vadot
20*b97ee269SEmmanuel Vadot  interrupts:
21*b97ee269SEmmanuel Vadot    maxItems: 1
22*b97ee269SEmmanuel Vadot
23*b97ee269SEmmanuel Vadot  connector:
24*b97ee269SEmmanuel Vadot    type: object
25*b97ee269SEmmanuel Vadot    $ref: ../connector/usb-connector.yaml
26*b97ee269SEmmanuel Vadot    description:
27*b97ee269SEmmanuel Vadot      Properties for usb c connector.
28*b97ee269SEmmanuel Vadot
29*b97ee269SEmmanuel Vadot    properties:
30*b97ee269SEmmanuel Vadot      compatible:
31*b97ee269SEmmanuel Vadot        const: usb-c-connector
32*b97ee269SEmmanuel Vadot
33*b97ee269SEmmanuel Vadot      power-role: true
34*b97ee269SEmmanuel Vadot
35*b97ee269SEmmanuel Vadot      data-role: true
36*b97ee269SEmmanuel Vadot
37*b97ee269SEmmanuel Vadot      try-power-role: true
38*b97ee269SEmmanuel Vadot
39*b97ee269SEmmanuel Vadot    required:
40*b97ee269SEmmanuel Vadot      - compatible
41*b97ee269SEmmanuel Vadot
42*b97ee269SEmmanuel Vadotrequired:
43*b97ee269SEmmanuel Vadot  - compatible
44*b97ee269SEmmanuel Vadot  - reg
45*b97ee269SEmmanuel Vadot  - connector
46*b97ee269SEmmanuel Vadot
47*b97ee269SEmmanuel VadotadditionalProperties: false
48*b97ee269SEmmanuel Vadot
49*b97ee269SEmmanuel Vadotexamples:
50*b97ee269SEmmanuel Vadot  - |
51*b97ee269SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/irq.h>
52*b97ee269SEmmanuel Vadot    i2c {
53*b97ee269SEmmanuel Vadot        #address-cells = <1>;
54*b97ee269SEmmanuel Vadot        #size-cells = <0>;
55*b97ee269SEmmanuel Vadot
56*b97ee269SEmmanuel Vadot        typec@2c {
57*b97ee269SEmmanuel Vadot            compatible = "analogix,anx7411";
58*b97ee269SEmmanuel Vadot            reg = <0x2c>;
59*b97ee269SEmmanuel Vadot            interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
60*b97ee269SEmmanuel Vadot            interrupt-parent = <&gpio0>;
61*b97ee269SEmmanuel Vadot
62*b97ee269SEmmanuel Vadot            typec_con: connector {
63*b97ee269SEmmanuel Vadot                compatible = "usb-c-connector";
64*b97ee269SEmmanuel Vadot                power-role = "dual";
65*b97ee269SEmmanuel Vadot                data-role = "dual";
66*b97ee269SEmmanuel Vadot                try-power-role = "source";
67*b97ee269SEmmanuel Vadot
68*b97ee269SEmmanuel Vadot                ports {
69*b97ee269SEmmanuel Vadot                    #address-cells = <1>;
70*b97ee269SEmmanuel Vadot                    #size-cells = <0>;
71*b97ee269SEmmanuel Vadot                    port@0 {
72*b97ee269SEmmanuel Vadot                        reg = <0>;
73*b97ee269SEmmanuel Vadot                        typec_con_ep: endpoint {
74*b97ee269SEmmanuel Vadot                            remote-endpoint = <&usbotg_hs_ep>;
75*b97ee269SEmmanuel Vadot                        };
76*b97ee269SEmmanuel Vadot                    };
77*b97ee269SEmmanuel Vadot                };
78*b97ee269SEmmanuel Vadot            };
79*b97ee269SEmmanuel Vadot        };
80*b97ee269SEmmanuel Vadot    };
81*b97ee269SEmmanuel Vadot...
82