# SPDX-License-Identifier: GPL-2.0-only %YAML 1.2 --- $id: http://devicetree.org/schemas/mfd/maxim,max14577.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Maxim MAX14577/MAX77836 MicroUSB and Companion Power Management IC maintainers: - Krzysztof Kozlowski <krzk@kernel.org> description: | This is a part of device tree bindings for Maxim MAX14577/MAX77836 MicroUSB Integrated Circuit (MUIC). The Maxim MAX14577 is a MicroUSB and Companion Power Management IC which includes voltage safeout regulators, charger and MicroUSB management IC. The Maxim MAX77836 is a MicroUSB and Companion Power Management IC which includes voltage safeout and LDO regulators, charger, fuel-gauge and MicroUSB management IC. properties: compatible: enum: - maxim,max14577 - maxim,max77836 interrupts: maxItems: 1 reg: maxItems: 1 wakeup-source: true charger: $ref: /schemas/power/supply/maxim,max14577.yaml extcon: type: object additionalProperties: false properties: compatible: enum: - maxim,max14577-muic - maxim,max77836-muic required: - compatible regulators: $ref: /schemas/regulator/maxim,max14577.yaml required: - compatible - interrupts - reg - charger allOf: - if: properties: compatible: contains: const: maxim,max14577 then: properties: charger: properties: compatible: const: maxim,max14577-charger extcon: properties: compatible: const: maxim,max14577-muic regulator: properties: compatible: const: maxim,max14577-regulator else: properties: charger: properties: compatible: const: maxim,max77836-charger extcon: properties: compatible: const: maxim,max77836-muic regulator: properties: compatible: const: maxim,max77836-regulator additionalProperties: false examples: - | #include <dt-bindings/interrupt-controller/irq.h> i2c { #address-cells = <1>; #size-cells = <0>; pmic@25 { compatible = "maxim,max14577"; reg = <0x25>; interrupt-parent = <&gpx1>; interrupts = <5 IRQ_TYPE_LEVEL_LOW>; extcon { compatible = "maxim,max14577-muic"; }; regulators { compatible = "maxim,max14577-regulator"; SAFEOUT { regulator-name = "SAFEOUT"; }; CHARGER { regulator-name = "CHARGER"; regulator-min-microamp = <90000>; regulator-max-microamp = <950000>; regulator-boot-on; }; }; charger { compatible = "maxim,max14577-charger"; maxim,constant-uvolt = <4350000>; maxim,fast-charge-uamp = <450000>; maxim,eoc-uamp = <50000>; maxim,ovp-uvolt = <6500000>; }; }; }; - | #include <dt-bindings/interrupt-controller/irq.h> i2c { #address-cells = <1>; #size-cells = <0>; pmic@25 { compatible = "maxim,max77836"; interrupt-parent = <&gpx1>; interrupts = <5 IRQ_TYPE_NONE>; reg = <0x25>; wakeup-source; extcon { compatible = "maxim,max77836-muic"; }; regulators { compatible = "maxim,max77836-regulator"; SAFEOUT { regulator-name = "SAFEOUT"; }; CHARGER { regulator-name = "CHARGER"; regulator-min-microamp = <45000>; regulator-max-microamp = <475000>; regulator-boot-on; }; LDO1 { regulator-name = "MOT_2.7V"; regulator-min-microvolt = <1100000>; regulator-max-microvolt = <2700000>; }; LDO2 { regulator-name = "UNUSED_LDO2"; regulator-min-microvolt = <800000>; regulator-max-microvolt = <3950000>; }; }; charger { compatible = "maxim,max77836-charger"; maxim,constant-uvolt = <4350000>; maxim,fast-charge-uamp = <225000>; maxim,eoc-uamp = <7500>; maxim,ovp-uvolt = <6500000>; }; }; };