devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 00/10] iio: add support for the ad3552r AXI DAC IP
@ 2024-09-19  9:19 Angelo Dureghello
  2024-09-19  9:19 ` [PATCH v3 01/10] iio: backend: adi-axi-dac: fix wrong register bitfield Angelo Dureghello
                   ` (9 more replies)
  0 siblings, 10 replies; 59+ messages in thread
From: Angelo Dureghello @ 2024-09-19  9:19 UTC (permalink / raw)
  To: Lars-Peter Clausen, Michael Hennerich, Nuno Sa, Jonathan Cameron,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Olivier Moysan
  Cc: linux-iio, linux-kernel, devicetree, dlechner, Angelo Dureghello

Purpose is to add ad3552r AXI DAC (fpga-based) support.

The "ad3552r" AXI IP, a variant of the generic "DAC" AXI IP,
has been created to reach the maximum speed (33MUPS) supported
from the ad3552r. To obtain the maximum transfer rate, the custom
module has been implemented with a QSPI interface with DDR mode.

The design is actually using the DAC backend since the register
map is the same of the generic DAC IP, except for some customized
bitfields. For this reason, a new "compatible" has been added
in adi-axi-dac.c.

Also, backend has been extended with all the needed functions
for this use case, keeping the names gneric.

The following patch is actually applying to linux-iio/testing.

---
Changes in v2: 
- use unsigned int on bus_reg_read/write
- add a compatible in axi-dac backend for the ad3552r DAC IP
- minor code alignment fixes
- fix a return value not checked
- change devicetree structure setting ad3552r-axi as a backend
  subnode
- add synchronous_mode_available in the ABI doc

Changes in v3: 
- changing AXI backend approach using a dac ip compatible
- fdt bindings updates accordingly
- fdt, ad3552r device must be a subnode of the backend
- allow probe of child devices
- passing QSPI bus access function by platform data
- move synchronous mode as a fdt parameter
- reorganizing defines in proper patches
- fix make dt_binding_check errors
- fix ad3552r maximum SPI speed
- fix samplerate calulcation
- minor code style fixes

Signed-off-by: Angelo Dureghello <adureghello@baylibre.com>

---
Angelo Dureghello (10):
      iio: backend: adi-axi-dac: fix wrong register bitfield
      dt-bindings: iio: dac: axi-dac: add ad3552r axi variant
      dt-bindings: iio: dac: ad3552r: fix maximum spi speed
      dt-bindings: iio: dac: ad3552r: add io-backend support
      iio: backend: extend features
      iio: backend: adi-axi-dac: extend features
      iio: dac: ad3552r: changes to use FIELD_PREP
      iio: dac: ad3552r: extract common code (no changes in behavior intended)
      iio: dac: ad3552r: add axi platform driver
      iio: backend: adi-axi-dac: add registering of child fdt node

 .../devicetree/bindings/iio/dac/adi,ad3552r.yaml   |  44 +-
 .../devicetree/bindings/iio/dac/adi,axi-dac.yaml   |  40 +-
 drivers/iio/dac/Kconfig                            |  11 +
 drivers/iio/dac/Makefile                           |   3 +-
 drivers/iio/dac/ad3552r-axi.c                      | 567 +++++++++++++++++++++
 drivers/iio/dac/ad3552r-common.c                   | 173 +++++++
 drivers/iio/dac/ad3552r.c                          | 451 +++-------------
 drivers/iio/dac/ad3552r.h                          | 199 ++++++++
 drivers/iio/dac/adi-axi-dac.c                      | 328 +++++++++++-
 drivers/iio/industrialio-backend.c                 | 111 ++++
 include/linux/iio/backend.h                        |  23 +
 include/linux/platform_data/ad3552r-axi.h          |  18 +
 12 files changed, 1572 insertions(+), 396 deletions(-)
---
base-commit: 4ff29e5af68e081473240420d5ba8fe1c410239f
change-id: 20240919-wip-bl-ad3552r-axi-v0-iio-testing-79937010e1cf

Best regards,
-- 

  o/ QW5nZWxvIER1cmVnaGVsbG8=
   www.kernel-space.org
    e: angelo at kernel-space.org
      c: +39 388 8550663
       


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

end of thread, other threads:[~2024-10-04 14:21 UTC | newest]

Thread overview: 59+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-19  9:19 [PATCH v3 00/10] iio: add support for the ad3552r AXI DAC IP Angelo Dureghello
2024-09-19  9:19 ` [PATCH v3 01/10] iio: backend: adi-axi-dac: fix wrong register bitfield Angelo Dureghello
2024-09-20 12:45   ` Nuno Sá
2024-09-29 10:38     ` Jonathan Cameron
2024-09-19  9:19 ` [PATCH v3 02/10] dt-bindings: iio: dac: axi-dac: add ad3552r axi variant Angelo Dureghello
2024-09-20 12:47   ` Nuno Sá
2024-09-22 20:59   ` Krzysztof Kozlowski
2024-09-29 10:46   ` Jonathan Cameron
2024-09-30 12:52     ` Angelo Dureghello
2024-09-30 13:15       ` Nuno Sá
2024-09-30 14:52         ` Jonathan Cameron
2024-09-19  9:19 ` [PATCH v3 03/10] dt-bindings: iio: dac: ad3552r: fix maximum spi speed Angelo Dureghello
2024-09-22 20:59   ` Krzysztof Kozlowski
2024-09-19  9:20 ` [PATCH v3 04/10] dt-bindings: iio: dac: ad3552r: add io-backend support Angelo Dureghello
2024-09-22 21:02   ` Krzysztof Kozlowski
2024-09-23 15:50     ` Angelo Dureghello
2024-09-24  8:02       ` Krzysztof Kozlowski
2024-09-24 12:27         ` Nuno Sá
2024-09-25  7:22           ` Krzysztof Kozlowski
2024-09-25 11:55             ` Nuno Sá
2024-09-28 12:20               ` Krzysztof Kozlowski
2024-09-29 10:59                 ` Jonathan Cameron
2024-09-30  7:20                   ` Nuno Sá
2024-09-30  7:31                     ` Krzysztof Kozlowski
2024-09-30  8:24                       ` Nuno Sá
2024-09-30 13:22                     ` Angelo Dureghello
2024-09-30 15:09                       ` Jonathan Cameron
2024-10-01  8:23                         ` Nuno Sá
2024-10-01 18:29                           ` Jonathan Cameron
2024-10-02  5:54                             ` Krzysztof Kozlowski
2024-10-02  9:00                             ` Nuno Sá
2024-09-29 10:51   ` Jonathan Cameron
2024-09-30 14:15     ` Angelo Dureghello
2024-09-30 14:49       ` Jonathan Cameron
2024-09-30 15:08         ` Angelo Dureghello
2024-09-30 19:20           ` David Lechner
2024-10-01  8:09             ` Angelo Dureghello
2024-09-19  9:20 ` [PATCH v3 05/10] iio: backend: extend features Angelo Dureghello
2024-09-20 12:50   ` Nuno Sá
2024-09-24 14:11     ` Angelo Dureghello
2024-09-25 11:59       ` Nuno Sá
2024-10-02  9:14         ` Angelo Dureghello
2024-09-29 11:05   ` Jonathan Cameron
2024-09-30 19:25     ` David Lechner
2024-10-01  8:14       ` Nuno Sá
2024-10-01  8:35         ` Angelo Dureghello
2024-10-01 18:32           ` Jonathan Cameron
2024-09-19  9:20 ` [PATCH v3 06/10] iio: backend: adi-axi-dac: " Angelo Dureghello
2024-09-20 13:10   ` Nuno Sá
2024-09-29 11:28   ` Jonathan Cameron
2024-09-19  9:20 ` [PATCH v3 07/10] iio: dac: ad3552r: changes to use FIELD_PREP Angelo Dureghello
2024-09-19  9:20 ` [PATCH v3 08/10] iio: dac: ad3552r: extract common code (no changes in behavior intended) Angelo Dureghello
2024-09-29 11:57   ` Jonathan Cameron
2024-10-02 15:50     ` Angelo Dureghello
2024-10-04 14:21       ` Jonathan Cameron
2024-09-19  9:20 ` [PATCH v3 09/10] iio: dac: ad3552r: add axi platform driver Angelo Dureghello
2024-09-29 12:17   ` Jonathan Cameron
2024-09-19  9:20 ` [PATCH v3 10/10] iio: backend: adi-axi-dac: add registering of child fdt node Angelo Dureghello
2024-09-29 12:21   ` Jonathan Cameron

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).