122282276SAlexandre Mergnat# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 222282276SAlexandre Mergnat%YAML 1.2 322282276SAlexandre Mergnat--- 422282276SAlexandre Mergnat$id: http://devicetree.org/schemas/mfd/mediatek,mt6357.yaml# 522282276SAlexandre Mergnat$schema: http://devicetree.org/meta-schemas/core.yaml# 622282276SAlexandre Mergnat 722282276SAlexandre Mergnattitle: MediaTek MT6357 PMIC 822282276SAlexandre Mergnat 922282276SAlexandre Mergnatmaintainers: 1022282276SAlexandre Mergnat - Flora Fu <flora.fu@mediatek.com> 1122282276SAlexandre Mergnat - Alexandre Mergnat <amergnat@baylibre.com> 1222282276SAlexandre Mergnat 1322282276SAlexandre Mergnatdescription: | 1422282276SAlexandre Mergnat MT6357 is a power management system chip containing 5 buck 1522282276SAlexandre Mergnat converters and 29 LDOs. Supported features are audio codec, 1622282276SAlexandre Mergnat USB battery charging, fuel gauge, RTC 1722282276SAlexandre Mergnat 1822282276SAlexandre Mergnat This is a multifunction device with the following sub modules: 1922282276SAlexandre Mergnat - Regulator 2022282276SAlexandre Mergnat - RTC 2122282276SAlexandre Mergnat - Keys 2222282276SAlexandre Mergnat 2322282276SAlexandre Mergnat It is interfaced to host controller using SPI interface by a proprietary hardware 2422282276SAlexandre Mergnat called PMIC wrapper or pwrap. This MFD is a child device of pwrap. 2522282276SAlexandre Mergnat See the following for pwrap node definitions: 2622282276SAlexandre Mergnat Documentation/devicetree/bindings/soc/mediatek/mediatek,pwrap.yaml 2722282276SAlexandre Mergnat 2822282276SAlexandre Mergnatproperties: 2922282276SAlexandre Mergnat compatible: 3022282276SAlexandre Mergnat const: mediatek,mt6357 3122282276SAlexandre Mergnat 3222282276SAlexandre Mergnat interrupts: 3322282276SAlexandre Mergnat maxItems: 1 3422282276SAlexandre Mergnat 3522282276SAlexandre Mergnat interrupt-controller: true 3622282276SAlexandre Mergnat 3722282276SAlexandre Mergnat "#interrupt-cells": 3822282276SAlexandre Mergnat const: 2 3922282276SAlexandre Mergnat 4022282276SAlexandre Mergnat regulators: 4122282276SAlexandre Mergnat type: object 4222282276SAlexandre Mergnat $ref: /schemas/regulator/mediatek,mt6357-regulator.yaml 4322282276SAlexandre Mergnat description: 4422282276SAlexandre Mergnat List of MT6357 BUCKs and LDOs regulators. 4522282276SAlexandre Mergnat 4622282276SAlexandre Mergnat rtc: 4722282276SAlexandre Mergnat type: object 4822282276SAlexandre Mergnat $ref: /schemas/rtc/rtc.yaml# 49*e62fc182SRob Herring unevaluatedProperties: false 5022282276SAlexandre Mergnat description: 5122282276SAlexandre Mergnat MT6357 Real Time Clock. 5222282276SAlexandre Mergnat properties: 5322282276SAlexandre Mergnat compatible: 5422282276SAlexandre Mergnat const: mediatek,mt6357-rtc 5522282276SAlexandre Mergnat start-year: true 5622282276SAlexandre Mergnat required: 5722282276SAlexandre Mergnat - compatible 5822282276SAlexandre Mergnat 5922282276SAlexandre Mergnat keys: 6022282276SAlexandre Mergnat type: object 6122282276SAlexandre Mergnat $ref: /schemas/input/mediatek,pmic-keys.yaml 6222282276SAlexandre Mergnat description: 6322282276SAlexandre Mergnat MT6357 power and home keys. 6422282276SAlexandre Mergnat 6522282276SAlexandre Mergnatrequired: 6622282276SAlexandre Mergnat - compatible 6722282276SAlexandre Mergnat - regulators 6822282276SAlexandre Mergnat 6922282276SAlexandre MergnatadditionalProperties: false 7022282276SAlexandre Mergnat 7122282276SAlexandre Mergnatexamples: 7222282276SAlexandre Mergnat - | 7322282276SAlexandre Mergnat #include <dt-bindings/interrupt-controller/arm-gic.h> 7422282276SAlexandre Mergnat 7522282276SAlexandre Mergnat pwrap { 7622282276SAlexandre Mergnat pmic { 7722282276SAlexandre Mergnat compatible = "mediatek,mt6357"; 7822282276SAlexandre Mergnat 7922282276SAlexandre Mergnat interrupt-parent = <&pio>; 8022282276SAlexandre Mergnat interrupts = <145 IRQ_TYPE_LEVEL_HIGH>; 8122282276SAlexandre Mergnat interrupt-controller; 8222282276SAlexandre Mergnat #interrupt-cells = <2>; 8322282276SAlexandre Mergnat 8422282276SAlexandre Mergnat regulators { 8522282276SAlexandre Mergnat mt6357_vproc_reg: buck-vproc { 8622282276SAlexandre Mergnat regulator-name = "vproc"; 8722282276SAlexandre Mergnat regulator-min-microvolt = <518750>; 8822282276SAlexandre Mergnat regulator-max-microvolt = <1312500>; 8922282276SAlexandre Mergnat regulator-ramp-delay = <6250>; 9022282276SAlexandre Mergnat regulator-enable-ramp-delay = <220>; 9122282276SAlexandre Mergnat regulator-always-on; 9222282276SAlexandre Mergnat }; 9322282276SAlexandre Mergnat 9422282276SAlexandre Mergnat // ... 9522282276SAlexandre Mergnat 9622282276SAlexandre Mergnat mt6357_vusb33_reg: ldo-vusb33 { 9722282276SAlexandre Mergnat regulator-name = "vusb33"; 9822282276SAlexandre Mergnat regulator-min-microvolt = <3000000>; 9922282276SAlexandre Mergnat regulator-max-microvolt = <3100000>; 10022282276SAlexandre Mergnat regulator-enable-ramp-delay = <264>; 10122282276SAlexandre Mergnat }; 10222282276SAlexandre Mergnat }; 10322282276SAlexandre Mergnat 10422282276SAlexandre Mergnat rtc { 10522282276SAlexandre Mergnat compatible = "mediatek,mt6357-rtc"; 10622282276SAlexandre Mergnat }; 10722282276SAlexandre Mergnat 10822282276SAlexandre Mergnat keys { 10922282276SAlexandre Mergnat compatible = "mediatek,mt6357-keys"; 11022282276SAlexandre Mergnat }; 11122282276SAlexandre Mergnat }; 11222282276SAlexandre Mergnat }; 113