# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/regulator/max8893.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Regulator driver for MAX8893 PMIC from Maxim Integrated.

maintainers:
  - Sergey Larin <cerg2010cerg2010@mail.ru>

description: |
  The device has 5 LDO regulators and a single BUCK regulator.
  Programming is done through I2C bus.

properties:
  compatible:
    const: maxim,max8893

  reg:
    maxItems: 1

  regulators:
    type: object

    patternProperties:
      "^(ldo[1-5]|buck)$":
        $ref: regulator.yaml#

    additionalProperties: false

additionalProperties: false

required:
  - compatible
  - reg
  - regulators

examples:
  - |
    i2c {
            #address-cells = <1>;
            #size-cells = <0>;

            pmic@3e {
                    compatible = "maxim,max8893";
                    reg = <0x3e>;

                    regulators {
                            /* Front camera - s5k6aafx, back - m5mo */
                            /* Numbers used to indicate the sequence */
                            front_1_back_1: buck {
                                    regulator-name = "cam_isp_core_1v2";
                                    regulator-min-microvolt = <1200000>;
                                    regulator-max-microvolt = <1200000>;
                            };

                            front_4_back_5: ldo1 {
                                    regulator-name = "vt_io_1v8,cam_isp_1v8";
                                    regulator-min-microvolt = <1800000>;
                                    regulator-max-microvolt = <1800000>;
                            };

                            front_3_back_4: ldo2 {
                                    regulator-name = "vt_core_1v5";
                                    regulator-min-microvolt = <1500000>;
                                    regulator-max-microvolt = <1500000>;
                            };

                            front_5_back_6: ldo3 {
                                    regulator-name = "vt_cam_1v8,vt_sensor_io_1v8";
                                    regulator-min-microvolt = <1800000>;
                                    regulator-max-microvolt = <1800000>;
                            };

                            ldo4 {
                                    /* not used */
                            };

                            back_7: ldo5 {
                                    regulator-name = "cam_sensor_io_1v8";
                                    regulator-min-microvolt = <1800000>;
                                    regulator-max-microvolt = <1800000>;
                            };
                    };
            };
    };
...