Re: [PATCH V3 1/7] dt-bindings:iio:adc: add sprd,ump9620-adc dt-binding

From: Rob Herring
Date: Wed Apr 13 2022 - 15:15:03 EST


On Thu, Apr 07, 2022 at 04:21:42PM +0800, Cixi Geng wrote:
> From: Cixi Geng <cixi.geng1@xxxxxxxxxx>
>
> sprd,ump9620-adc is one variant of sc27xx series, add ump9620
> description and sample in dt-bindings.
>
> Signed-off-by: Cixi Geng <cixi.geng1@xxxxxxxxxx>
> ---
> .../bindings/iio/adc/sprd,sc2720-adc.yaml | 57 +++++++++++++++++--
> 1 file changed, 53 insertions(+), 4 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/iio/adc/sprd,sc2720-adc.yaml b/Documentation/devicetree/bindings/iio/adc/sprd,sc2720-adc.yaml
> index caa3ee0b4b8c..0d0f317b75c5 100644
> --- a/Documentation/devicetree/bindings/iio/adc/sprd,sc2720-adc.yaml
> +++ b/Documentation/devicetree/bindings/iio/adc/sprd,sc2720-adc.yaml
> @@ -20,6 +20,7 @@ properties:
> - sprd,sc2723-adc
> - sprd,sc2730-adc
> - sprd,sc2731-adc
> + - sprd,ump9620-adc
>
> reg:
> maxItems: 1
> @@ -34,12 +35,39 @@ properties:
> maxItems: 1
>
> nvmem-cells:
> - maxItems: 2
> + description: nvmem-cells.
>
> nvmem-cell-names:
> - items:
> - - const: big_scale_calib
> - - const: small_scale_calib
> + description: Names for each nvmem-cells specified.

These descriptions of common properties are redundant. Just use 'true'
for the property values.

> +
> +if:
> + not:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - sprd,ump9620-adc

Use 'const'

> +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
> @@ -69,4 +97,25 @@ examples:
> 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";
> + };
> + };
> ...
> --
> 2.25.1
>
>