# 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>;
                            };
                    };
            };
    };
...
