public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Taha Ed-Dafili <0rayn.dev@gmail.com>
To: lars@metafoo.de, Michael.Hennerich@analog.com, jic23@kernel.org,
	robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org
Cc: dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org,
	skhan@linuxfoundation.org, me@brighamcampbell.com,
	linux-iio@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	Taha Ed-Dafili <0rayn.dev@gmail.com>
Subject: [PATCH v2 0/5] iio: dac: ad5504: fix voltage scaling and add missing bindings
Date: Tue, 10 Mar 2026 17:48:30 +0000	[thread overview]
Message-ID: <20260310174835.24209-1-0rayn.dev@gmail.com> (raw)

This series fixes the voltage scale calculation for the AD5504 DAC and
updates the devicetree bindings to support the necessary hardware
configuration.

Previously, the driver calculated the scale based on the VCC supply
voltage. However, the AD5504 has an integrated precision reference,
and the output range is determined strictly by the state of the
R_SEL pin (0-30V or 0-60V).

This series updates the bindings to use standard IIO DAC properties,
aligns the driver headers with the IWYU principle, and fixes the core
scaling bug while adding support for the hardware's optional GPIOs.

Changes in v2:
- Replaced vendor-specific adi,output-range-volts with the standard
  output-range-microvolt property array (Krzysztof).
- Replaced adi,output-range-gpios with standard range-sel-gpios
  (Krzysztof).
- Refactored allOf block in bindings to use not/required logic
  (Krzysztof).
- Split header updates into two patches: alphabetical sorting and IWYU
  compliance (Andy).
- Used MILLI and MICRO macros to replace hardcoded values (Andy).
- Used a local dev pointer to respect the 80-character limit and realigned
  function arguments accordingly (Andy).
- Added driver implementation for the optional CLR and LDAC
  GPIOs (new in v2)

Thank you to Jonathan Cameron, Krzysztof Kozlowski, Andy Shevchenko, and
David Lechner for the reviews, schema guidance, and C optimizations on v1.

Note: I do not have access to the physical AD5504 hardware, so this series
has been strictly compile-tested and validated against dt_binding_check
based on the datasheet specifications.

Taha Ed-Dafili (5):
  dt-bindings: iio: dac: ad5504: add output-range and missing gpios
  iio: dac: ad5504: sort headers alphabetically
  iio: dac: ad5504: Align headers with IWYU principle
  iio: dac: ad5504: fix scale via output-range-microvolt
  iio: dac: ad5504: add optional GPIO control for CLR and LDAC

 .../bindings/iio/dac/adi,ad5504.yaml          | 40 ++++++++++-
 drivers/iio/dac/ad5504.c                      | 70 ++++++++++++-------
 2 files changed, 84 insertions(+), 26 deletions(-)

-- 
2.47.3


             reply	other threads:[~2026-03-10 17:48 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-10 17:48 Taha Ed-Dafili [this message]
2026-03-10 17:48 ` [PATCH v2 1/5] dt-bindings: iio: dac: ad5504: add output-range and missing gpios Taha Ed-Dafili
2026-03-10 20:11   ` Krzysztof Kozlowski
2026-03-11  9:49     ` Taha Ed-Dafili
2026-03-15 12:42       ` Jonathan Cameron
2026-03-11 11:57   ` Nuno Sá
2026-03-10 17:48 ` [PATCH v2 2/5] iio: dac: ad5504: sort headers alphabetically Taha Ed-Dafili
2026-03-10 18:20   ` Andy Shevchenko
2026-03-10 20:15   ` Krzysztof Kozlowski
2026-03-15 12:47     ` Jonathan Cameron
2026-03-10 17:48 ` [PATCH v2 3/5] iio: dac: ad5504: Align headers with IWYU principle Taha Ed-Dafili
2026-03-10 18:32   ` Andy Shevchenko
2026-03-10 17:48 ` [PATCH v2 4/5] iio: dac: ad5504: fix scale via output-range-microvolt Taha Ed-Dafili
2026-03-10 19:16   ` Andy Shevchenko
2026-03-11  9:54     ` [PATCH v2 3/5] iio: dac: ad5504: Align headers with IWYU principle Taha Ed-Dafili
2026-03-11 12:05     ` [PATCH v2 4/5] iio: dac: ad5504: fix scale via output-range-microvolt Nuno Sá
2026-03-10 20:16   ` Krzysztof Kozlowski
2026-03-10 17:48 ` [PATCH v2 5/5] iio: dac: ad5504: add optional GPIO control for CLR and LDAC Taha Ed-Dafili
2026-03-11 11:59   ` Nuno Sá

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=20260310174835.24209-1-0rayn.dev@gmail.com \
    --to=0rayn.dev@gmail.com \
    --cc=Michael.Hennerich@analog.com \
    --cc=andy@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dlechner@baylibre.com \
    --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=me@brighamcampbell.com \
    --cc=nuno.sa@analog.com \
    --cc=robh@kernel.org \
    --cc=skhan@linuxfoundation.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