Re: [PATCH 1/3] dt-bindings: iio: dac: Add max22007

From: Janani Sunil

Date: Wed Jan 07 2026 - 10:13:49 EST


Hi Krzysztof,

Thank you for reviewing the patch.

On 12/19/25 16:50, Krzysztof Kozlowski wrote:
On 19/12/2025 16:31, Janani Sunil wrote:
Devicetree bindings for MAX22007 4-channel
12-bit DAC that drives a voltage or current
output on each channel
Please wrap commit message according to Linux coding style / submission
process (neither too early nor over the limit):
https://elixir.bootlin.com/linux/v6.4-rc1/source/Documentation/process/submitting-patches.rst#L597

Noted on the coding guidelines. Shall update the commit message.

Signed-off-by: Janani Sunil <janani.sunil@xxxxxxxxxx>
---
.../devicetree/bindings/iio/dac/adi,max22007.yaml | 116 +++++++++++++++++++++
MAINTAINERS | 7 ++
2 files changed, 123 insertions(+)

diff --git a/Documentation/devicetree/bindings/iio/dac/adi,max22007.yaml b/Documentation/devicetree/bindings/iio/dac/adi,max22007.yaml
new file mode 100644
index 000000000000..c2f65d9e42d4
--- /dev/null
+++ b/Documentation/devicetree/bindings/iio/dac/adi,max22007.yaml
@@ -0,0 +1,116 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/iio/dac/adi,max22007.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Analog Devices MAX22007 DAC device driver
Bindings are for hardware, drop all device driver references.

Right. Shall remove the references.

+
+maintainers:
+ - Janani Sunil <janani.sunil@xxxxxxxxxx>
+
+description:
+ The MAX22007 is a quad-channel, 12-bit digital-to-analog converter (DAC)
+ with integrated precision output amplifiers and current output capability.
+ Each channel can be independently configured for voltage or current output.
+ Datasheet available at https://www.analog.com/en/products/max22007.html
+
+$ref: /schemas/spi/spi-peripheral-props.yaml#
+
+properties:
+ compatible:
+ const: adi,max22007
+
+ reg:
+ maxItems: 1
+
+ spi-max-frequency:
+ maximum: 500000
+
+ '#address-cells':
+ const: 1
+
+ '#size-cells':
+ const: 0
+
+ vdd-supply:
+ description: Low-Voltage Power Supply from +2.7V to +5.5V.
+
+ hvdd-supply:
+ description:
+ Positive High-Voltage Power Supply from +8V to (HVSS +24V) for
+ the Output Channels.
+
+ hvss-supply:
+ description:
+ Negative High-Voltage Power Supply from -2V to 0V for the Output Channels.
+
+ reset-gpios:
+ maxItems: 1
+ description:
+ GPIO used for hardware reset of the device.
Drop description, redundant, because not saying anything other than
schema already said. You could say whether it is active low for example
if you wanted to add something useful.

Agreed. Will add some information about the GPIO.

+
+patternProperties:
+ "^channel@[0-3]$":
+ allOf:
+ - $ref: /schemas/iio/dac/dac.yaml#
+ - type: object
Drop allOf. I don't get where did you get this syntax, it's not needed.

Shall remove it.

+ description:
+ Represents the external channels which are connected to the DAC.
+ Channels not specified in the device tree will be powered off.
+
+ properties:
+ reg:
+ description: Channel number
+ maxItems: 1
+
+ adi,type:
+ description: Channel output type.
+ $ref: /schemas/types.yaml#/definitions/string
+ enum: [voltage, current]
Why would it matter if this is voltage or current? That's the first time
this property appears. Why none of existing fit?

The DAC allows configuring the outputs to be a current/voltage type. The IIO channel names need to change depending on that.
But as per Johnathan's suggestions, I shall reuse the adi,ch-func instead of introducing a new property here.

+
+ required:
+ - reg
+ - adi,type
+
+ unevaluatedProperties: false
+
+required:
+ - compatible
+ - reg
+
+anyOf:
+ - required: [channel@0]
+ - required: [channel@1]
+ - required: [channel@2]
+ - required: [channel@3]
+
+unevaluatedProperties: false

Best regards,
Krzysztof


Best regards,
Janani Sunil