From: David Lechner <dlechner@baylibre.com>
To: "Alexis Czezar Torreno" <alexisczezar.torreno@analog.com>,
"Lars-Peter Clausen" <lars@metafoo.de>,
"Michael Hennerich" <Michael.Hennerich@analog.com>,
"Jonathan Cameron" <jic23@kernel.org>,
"Nuno Sá" <nuno.sa@analog.com>,
"Andy Shevchenko" <andy@kernel.org>,
"Rob Herring" <robh@kernel.org>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Conor Dooley" <conor+dt@kernel.org>,
"Uwe Kleine-König" <ukleinek@kernel.org>
Cc: linux-iio@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-pwm@vger.kernel.org
Subject: Re: [PATCH 1/3] dt-bindings: iio: dac: Add binding for AD5706R
Date: Sat, 21 Feb 2026 10:05:59 -0600 [thread overview]
Message-ID: <fef41429-51d6-4084-a75e-a7b609b5f894@baylibre.com> (raw)
In-Reply-To: <20260220-dev_ad5706r-v1-1-7253bbd74889@analog.com>
On 2/20/26 2:02 AM, Alexis Czezar Torreno wrote:
> Add device tree binding documentation for the Analog Devices
> AD5706R 4-channel 16-bit current output digital-to-analog converter.
>
> Signed-off-by: Alexis Czezar Torreno <alexisczezar.torreno@analog.com>
> ---
> .../devicetree/bindings/iio/dac/adi,ad5706r.yaml | 96 ++++++++++++++++++++++
> 1 file changed, 96 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/iio/dac/adi,ad5706r.yaml b/Documentation/devicetree/bindings/iio/dac/adi,ad5706r.yaml
> new file mode 100644
> index 0000000000000000000000000000000000000000..dabaf2195a07d2c66d44f69ca60e32e6bc37cf55
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/iio/dac/adi,ad5706r.yaml
> @@ -0,0 +1,96 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/iio/dac/adi,ad5706r.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Analog Devices AD5706R 4-Channel Current Output DAC
> +
> +maintainers:
> + - Alexis Czezar Torreno <alexisczezar.torreno@analog.com>
> +
> +description: |
> + The AD5706R is a 16-bit, 4-channel current output digital-to-analog
> + converter with SPI interface.
> +
> + The driver supports dynamic SPI clock rate management via an external
> + clock generator (e.g., AXI CLKGEN) referenced by the 'clocks' property.
> + This allows separate read and write SPI speeds to be configured at
> + runtime.
Devicetree is for describing how it is wired up, not how the driver uses
it, so leave this part out.
> +
> + Datasheet:
> + https://www.analog.com/en/products/ad5706r.html
> +
> +properties:
> + compatible:
> + enum:
> + - adi,ad5706r
> +
> + reg:
> + maxItems: 1
> +
> + spi-max-frequency:
> + maximum: 100000000
> +
> + clocks:
> + maxItems: 1
> + description:
> + Reference clock for SPI clock rate management.
Based on the driver, it sounds like this clock is not connected
to this chip at all, but rather the SPI controller clock. So it
does not belong here.
> +
> + clock-names:
> + items:
> + - const: spi_clk
> +
> + pwms:
> + maxItems: 1
> +
> + pwm-names:
> + items:
> + - const: ad5706r_ldacb
Instead of giving it a name, we can just write it as:
pwms:
items:
- description: PWM connected to the LDAC/TGP/DCK pin.
The items: also limits it to exactly one item, so we don't need
maxItems:.
> +
> + dac-resetb-gpios:
> + maxItems: 1
> + description: GPIO connected to the active-low reset pin.
The datasheet just has a /RESET pin. Not sure where the "b" comes
from.
> +
> + dac-shdn-gpios:
> + maxItems: 1
> + description: GPIO connected to the active-high shutdown pin.
I didn't see a "shutdown" pin in the datasheet. Do you mean the
OUT_EN pin?
> +
We could also add an io-channel for reading back the MUX_OUT pin
from the ADC it is connected to.
> +required:
> + - compatible
> + - reg
> + - spi-max-frequency
Voltage supplies should be required.
> + - clocks
> + - clock-names
> + - pwms
> + - pwm-names
> + - dac-resetb-gpios
> + - dac-shdn-gpios
I would not expect any of these to be required. Reset could be hardwired if
there aren't enough GPIOs. And something other than a PWM could be connected
to the LDAC/TGP/DCK pin.
The point of the bindings is to describe how the chip is wired up, and that
includes any way it could possibly be wired up, not just what is implemented
in the driver.
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/gpio/gpio.h>
> + #include <dt-bindings/interrupt-controller/irq.h>
> +
> + spi {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + dac@0 {
> + compatible = "adi,ad5706r";
> + reg = <0>;
> + spi-max-frequency = <100000000>;
> +
> + clocks = <&spi_clk>;
> + clock-names = "spi_clk";
> +
> + dac-resetb-gpios = <&gpio0 86 GPIO_ACTIVE_LOW>;
> + dac-shdn-gpios = <&gpio0 87 GPIO_ACTIVE_HIGH>;
> +
> + pwms = <&axi_pwm_gen 0 0>;
> + pwm-names = "ad5706r_ldacb";
> + };
> + };
> +...
>
next prev parent reply other threads:[~2026-02-21 16:06 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-20 8:02 [PATCH 0/3] Add support for AD5706R DAC Alexis Czezar Torreno
2026-02-20 8:02 ` [PATCH 1/3] dt-bindings: iio: dac: Add binding for AD5706R Alexis Czezar Torreno
2026-02-21 10:45 ` Krzysztof Kozlowski
2026-02-21 16:05 ` David Lechner [this message]
2026-02-20 8:02 ` [PATCH 2/3] iio: dac: ad5706r: Add support for AD5706R DAC Alexis Czezar Torreno
2026-02-20 10:48 ` Nuno Sá
2026-02-20 11:00 ` Andy Shevchenko
2026-02-20 15:02 ` Nuno Sá
2026-02-20 16:56 ` Andy Shevchenko
2026-02-23 10:10 ` Nuno Sá
2026-02-20 10:51 ` Uwe Kleine-König
2026-02-21 16:19 ` David Lechner
2026-02-22 18:57 ` Jonathan Cameron
2026-02-23 4:49 ` Torreno, Alexis Czezar
2026-02-23 8:47 ` Andy Shevchenko
2026-02-20 8:02 ` [PATCH 3/3] MAINTAINERS: Add entry for AD5706R DAC driver Alexis Czezar Torreno
2026-02-20 10:18 ` Nuno Sá
2026-02-20 10:31 ` [PATCH 0/3] Add support for AD5706R DAC Andy Shevchenko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=fef41429-51d6-4084-a75e-a7b609b5f894@baylibre.com \
--to=dlechner@baylibre.com \
--cc=Michael.Hennerich@analog.com \
--cc=alexisczezar.torreno@analog.com \
--cc=andy@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=jic23@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=lars@metafoo.de \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pwm@vger.kernel.org \
--cc=nuno.sa@analog.com \
--cc=robh@kernel.org \
--cc=ukleinek@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®