Message ID | 9382254831bb6ed8c228398a68896b0e8e61c7c4.1663254344.git.chiaen_wu@richtek.com |
---|---|
State | New |
Headers | show |
Series | Add MediaTek MT6370 PMIC support | expand |
Hi, On Thu, Sep 15, 2022 at 05:47:29PM +0800, ChiaEn Wu wrote: > From: ChiaEn Wu <chiaen_wu@richtek.com> > > Add MediaTek MT6370 Charger binding documentation. > > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > Signed-off-by: ChiaEn Wu <chiaen_wu@richtek.com> > --- > v11 > - Add more detailed description of irqs. > - Adujust the order of irqs > --- Thanks, queued. -- Sebastian > .../power/supply/mediatek,mt6370-charger.yaml | 96 ++++++++++++++++++++++ > 1 file changed, 96 insertions(+) > create mode 100644 Documentation/devicetree/bindings/power/supply/mediatek,mt6370-charger.yaml > > diff --git a/Documentation/devicetree/bindings/power/supply/mediatek,mt6370-charger.yaml b/Documentation/devicetree/bindings/power/supply/mediatek,mt6370-charger.yaml > new file mode 100644 > index 0000000..fd491c5 > --- /dev/null > +++ b/Documentation/devicetree/bindings/power/supply/mediatek,mt6370-charger.yaml > @@ -0,0 +1,96 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/power/supply/mediatek,mt6370-charger.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: MediaTek MT6370 Battery Charger > + > +maintainers: > + - ChiaEn Wu <chiaen_wu@richtek.com> > + > +description: | > + This module is part of the MT6370 MFD device. > + Provides Battery Charger, Boost for OTG devices and BC1.2 detection. > + > +properties: > + compatible: > + const: mediatek,mt6370-charger > + > + interrupts: > + description: | > + Specify what irqs are needed to be handled by MT6370 Charger driver. > + We need to use the IRQ "MT6370_IRQ_OVPCTRL_UVP_D" to know when USB > + is plugged in, and then the driver will enable BC1.2 detection. > + After the hardware of MT6370 completes the BC1.2 detection, > + IRQ "MT6370_IRQ_ATTACH" will be triggered, and the driver will know > + the result of BC1.2 detection. > + When the IRQ "MT6370_IRQ_CHG_MIVR" is triggered, it means that the > + hardware enters the "Minimum Input Voltage Regulation loop" and > + a workaround needs to be applied at this time. > + In summary, "MT6370_IRQ_OVPCTRL_UVP_D", "MT6370_IRQ_ATTACH" and > + "MT6370_IRQ_CHG_MIVR" are required in this charger driver. > + items: > + - description: irq of "USB is plugged in" > + - description: irq of "BC1.2 is done" > + - description: irq of "Minimum Input Voltage Regulation loop is active" > + > + interrupt-names: > + items: > + - const: uvp_d_evt > + - const: attach_i > + - const: mivr > + > + io-channels: > + description: | > + Use ADC channel to read VBUS, IBUS, IBAT, etc., info. > + minItems: 1 > + items: > + - description: | > + VBUS voltage with lower accuracy (+-75mV) but higher measure > + range (1~22V) > + - description: | > + VBUS voltage with higher accuracy (+-30mV) but lower measure > + range (1~9.76V) > + - description: the main system input voltage > + - description: battery voltage > + - description: battery temperature-sense input voltage > + - description: IBUS current (required) > + - description: battery current > + - description: | > + regulated output voltage to supply for the PWM low-side gate driver > + and the bootstrap capacitor > + - description: IC junction temperature > + > + io-channel-names: > + minItems: 1 > + items: > + - const: vbusdiv5 > + - const: vbusdiv2 > + - const: vsys > + - const: vbat > + - const: ts_bat > + - const: ibus > + - const: ibat > + - const: chg_vddp > + - const: temp_jc > + > + usb-otg-vbus-regulator: > + type: object > + description: OTG boost regulator. > + unevaluatedProperties: false > + $ref: /schemas/regulator/regulator.yaml# > + > + properties: > + enable-gpios: > + maxItems: 1 > + > +required: > + - compatible > + - interrupts > + - interrupt-names > + - io-channels > + > +additionalProperties: false > + > +... > -- > 2.7.4 >
On Thu, Sep 15, 2022 at 4:49 AM ChiaEn Wu <peterwu.pub@gmail.com> wrote: > > From: ChiaEn Wu <chiaen_wu@richtek.com> > > Add MediaTek MT6370 Charger binding documentation. > > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > Signed-off-by: ChiaEn Wu <chiaen_wu@richtek.com> > --- > v11 > - Add more detailed description of irqs. > - Adujust the order of irqs > --- > .../power/supply/mediatek,mt6370-charger.yaml | 96 ++++++++++++++++++++++ > 1 file changed, 96 insertions(+) > create mode 100644 Documentation/devicetree/bindings/power/supply/mediatek,mt6370-charger.yaml > > diff --git a/Documentation/devicetree/bindings/power/supply/mediatek,mt6370-charger.yaml b/Documentation/devicetree/bindings/power/supply/mediatek,mt6370-charger.yaml > new file mode 100644 > index 0000000..fd491c5 > --- /dev/null > +++ b/Documentation/devicetree/bindings/power/supply/mediatek,mt6370-charger.yaml > @@ -0,0 +1,96 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/power/supply/mediatek,mt6370-charger.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: MediaTek MT6370 Battery Charger > + > +maintainers: > + - ChiaEn Wu <chiaen_wu@richtek.com> > + > +description: | > + This module is part of the MT6370 MFD device. > + Provides Battery Charger, Boost for OTG devices and BC1.2 detection. > + > +properties: > + compatible: > + const: mediatek,mt6370-charger > + > + interrupts: > + description: | > + Specify what irqs are needed to be handled by MT6370 Charger driver. > + We need to use the IRQ "MT6370_IRQ_OVPCTRL_UVP_D" to know when USB > + is plugged in, and then the driver will enable BC1.2 detection. > + After the hardware of MT6370 completes the BC1.2 detection, > + IRQ "MT6370_IRQ_ATTACH" will be triggered, and the driver will know > + the result of BC1.2 detection. > + When the IRQ "MT6370_IRQ_CHG_MIVR" is triggered, it means that the > + hardware enters the "Minimum Input Voltage Regulation loop" and > + a workaround needs to be applied at this time. > + In summary, "MT6370_IRQ_OVPCTRL_UVP_D", "MT6370_IRQ_ATTACH" and > + "MT6370_IRQ_CHG_MIVR" are required in this charger driver. > + items: > + - description: irq of "USB is plugged in" > + - description: irq of "BC1.2 is done" > + - description: irq of "Minimum Input Voltage Regulation loop is active" > + > + interrupt-names: > + items: > + - const: uvp_d_evt > + - const: attach_i > + - const: mivr Now warning in linux-next: /builds/robherring/linux-dt/Documentation/devicetree/bindings/mfd/mediatek,mt6370.example.dtb: charger: interrupt-names:0: 'uvp_d_evt' was expected From schema: /builds/robherring/linux-dt/Documentation/devicetree/bindings/power/supply/mediatek,mt6370-charger.yaml /builds/robherring/linux-dt/Documentation/devicetree/bindings/mfd/mediatek,mt6370.example.dtb: charger: interrupt-names:1: 'attach_i' was expected From schema: /builds/robherring/linux-dt/Documentation/devicetree/bindings/power/supply/mediatek,mt6370-charger.yaml
Hi, On Mon, Sep 26, 2022 at 09:52:06AM -0500, Rob Herring wrote: > On Thu, Sep 15, 2022 at 4:49 AM ChiaEn Wu <peterwu.pub@gmail.com> wrote: > > > > From: ChiaEn Wu <chiaen_wu@richtek.com> > > > > Add MediaTek MT6370 Charger binding documentation. > > > > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > > Signed-off-by: ChiaEn Wu <chiaen_wu@richtek.com> > > --- > > v11 > > - Add more detailed description of irqs. > > - Adujust the order of irqs > > --- > > .../power/supply/mediatek,mt6370-charger.yaml | 96 ++++++++++++++++++++++ > > 1 file changed, 96 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/power/supply/mediatek,mt6370-charger.yaml > > > > diff --git a/Documentation/devicetree/bindings/power/supply/mediatek,mt6370-charger.yaml b/Documentation/devicetree/bindings/power/supply/mediatek,mt6370-charger.yaml > > new file mode 100644 > > index 0000000..fd491c5 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/power/supply/mediatek,mt6370-charger.yaml > > @@ -0,0 +1,96 @@ > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/power/supply/mediatek,mt6370-charger.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: MediaTek MT6370 Battery Charger > > + > > +maintainers: > > + - ChiaEn Wu <chiaen_wu@richtek.com> > > + > > +description: | > > + This module is part of the MT6370 MFD device. > > + Provides Battery Charger, Boost for OTG devices and BC1.2 detection. > > + > > +properties: > > + compatible: > > + const: mediatek,mt6370-charger > > + > > + interrupts: > > + description: | > > + Specify what irqs are needed to be handled by MT6370 Charger driver. > > + We need to use the IRQ "MT6370_IRQ_OVPCTRL_UVP_D" to know when USB > > + is plugged in, and then the driver will enable BC1.2 detection. > > + After the hardware of MT6370 completes the BC1.2 detection, > > + IRQ "MT6370_IRQ_ATTACH" will be triggered, and the driver will know > > + the result of BC1.2 detection. > > + When the IRQ "MT6370_IRQ_CHG_MIVR" is triggered, it means that the > > + hardware enters the "Minimum Input Voltage Regulation loop" and > > + a workaround needs to be applied at this time. > > + In summary, "MT6370_IRQ_OVPCTRL_UVP_D", "MT6370_IRQ_ATTACH" and > > + "MT6370_IRQ_CHG_MIVR" are required in this charger driver. > > + items: > > + - description: irq of "USB is plugged in" > > + - description: irq of "BC1.2 is done" > > + - description: irq of "Minimum Input Voltage Regulation loop is active" > > + > > + interrupt-names: > > + items: > > + - const: uvp_d_evt > > + - const: attach_i > > + - const: mivr > > Now warning in linux-next: > > /builds/robherring/linux-dt/Documentation/devicetree/bindings/mfd/mediatek,mt6370.example.dtb: > charger: interrupt-names:0: 'uvp_d_evt' was expected > From schema: /builds/robherring/linux-dt/Documentation/devicetree/bindings/power/supply/mediatek,mt6370-charger.yaml > /builds/robherring/linux-dt/Documentation/devicetree/bindings/mfd/mediatek,mt6370.example.dtb: > charger: interrupt-names:1: 'attach_i' was expected > From schema: /builds/robherring/linux-dt/Documentation/devicetree/bindings/power/supply/mediatek,mt6370-charger.yaml Looks like the example in the MFD binding has the order of uvp_d_evt and attach_i swapped. ChiaEn Wu, please send a fix. -- Sebastian
diff --git a/Documentation/devicetree/bindings/power/supply/mediatek,mt6370-charger.yaml b/Documentation/devicetree/bindings/power/supply/mediatek,mt6370-charger.yaml new file mode 100644 index 0000000..fd491c5 --- /dev/null +++ b/Documentation/devicetree/bindings/power/supply/mediatek,mt6370-charger.yaml @@ -0,0 +1,96 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/power/supply/mediatek,mt6370-charger.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: MediaTek MT6370 Battery Charger + +maintainers: + - ChiaEn Wu <chiaen_wu@richtek.com> + +description: | + This module is part of the MT6370 MFD device. + Provides Battery Charger, Boost for OTG devices and BC1.2 detection. + +properties: + compatible: + const: mediatek,mt6370-charger + + interrupts: + description: | + Specify what irqs are needed to be handled by MT6370 Charger driver. + We need to use the IRQ "MT6370_IRQ_OVPCTRL_UVP_D" to know when USB + is plugged in, and then the driver will enable BC1.2 detection. + After the hardware of MT6370 completes the BC1.2 detection, + IRQ "MT6370_IRQ_ATTACH" will be triggered, and the driver will know + the result of BC1.2 detection. + When the IRQ "MT6370_IRQ_CHG_MIVR" is triggered, it means that the + hardware enters the "Minimum Input Voltage Regulation loop" and + a workaround needs to be applied at this time. + In summary, "MT6370_IRQ_OVPCTRL_UVP_D", "MT6370_IRQ_ATTACH" and + "MT6370_IRQ_CHG_MIVR" are required in this charger driver. + items: + - description: irq of "USB is plugged in" + - description: irq of "BC1.2 is done" + - description: irq of "Minimum Input Voltage Regulation loop is active" + + interrupt-names: + items: + - const: uvp_d_evt + - const: attach_i + - const: mivr + + io-channels: + description: | + Use ADC channel to read VBUS, IBUS, IBAT, etc., info. + minItems: 1 + items: + - description: | + VBUS voltage with lower accuracy (+-75mV) but higher measure + range (1~22V) + - description: | + VBUS voltage with higher accuracy (+-30mV) but lower measure + range (1~9.76V) + - description: the main system input voltage + - description: battery voltage + - description: battery temperature-sense input voltage + - description: IBUS current (required) + - description: battery current + - description: | + regulated output voltage to supply for the PWM low-side gate driver + and the bootstrap capacitor + - description: IC junction temperature + + io-channel-names: + minItems: 1 + items: + - const: vbusdiv5 + - const: vbusdiv2 + - const: vsys + - const: vbat + - const: ts_bat + - const: ibus + - const: ibat + - const: chg_vddp + - const: temp_jc + + usb-otg-vbus-regulator: + type: object + description: OTG boost regulator. + unevaluatedProperties: false + $ref: /schemas/regulator/regulator.yaml# + + properties: + enable-gpios: + maxItems: 1 + +required: + - compatible + - interrupts + - interrupt-names + - io-channels + +additionalProperties: false + +...