Message ID | 20240527-yoga-ec-driver-v3-1-327a9851dad5@linaro.org (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | power: supply: Lenovo Yoga C630 EC | expand |
Dmitry Baryshkov писал(а) 27.05.2024 15:03: > From: Bjorn Andersson <andersson@kernel.org> > > Add binding for the Embedded Controller found in the Qualcomm > Snapdragon-based Lenovo Yoga C630. > > Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > --- > .../bindings/power/supply/lenovo,yoga-c630-ec.yaml | 83 ++++++++++++++++++++++ > 1 file changed, 83 insertions(+) > > 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..52a302850743 > --- /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# Should this binding join aspire1 one in bindings/platform ? Nikita > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Lenovo Yoga C630 Embedded Controller. > + > +maintainers: > + - Bjorn Andersson <andersson@kernel.org> > + > +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 { > + clock-frequency = <400000>; > + > + #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"; > + }; > + }; > + }; > +...
On Mon, May 27, 2024 at 03:21:27PM +0500, Nikita Travkin wrote: > Dmitry Baryshkov писал(а) 27.05.2024 15:03: > > From: Bjorn Andersson <andersson@kernel.org> > > > > Add binding for the Embedded Controller found in the Qualcomm > > Snapdragon-based Lenovo Yoga C630. > > > > Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> > > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > > --- > > .../bindings/power/supply/lenovo,yoga-c630-ec.yaml | 83 ++++++++++++++++++++++ > > 1 file changed, 83 insertions(+) > > > > 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..52a302850743 > > --- /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# > > Should this binding join aspire1 one in bindings/platform ? Good idea > > Nikita > > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: Lenovo Yoga C630 Embedded Controller. > > + > > +maintainers: > > + - Bjorn Andersson <andersson@kernel.org> > > + > > +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 { > > + clock-frequency = <400000>; > > + > > + #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"; > > + }; > > + }; > > + }; > > +...
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..52a302850743 --- /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 <andersson@kernel.org> + +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 { + clock-frequency = <400000>; + + #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"; + }; + }; + }; +...