xref: /freebsd/sys/contrib/device-tree/Bindings/platform/lenovo,yoga-c630-ec.yaml (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
1*0e8011faSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*0e8011faSEmmanuel Vadot%YAML 1.2
3*0e8011faSEmmanuel Vadot---
4*0e8011faSEmmanuel Vadot$id: http://devicetree.org/schemas/platform/lenovo,yoga-c630-ec.yaml#
5*0e8011faSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*0e8011faSEmmanuel Vadot
7*0e8011faSEmmanuel Vadottitle: Lenovo Yoga C630 Embedded Controller.
8*0e8011faSEmmanuel Vadot
9*0e8011faSEmmanuel Vadotmaintainers:
10*0e8011faSEmmanuel Vadot  - Bjorn Andersson <andersson@kernel.org>
11*0e8011faSEmmanuel Vadot
12*0e8011faSEmmanuel Vadotdescription:
13*0e8011faSEmmanuel Vadot  The Qualcomm Snapdragon-based Lenovo Yoga C630 has an Embedded Controller
14*0e8011faSEmmanuel Vadot  (EC) which handles things such as battery and USB Type-C. This binding
15*0e8011faSEmmanuel Vadot  describes the interface, on an I2C bus, to this EC.
16*0e8011faSEmmanuel Vadot
17*0e8011faSEmmanuel Vadotproperties:
18*0e8011faSEmmanuel Vadot  compatible:
19*0e8011faSEmmanuel Vadot    const: lenovo,yoga-c630-ec
20*0e8011faSEmmanuel Vadot
21*0e8011faSEmmanuel Vadot  reg:
22*0e8011faSEmmanuel Vadot    const: 0x70
23*0e8011faSEmmanuel Vadot
24*0e8011faSEmmanuel Vadot  '#address-cells':
25*0e8011faSEmmanuel Vadot    const: 1
26*0e8011faSEmmanuel Vadot
27*0e8011faSEmmanuel Vadot  '#size-cells':
28*0e8011faSEmmanuel Vadot    const: 0
29*0e8011faSEmmanuel Vadot
30*0e8011faSEmmanuel Vadot  interrupts:
31*0e8011faSEmmanuel Vadot    maxItems: 1
32*0e8011faSEmmanuel Vadot
33*0e8011faSEmmanuel VadotpatternProperties:
34*0e8011faSEmmanuel Vadot  '^connector@[01]$':
35*0e8011faSEmmanuel Vadot    $ref: /schemas/connector/usb-connector.yaml#
36*0e8011faSEmmanuel Vadot
37*0e8011faSEmmanuel Vadot    properties:
38*0e8011faSEmmanuel Vadot      reg:
39*0e8011faSEmmanuel Vadot        maxItems: 1
40*0e8011faSEmmanuel Vadot
41*0e8011faSEmmanuel Vadot    unevaluatedProperties: false
42*0e8011faSEmmanuel Vadot
43*0e8011faSEmmanuel Vadotrequired:
44*0e8011faSEmmanuel Vadot  - compatible
45*0e8011faSEmmanuel Vadot  - reg
46*0e8011faSEmmanuel Vadot  - interrupts
47*0e8011faSEmmanuel Vadot
48*0e8011faSEmmanuel VadotadditionalProperties: false
49*0e8011faSEmmanuel Vadot
50*0e8011faSEmmanuel Vadotexamples:
51*0e8011faSEmmanuel Vadot  - |+
52*0e8011faSEmmanuel Vadot    #include <dt-bindings/interrupt-controller/irq.h>
53*0e8011faSEmmanuel Vadot    i2c1 {
54*0e8011faSEmmanuel Vadot        clock-frequency = <400000>;
55*0e8011faSEmmanuel Vadot
56*0e8011faSEmmanuel Vadot        #address-cells = <1>;
57*0e8011faSEmmanuel Vadot        #size-cells = <0>;
58*0e8011faSEmmanuel Vadot
59*0e8011faSEmmanuel Vadot        embedded-controller@70 {
60*0e8011faSEmmanuel Vadot            compatible = "lenovo,yoga-c630-ec";
61*0e8011faSEmmanuel Vadot            reg = <0x70>;
62*0e8011faSEmmanuel Vadot
63*0e8011faSEmmanuel Vadot            interrupts-extended = <&tlmm 20 IRQ_TYPE_LEVEL_HIGH>;
64*0e8011faSEmmanuel Vadot
65*0e8011faSEmmanuel Vadot            #address-cells = <1>;
66*0e8011faSEmmanuel Vadot            #size-cells = <0>;
67*0e8011faSEmmanuel Vadot
68*0e8011faSEmmanuel Vadot            connector@0 {
69*0e8011faSEmmanuel Vadot                compatible = "usb-c-connector";
70*0e8011faSEmmanuel Vadot                reg = <0>;
71*0e8011faSEmmanuel Vadot                power-role = "source";
72*0e8011faSEmmanuel Vadot                data-role = "host";
73*0e8011faSEmmanuel Vadot            };
74*0e8011faSEmmanuel Vadot
75*0e8011faSEmmanuel Vadot            connector@1 {
76*0e8011faSEmmanuel Vadot                compatible = "usb-c-connector";
77*0e8011faSEmmanuel Vadot                reg = <1>;
78*0e8011faSEmmanuel Vadot                power-role = "source";
79*0e8011faSEmmanuel Vadot                data-role = "host";
80*0e8011faSEmmanuel Vadot            };
81*0e8011faSEmmanuel Vadot        };
82*0e8011faSEmmanuel Vadot    };
83*0e8011faSEmmanuel Vadot...
84