# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/adc/sprd,sc2720-adc.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Spreadtrum SC27XX series PMICs ADC binding

maintainers:
  - Baolin Wang <baolin.wang7@gmail.com>

description:
  Supports the ADC found on these PMICs.

properties:
  compatible:
    enum:
      - sprd,sc2720-adc
      - sprd,sc2721-adc
      - sprd,sc2723-adc
      - sprd,sc2730-adc
      - sprd,sc2731-adc
      - sprd,ump9620-adc

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  "#io-channel-cells":
    const: 1

  hwlocks:
    maxItems: 1

  nvmem-cells: true

  nvmem-cell-names: true

allOf:
  - if:
      not:
        properties:
          compatible:
            contains:
              enum:
                - sprd,ump9620-adc
    then:
      properties:
        nvmem-cells:
          maxItems: 2
        nvmem-cell-names:
          items:
            - const: big_scale_calib
            - const: small_scale_calib

    else:
      properties:
        nvmem-cells:
          maxItems: 6
        nvmem-cell-names:
          items:
            - const: big_scale_calib1
            - const: big_scale_calib2
            - const: small_scale_calib1
            - const: small_scale_calib2
            - const: vbat_det_cal1
            - const: vbat_det_cal2

required:
  - compatible
  - reg
  - interrupts
  - "#io-channel-cells"
  - hwlocks
  - nvmem-cells
  - nvmem-cell-names

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>
    pmic {
        #address-cells = <1>;
        #size-cells = <0>;
        adc@480 {
            compatible = "sprd,sc2731-adc";
            reg = <0x480>;
            interrupt-parent = <&sc2731_pmic>;
            interrupts = <0 IRQ_TYPE_LEVEL_HIGH>;
            #io-channel-cells = <1>;
            hwlocks = <&hwlock 4>;
            nvmem-cells = <&adc_big_scale>, <&adc_small_scale>;
            nvmem-cell-names = "big_scale_calib", "small_scale_calib";
        };
    };

  - |
    #include <dt-bindings/interrupt-controller/irq.h>
    pmic {
        #address-cells = <1>;
        #size-cells = <0>;
        adc@504 {
            compatible = "sprd,ump9620-adc";
            reg = <0x504>;
            interrupt-parent = <&ump9620_pmic>;
            interrupts = <0 IRQ_TYPE_LEVEL_HIGH>;
            #io-channel-cells = <1>;
            hwlocks = <&hwlock 4>;
            nvmem-cells = <&adc_bcal1>, <&adc_bcal2>,
                          <&adc_scal1>, <&adc_scal2>,
                          <&vbat_det_cal1>, <&vbat_det_cal2>;
            nvmem-cell-names = "big_scale_calib1", "big_scale_calib2",
                               "small_scale_calib1", "small_scale_calib2",
                               "vbat_det_cal1", "vbat_det_cal2";
        };
    };
...
