On 07/12/2022 10:08, Okan Sahin wrote: > This patch adds document the bindings for MAX77541 MFD driver. It also Do not use "This commit/patch". https://elixir.bootlin.com/linux/v5.17.1/source/Documentation/process/submitting-patches.rst#L95 > includes MAX77540 driver whose regmap is covered by MAX77541. > > Signed-off-by: Okan Sahin <okan.sahin@xxxxxxxxxx> > --- > .../devicetree/bindings/mfd/adi,max77541.yaml | 134 ++++++++++++++++++ > MAINTAINERS | 1 + > 2 files changed, 135 insertions(+) > create mode 100644 Documentation/devicetree/bindings/mfd/adi,max77541.yaml > > diff --git a/Documentation/devicetree/bindings/mfd/adi,max77541.yaml b/Documentation/devicetree/bindings/mfd/adi,max77541.yaml > new file mode 100644 > index 000000000000..205953e6dd15 > --- /dev/null > +++ b/Documentation/devicetree/bindings/mfd/adi,max77541.yaml > @@ -0,0 +1,134 @@ > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/mfd/adi,max77541.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: MAX77540/MAX77541 PMIC from ADI. Drop trailing space. > + > +maintainers: > + - Okan Sahin <okan.sahin@xxxxxxxxxx> > + > +description: | > + MAX77540 is a Power Management IC with 2 buck regulators. > + > + MAX77541 is a Power Management IC with 2 buck regulators and 1 ADC. > + > +properties: > + compatible: > + enum: > + - adi,max77540 > + - adi,max77541 > + > + reg: > + maxItems: 1 > + > + interrupts: > + maxItems: 1 > + > + regulators: > + $ref: /schemas/regulator/adi,max77541.yaml# I don't think you tested this patch. There is no such file. > + > + adc: > + type: object > + additionalProperties: false > + properties: > + compatible: > + const: adi,max77541-adc Why having a child without any resources? It does not look like needed and instead your parent driver should instantiate the child device. > + required: > + -compatible > + > +required: > + - compatible > + - reg > + - interrupts > + > +allOf: > + - if: > + properties: > + compatible: > + contains: > + const: adi,max77540 > + then: > + properties: > + regulator: > + properties: > + compatible: > + const: adi,max77540-regulator > + else: > + properties: > + regulator: > + properties: > + compatible: > + const: adi,max77541-regulator > + adc: > + properties: > + compatible: > + const: adi,max77541-adc The adc part is not needed anyway - duplicating what's in top-level properties. > + > +additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/interrupt-controller/irq.h> > + > + i2c { > + #address-cells = <1>; > + #size-cells = <0>; > + > + pmic@69 { > + compatible = "adi,max77540"; > + reg = <0x69>; > + interrupt-parent = <&gpio>; > + interrupts = <16 IRQ_TYPE_EDGE_FALLING>; > + > + regulators { > + buck1 { > + regulator-min-microvolt = <500000>; > + regulator-max-microvolt = <5200000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + buck2 { > + regulator-min-microvolt = <500000>; > + regulator-max-microvolt = <5200000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + }; > + }; > + }; > + > + - | > + #include <dt-bindings/interrupt-controller/irq.h> > + > + i2c { > + #address-cells = <1>; > + #size-cells = <0>; > + > + pmic@69 { > + compatible = "adi,max77541"; Keep only one example (more complex one) - they are almost the same. > + reg = <0x63>; > + interrupt-parent = <&gpio>; > + interrupts = <16 IRQ_TYPE_EDGE_FALLING>; > + > + regulators { > + buck1 { > + regulator-min-microvolt = <500000>; > + regulator-max-microvolt = <5200000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + buck2 { > + regulator-min-microvolt = <500000>; > + regulator-max-microvolt = <5200000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + }; > + > + adc { > + compatible = "adi,max77541-adc"; > + } > + }; > + }; > \ No newline at end of file Error here. > diff --git a/MAINTAINERS b/MAINTAINERS > index af94d06bb9f0..22f5a9c490e3 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -12501,6 +12501,7 @@ MAXIM MAX77541 PMIC MFD DRIVER > M: Okan Sahin <okan.sahin@xxxxxxxxxx> > L: linux-kernel@xxxxxxxxxxxxxxx > S: Maintained > +F: Documentation/devicetree/bindings/mfd/adi,max77541.yaml > F: drivers/mfd/max77541.c > F: include/linux/mfd/max77541.h > Best regards, Krzysztof