Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: platform: Add Lenovo Yoga C630 EC

Add binding for the Embedded Controller found in the Qualcomm
Snapdragon-based Lenovo Yoga C630.

Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20240614-yoga-ec-driver-v7-1-9f0b9b40ae76@linaro.org
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

authored by

Bjorn Andersson and committed by
Ilpo Järvinen
5958448d 1613e604

+83
+83
Documentation/devicetree/bindings/platform/lenovo,yoga-c630-ec.yaml
··· 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 <andersson@kernel.org> 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 + ...