public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v6 0/5] Add support for ADAQ776x-1 ADC Family
@ 2026-01-14  9:26 Jonathan Santos
  2026-01-14  9:26 ` [PATCH v6 1/5] dt-bindings: iio: adc: ad7768-1: add new supported parts Jonathan Santos
                   ` (5 more replies)
  0 siblings, 6 replies; 11+ messages in thread
From: Jonathan Santos @ 2026-01-14  9:26 UTC (permalink / raw)
  To: linux-iio, devicetree, linux-kernel
  Cc: Jonathan Santos, lars, Michael.Hennerich, jic23, dlechner,
	nuno.sa, andy, robh, krzk+dt, conor+dt, jonath4nns

This adds support for the ADAQ7767-1, ADAQ7768-1 and ADAQ7769-1 devices. 

The ADAQ7768-1 and ADAQ7769-1 integrate a programmable gain amplifier (PGA)
with 7 and 8 gain options, respectively. The ADAQ7767-1 and ADAQ7769-1 
also feature a 3-pin selectable Anti-aliasing filter (AAF) gain.

---
Changes in v6:
* Use Pattern PER* for all percentage-related macros and include macros 
  for Per mille and per cent mille units.
* Refactored ad7768_parse_aaf_gain() to improve cleanliness and readability.
* Link to v5: https://lore.kernel.org/linux-iio/cover.1765900411.git.Jonathan.Santos@analog.com/T/#t/

Changes in v5:
* Added PERCENT macro along with BASIS_POINTS in units.h.
* Added new patch to allow writing attributes without direct mode claim.
* Write scale attribute without direct mode claim to avoid deadlock
  when using GPIOs from the device's own controller.
* Link to v4: https://lore.kernel.org/linux-iio/cover.1764101647.git.Jonathan.Santos@analog.com/T/#t


Changes in v4:
* Removed u64_fract type patch, as it is not used. u32_fract is sufficient
  for the PGA gain calculations.
* Added new patch adding BASIS_POINTS macro to units.h.
* Included pga-gpios property for parts that support PGA gain.
  Before we were using the internal gpio controller to manage the PGA pins,
  but still exposing the controller for external use (causing possible conflicts).
* Addressed other review comments, see individual patches.
* Link to v3: https://lore.kernel.org/linux-iio/cover.1757001160.git.Jonathan.Santos@analog.com/T/#t

Changes in v3:
* Renamed adi,gain-milli to adi,aaf-gain-bp. Now it represents basis points
  (one hundredth of a percent).
* ad7768_channel_masks removed along with available_masks element in
  ad7768_chip_info struct. It does not add anything for single channels,
  so not needed, at least for now.
* New patch adding 64-bit fractional number types to math.h.
* Moved aaf gain parsing to its own function, and now returning after
  warning to avoid setting a variable when it shouldn't (avoid confusion).
* ad7768_set_pga_gain(): removed the pgia enable check, relying on the
  regmap cache.
* Addressed other review comments, see individual patches.

Changes in v2:
* adi,aaf-gain property renamed to adi,gain-milli. Default value added.
* fixed some commit messages. 
* Added 'select RATIONAL' to Kconfig.
* Added lock to protect PGA value access.
* rewrote AAF gain check and replaced error returns with warnings.
* Addressed other review comments, see individual patches.
* Link to v1: https://lore.kernel.org/linux-iio/cover.1754617360.git.Jonathan.Santos@analog.com/T/#t

Jonathan Santos (5):
  dt-bindings: iio: adc: ad7768-1: add new supported parts
  iio: adc: ad7768-1: introduce chip info for future multidevice support
  units: add conversion macros for percentage related units
  iio: adc: ad7768-1: refactor ad7768_write_raw()
  iio: adc: ad7768-1: add support for ADAQ776x-1 ADC Family

 .../bindings/iio/adc/adi,ad7768-1.yaml        |  64 ++-
 drivers/iio/adc/Kconfig                       |   1 +
 drivers/iio/adc/ad7768-1.c                    | 423 +++++++++++++++---
 include/linux/units.h                         |  19 +
 4 files changed, 453 insertions(+), 54 deletions(-)


base-commit: e0bc6d7e258486c10bb11e31fd4421c134063b1d
-- 
2.34.1


^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2026-01-22 19:25 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-14  9:26 [PATCH v6 0/5] Add support for ADAQ776x-1 ADC Family Jonathan Santos
2026-01-14  9:26 ` [PATCH v6 1/5] dt-bindings: iio: adc: ad7768-1: add new supported parts Jonathan Santos
2026-01-14  9:26 ` [PATCH v6 2/5] iio: adc: ad7768-1: introduce chip info for future multidevice support Jonathan Santos
2026-01-14  9:27 ` [PATCH v6 3/5] units: add conversion macros for percentage related units Jonathan Santos
2026-01-19  7:54   ` Andy Shevchenko
2026-01-19  7:57     ` Andy Shevchenko
2026-01-14  9:27 ` [PATCH v6 4/5] iio: adc: ad7768-1: refactor ad7768_write_raw() Jonathan Santos
2026-01-14  9:27 ` [PATCH v6 5/5] iio: adc: ad7768-1: add support for ADAQ776x-1 ADC Family Jonathan Santos
2026-01-16 18:52   ` Jonathan Cameron
2026-01-19  8:06     ` Andy Shevchenko
2026-01-22 19:25 ` [PATCH v6 0/5] Add " Jonathan Cameron

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox