1*c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0 2*c66ec88fSEmmanuel Vadot%YAML 1.2 3*c66ec88fSEmmanuel Vadot--- 4*c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/mfd/max77650.yaml# 5*c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*c66ec88fSEmmanuel Vadot 7*c66ec88fSEmmanuel Vadottitle: MAX77650 ultra low-power PMIC from Maxim Integrated. 8*c66ec88fSEmmanuel Vadot 9*c66ec88fSEmmanuel Vadotmaintainers: 10*c66ec88fSEmmanuel Vadot - Bartosz Golaszewski <bgolaszewski@baylibre.com> 11*c66ec88fSEmmanuel Vadot 12*c66ec88fSEmmanuel Vadotdescription: | 13*c66ec88fSEmmanuel Vadot MAX77650 is an ultra-low power PMIC providing battery charging and power 14*c66ec88fSEmmanuel Vadot supply for low-power IoT and wearable applications. 15*c66ec88fSEmmanuel Vadot 16*c66ec88fSEmmanuel Vadot The GPIO-controller module is represented as part of the top-level PMIC 17*c66ec88fSEmmanuel Vadot node. The device exposes a single GPIO line. 18*c66ec88fSEmmanuel Vadot 19*c66ec88fSEmmanuel Vadot For device-tree bindings of other sub-modules (regulator, power supply, 20*c66ec88fSEmmanuel Vadot LEDs and onkey) refer to the binding documents under the respective 21*c66ec88fSEmmanuel Vadot sub-system directories. 22*c66ec88fSEmmanuel Vadot 23*c66ec88fSEmmanuel Vadotproperties: 24*c66ec88fSEmmanuel Vadot compatible: 25*c66ec88fSEmmanuel Vadot const: maxim,max77650 26*c66ec88fSEmmanuel Vadot 27*c66ec88fSEmmanuel Vadot reg: 28*c66ec88fSEmmanuel Vadot description: 29*c66ec88fSEmmanuel Vadot I2C device address. 30*c66ec88fSEmmanuel Vadot maxItems: 1 31*c66ec88fSEmmanuel Vadot 32*c66ec88fSEmmanuel Vadot interrupts: 33*c66ec88fSEmmanuel Vadot maxItems: 1 34*c66ec88fSEmmanuel Vadot 35*c66ec88fSEmmanuel Vadot interrupt-controller: true 36*c66ec88fSEmmanuel Vadot 37*c66ec88fSEmmanuel Vadot "#interrupt-cells": 38*c66ec88fSEmmanuel Vadot const: 2 39*c66ec88fSEmmanuel Vadot description: 40*c66ec88fSEmmanuel Vadot The first cell is the IRQ number, the second cell is the trigger type. 41*c66ec88fSEmmanuel Vadot 42*c66ec88fSEmmanuel Vadot gpio-controller: true 43*c66ec88fSEmmanuel Vadot 44*c66ec88fSEmmanuel Vadot "#gpio-cells": 45*c66ec88fSEmmanuel Vadot const: 2 46*c66ec88fSEmmanuel Vadot description: 47*c66ec88fSEmmanuel Vadot The first cell is the pin number and the second cell is used to specify 48*c66ec88fSEmmanuel Vadot the gpio active state. 49*c66ec88fSEmmanuel Vadot 50*c66ec88fSEmmanuel Vadot gpio-line-names: 51*c66ec88fSEmmanuel Vadot maxItems: 1 52*c66ec88fSEmmanuel Vadot description: 53*c66ec88fSEmmanuel Vadot Single string containing the name of the GPIO line. 54*c66ec88fSEmmanuel Vadot 55*c66ec88fSEmmanuel Vadot regulators: 56*c66ec88fSEmmanuel Vadot $ref: ../regulator/max77650-regulator.yaml 57*c66ec88fSEmmanuel Vadot 58*c66ec88fSEmmanuel Vadot charger: 59*c66ec88fSEmmanuel Vadot $ref: ../power/supply/max77650-charger.yaml 60*c66ec88fSEmmanuel Vadot 61*c66ec88fSEmmanuel Vadot leds: 62*c66ec88fSEmmanuel Vadot $ref: ../leds/leds-max77650.yaml 63*c66ec88fSEmmanuel Vadot 64*c66ec88fSEmmanuel Vadot onkey: 65*c66ec88fSEmmanuel Vadot $ref: ../input/max77650-onkey.yaml 66*c66ec88fSEmmanuel Vadot 67*c66ec88fSEmmanuel Vadotrequired: 68*c66ec88fSEmmanuel Vadot - compatible 69*c66ec88fSEmmanuel Vadot - reg 70*c66ec88fSEmmanuel Vadot - interrupts 71*c66ec88fSEmmanuel Vadot - interrupt-controller 72*c66ec88fSEmmanuel Vadot - "#interrupt-cells" 73*c66ec88fSEmmanuel Vadot - gpio-controller 74*c66ec88fSEmmanuel Vadot - "#gpio-cells" 75*c66ec88fSEmmanuel Vadot 76*c66ec88fSEmmanuel VadotadditionalProperties: false 77*c66ec88fSEmmanuel Vadot 78*c66ec88fSEmmanuel Vadotexamples: 79*c66ec88fSEmmanuel Vadot - | 80*c66ec88fSEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 81*c66ec88fSEmmanuel Vadot #include <dt-bindings/input/linux-event-codes.h> 82*c66ec88fSEmmanuel Vadot i2c { 83*c66ec88fSEmmanuel Vadot #address-cells = <1>; 84*c66ec88fSEmmanuel Vadot #size-cells = <0>; 85*c66ec88fSEmmanuel Vadot 86*c66ec88fSEmmanuel Vadot pmic@48 { 87*c66ec88fSEmmanuel Vadot compatible = "maxim,max77650"; 88*c66ec88fSEmmanuel Vadot reg = <0x48>; 89*c66ec88fSEmmanuel Vadot 90*c66ec88fSEmmanuel Vadot interrupt-controller; 91*c66ec88fSEmmanuel Vadot interrupt-parent = <&gpio2>; 92*c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 93*c66ec88fSEmmanuel Vadot interrupts = <3 IRQ_TYPE_LEVEL_LOW>; 94*c66ec88fSEmmanuel Vadot 95*c66ec88fSEmmanuel Vadot gpio-controller; 96*c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 97*c66ec88fSEmmanuel Vadot gpio-line-names = "max77650-charger"; 98*c66ec88fSEmmanuel Vadot 99*c66ec88fSEmmanuel Vadot regulators { 100*c66ec88fSEmmanuel Vadot compatible = "maxim,max77650-regulator"; 101*c66ec88fSEmmanuel Vadot 102*c66ec88fSEmmanuel Vadot max77650_ldo: regulator-ldo { 103*c66ec88fSEmmanuel Vadot regulator-name = "max77650-ldo"; 104*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <1350000>; 105*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <2937500>; 106*c66ec88fSEmmanuel Vadot }; 107*c66ec88fSEmmanuel Vadot 108*c66ec88fSEmmanuel Vadot max77650_sbb0: regulator-sbb0 { 109*c66ec88fSEmmanuel Vadot regulator-name = "max77650-sbb0"; 110*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <800000>; 111*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <1587500>; 112*c66ec88fSEmmanuel Vadot }; 113*c66ec88fSEmmanuel Vadot }; 114*c66ec88fSEmmanuel Vadot 115*c66ec88fSEmmanuel Vadot charger { 116*c66ec88fSEmmanuel Vadot compatible = "maxim,max77650-charger"; 117*c66ec88fSEmmanuel Vadot input-voltage-min-microvolt = <4200000>; 118*c66ec88fSEmmanuel Vadot input-current-limit-microamp = <285000>; 119*c66ec88fSEmmanuel Vadot }; 120*c66ec88fSEmmanuel Vadot 121*c66ec88fSEmmanuel Vadot leds { 122*c66ec88fSEmmanuel Vadot compatible = "maxim,max77650-led"; 123*c66ec88fSEmmanuel Vadot #address-cells = <1>; 124*c66ec88fSEmmanuel Vadot #size-cells = <0>; 125*c66ec88fSEmmanuel Vadot 126*c66ec88fSEmmanuel Vadot led@0 { 127*c66ec88fSEmmanuel Vadot reg = <0>; 128*c66ec88fSEmmanuel Vadot label = "blue:usr0"; 129*c66ec88fSEmmanuel Vadot }; 130*c66ec88fSEmmanuel Vadot 131*c66ec88fSEmmanuel Vadot led@1 { 132*c66ec88fSEmmanuel Vadot reg = <1>; 133*c66ec88fSEmmanuel Vadot label = "red:usr1"; 134*c66ec88fSEmmanuel Vadot linux,default-trigger = "heartbeat"; 135*c66ec88fSEmmanuel Vadot }; 136*c66ec88fSEmmanuel Vadot 137*c66ec88fSEmmanuel Vadot led@2 { 138*c66ec88fSEmmanuel Vadot reg = <2>; 139*c66ec88fSEmmanuel Vadot label = "green:usr2"; 140*c66ec88fSEmmanuel Vadot }; 141*c66ec88fSEmmanuel Vadot }; 142*c66ec88fSEmmanuel Vadot 143*c66ec88fSEmmanuel Vadot onkey { 144*c66ec88fSEmmanuel Vadot compatible = "maxim,max77650-onkey"; 145*c66ec88fSEmmanuel Vadot linux,code = <KEY_END>; 146*c66ec88fSEmmanuel Vadot maxim,onkey-slide; 147*c66ec88fSEmmanuel Vadot }; 148*c66ec88fSEmmanuel Vadot }; 149*c66ec88fSEmmanuel Vadot }; 150