File tree Expand file tree Collapse file tree 6 files changed +434
-1
lines changed
Documentation/devicetree/bindings/platform
include/linux/platform_data Expand file tree Collapse file tree 6 files changed +434
-1
lines changed Original file line number Diff line number Diff line change
1
+ # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2
+ %YAML 1.2
3
+ ---
4
+ $id : http://devicetree.org/schemas/platform/lenovo,yoga-c630-ec.yaml#
5
+ $schema : http://devicetree.org/meta-schemas/core.yaml#
6
+
7
+ title : Lenovo Yoga C630 Embedded Controller.
8
+
9
+ maintainers :
10
+ -
Bjorn Andersson <[email protected] >
11
+
12
+ description :
13
+ The Qualcomm Snapdragon-based Lenovo Yoga C630 has an Embedded Controller
14
+ (EC) which handles things such as battery and USB Type-C. This binding
15
+ describes the interface, on an I2C bus, to this EC.
16
+
17
+ properties :
18
+ compatible :
19
+ const : lenovo,yoga-c630-ec
20
+
21
+ reg :
22
+ const : 0x70
23
+
24
+ ' #address-cells ' :
25
+ const : 1
26
+
27
+ ' #size-cells ' :
28
+ const : 0
29
+
30
+ interrupts :
31
+ maxItems : 1
32
+
33
+ patternProperties :
34
+ ' ^connector@[01]$ ' :
35
+ $ref : /schemas/connector/usb-connector.yaml#
36
+
37
+ properties :
38
+ reg :
39
+ maxItems : 1
40
+
41
+ unevaluatedProperties : false
42
+
43
+ required :
44
+ - compatible
45
+ - reg
46
+ - interrupts
47
+
48
+ additionalProperties : false
49
+
50
+ examples :
51
+ - |+
52
+ #include <dt-bindings/interrupt-controller/irq.h>
53
+ i2c1 {
54
+ clock-frequency = <400000>;
55
+
56
+ #address-cells = <1>;
57
+ #size-cells = <0>;
58
+
59
+ embedded-controller@70 {
60
+ compatible = "lenovo,yoga-c630-ec";
61
+ reg = <0x70>;
62
+
63
+ interrupts-extended = <&tlmm 20 IRQ_TYPE_LEVEL_HIGH>;
64
+
65
+ #address-cells = <1>;
66
+ #size-cells = <0>;
67
+
68
+ connector@0 {
69
+ compatible = "usb-c-connector";
70
+ reg = <0>;
71
+ power-role = "source";
72
+ data-role = "host";
73
+ };
74
+
75
+ connector@1 {
76
+ compatible = "usb-c-connector";
77
+ reg = <1>;
78
+ power-role = "source";
79
+ data-role = "host";
80
+ };
81
+ };
82
+ };
83
+ ...
Original file line number Diff line number Diff line change @@ -11,4 +11,4 @@ obj-$(CONFIG_OLPC_EC) += olpc/
11
11
obj-$(CONFIG_GOLDFISH) += goldfish/
12
12
obj-$(CONFIG_CHROME_PLATFORMS) += chrome/
13
13
obj-$(CONFIG_SURFACE_PLATFORMS) += surface/
14
- obj-$(CONFIG_ARM64) += arm64/
14
+ obj-$(CONFIG_ARM64_PLATFORM_DEVICES) += arm64/
Original file line number Diff line number Diff line change @@ -32,4 +32,18 @@ config EC_ACER_ASPIRE1
32
32
laptop where this information is not properly exposed via the
33
33
standard ACPI devices.
34
34
35
+ config EC_LENOVO_YOGA_C630
36
+ tristate "Lenovo Yoga C630 Embedded Controller driver"
37
+ depends on I2C
38
+ help
39
+ Driver for the Embedded Controller in the Qualcomm Snapdragon-based
40
+ Lenovo Yoga C630, which provides battery and power adapter
41
+ information.
42
+
43
+ This driver provides battery and AC status support for the mentioned
44
+ laptop where this information is not properly exposed via the
45
+ standard ACPI devices.
46
+
47
+ Say M or Y here to include this support.
48
+
35
49
endif # ARM64_PLATFORM_DEVICES
Original file line number Diff line number Diff line change 6
6
#
7
7
8
8
obj-$(CONFIG_EC_ACER_ASPIRE1) += acer-aspire1-ec.o
9
+ obj-$(CONFIG_EC_LENOVO_YOGA_C630) += lenovo-yoga-c630.o
You can’t perform that action at this time.
0 commit comments