On Sun, Feb 05, 2023 at 05:28:07PM +0200, Dmitry Baryshkov wrote: > From: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx> > > Add binding for the Embedded Controller found in the Qualcomm > Snapdragon-based Lenovo Yoga C630. > > Signed-off-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx> > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> > --- > .../power/supply/lenovo,yoga-c630-ec.yaml | 83 +++++++++++++++++++ > 1 file changed, 83 insertions(+) > create mode 100644 Documentation/devicetree/bindings/power/supply/lenovo,yoga-c630-ec.yaml > > diff --git a/Documentation/devicetree/bindings/power/supply/lenovo,yoga-c630-ec.yaml b/Documentation/devicetree/bindings/power/supply/lenovo,yoga-c630-ec.yaml > new file mode 100644 > index 000000000000..37977344f157 > --- /dev/null > +++ b/Documentation/devicetree/bindings/power/supply/lenovo,yoga-c630-ec.yaml > @@ -0,0 +1,83 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/power/supply/lenovo,yoga-c630-ec.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Lenovo Yoga C630 Embedded Controller. > + > +maintainers: > + - Bjorn Andersson <bjorn.andersson@xxxxxxxxxx> > + > +description: > + The Qualcomm Snapdragon-based Lenovo Yoga C630 has an Embedded Controller > + (EC) which handles things such as battery and USB Type-C. This binding > + describes the interface, on an I2C bus, to this EC. > + > +properties: > + compatible: > + const: lenovo,yoga-c630-ec > + > + reg: > + const: 0x70 > + > + '#address-cells': > + const: 1 > + > + '#size-cells': > + const: 0 > + > + interrupts: > + maxItems: 1 > + > +patternProperties: > + '^connector@[01]$': > + $ref: /schemas/connector/usb-connector.yaml# > + > + properties: > + reg: > + maxItems: 1 > + > + unevaluatedProperties: false > + > +required: > + - compatible > + - reg > + - interrupts > + > +additionalProperties: false > + > +examples: > + - |+ > + #include <dt-bindings/interrupt-controller/irq.h> > + i2c1 { i2c { > + clock-frequency = <400000>; Not relevant to the example. > + > + #address-cells = <1>; > + #size-cells = <0>; > + > + embedded-controller@70 { > + compatible = "lenovo,yoga-c630-ec"; > + reg = <0x70>; > + > + interrupts-extended = <&tlmm 20 IRQ_TYPE_LEVEL_HIGH>; > + > + #address-cells = <1>; > + #size-cells = <0>; > + > + connector@0 { > + compatible = "usb-c-connector"; > + reg = <0>; > + power-role = "source"; > + data-role = "host"; > + }; > + > + connector@1 { > + compatible = "usb-c-connector"; > + reg = <1>; > + power-role = "source"; > + data-role = "host"; > + }; > + }; > + }; > +... > -- > 2.39.1 >