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