v1: https://lore.kernel.org/linux-iio/20231204144925.4fe9922f@jic23-huawei/T/#m222f5175273b81dbfe40b7f0daffcdc67d6cb8ff v2: https://lore.kernel.org/r/20231208-dev-iio-backend-v2-0-5450951895e1@xxxxxxxxxx v3: https://lore.kernel.org/linux-iio/20231213-dev-iio-backend-v3-0-bb9f12a5c6dc@xxxxxxxxxx/ v4: https://lore.kernel.org/r/20231220-iio-backend-v4-0-998e9148b692@xxxxxxxxxx v5: https://lore.kernel.org/r/20240112-iio-backend-v5-0-bdecad041ab4@xxxxxxxxxx v6: https://lore.kernel.org/r/20240119-iio-backend-v6-0-189536c35a05@xxxxxxxxxx v7 https://lore.kernel.org/r/20240123-iio-backend-v7-0-1bff236b8693@xxxxxxxxxx v8: https://lore.kernel.org/r/20240202-iio-backend-v8-0-f65ee8c8203d@xxxxxxxxxx v9: https://lore.kernel.org/r/20240206-iio-backend-v9-0-df66d159c000@xxxxxxxxxx Changes in v10: - Patch 5 * Removed meaningless @ in function names; * Added ascii diagram for the typicaly HW setup (Andy request); * Add missing period; * Use of dev_err_probe() in APIs meant to be called during probe(). - Patch 6 * Removed unneeded blank line; * Fixed some English in the commit message. Jonathan, the series is based on next-20240207 since it already includes the io-channels fix Rob applied in his tree. I guess it should land in rc3 so after you rebase, all patches should apply cleanly (if applying them of course :)). Let me know if anything fails... Keeping the block diagram so we don't have to follow links to check one of the typical setups. ------------------------------------------------------- ------------------ | ----------- ------------ ------- FPGA | | ADC |------------------------| | AXI ADC |---------| DMA CORE |------| RAM | | | (Frontend/IIO) | Serial Data (eg: LVDS) | |(backend)|---------| |------| | | | |------------------------| ----------- ------------ ------- | ------------------ ------------------------------------------------------- --- Nuno Sa (6): dt-bindings: adc: ad9467: add new io-backend property dt-bindings: adc: axi-adc: update bindings for backend framework iio: buffer-dmaengine: export buffer alloc and free functions iio: add the IIO backend framework iio: adc: ad9467: convert to backend framework iio: adc: adi-axi-adc: move to backend framework Olivier Moysan (1): of: property: add device link support for io-backends .../devicetree/bindings/iio/adc/adi,ad9467.yaml | 4 + .../devicetree/bindings/iio/adc/adi,axi-adc.yaml | 8 +- MAINTAINERS | 8 + drivers/iio/Kconfig | 9 + drivers/iio/Makefile | 1 + drivers/iio/adc/Kconfig | 4 +- drivers/iio/adc/ad9467.c | 267 ++++++++----- drivers/iio/adc/adi-axi-adc.c | 379 +++++-------------- drivers/iio/buffer/industrialio-buffer-dmaengine.c | 8 +- drivers/iio/industrialio-backend.c | 418 +++++++++++++++++++++ drivers/of/property.c | 2 + include/linux/iio/adc/adi-axi-adc.h | 68 ---- include/linux/iio/backend.h | 72 ++++ include/linux/iio/buffer-dmaengine.h | 3 + 14 files changed, 798 insertions(+), 453 deletions(-) --- base-commit: 2ae0a045e6814c8c1d676d6153c605a65746aa29 change-id: 20231219-iio-backend-a3dc1a6a7a58 -- Thanks! - Nuno Sá