This patch series extends the SPI bitbang, gpio, and spi-engine controllers to support configurable MOSI line idle state. It then introduces the ad4000 driver which uses the MOSI idle configuration to properly support AD4000 series of ADCs. Change log v3 -> v4: [SPI] - spi: Added documentation for the MOSI idle configuration. - spi: spi_setup() now fails on improper MOSI idle state configuration. - spi: spi_setup() now fails if controller doesn't support requested MOSI config. - spi: spi-engine: Only set MOSI idle mode bits if spi-engine version supports it. [Device tree] - dt: Made grouped compatible strings for devices that are similar to each other. - dt: Updated dt-bindings to constrain properties that depend on reg access to "3-wire" mode only. - dt: adi,gain-milli is now a 16-bit device tree property. [IIO/ADC] - ad4000: Used devm_regulator_get_enable_read_voltage() for ref regulator. - ad4000: Tweaked gpiod_set_value comment explaining what happens when CNV GPIO is defined and when it is not. - ad4000: Device configuration register write will now only happen if device is connected in a mode that allows register access. - ad4000: scale attribute now only writeable if device connection allows user to change the scale. - ad4000: scale_available attribute now is only visible if scale is writeable. - ad4000: many minor changes. Link to v3: https://lore.kernel.org/linux-iio/cover.1717539384.git.marcelo.schmitt@xxxxxxxxxx/ Link to v2: https://lore.kernel.org/linux-iio/cover.1712585500.git.marcelo.schmitt@xxxxxxxxxx/ Link to v1: https://lore.kernel.org/linux-iio/cover.1711131830.git.marcelo.schmitt@xxxxxxxxxx/ Thanks, Marcelo Marcelo Schmitt (6): spi: Enable controllers to extend the SPI protocol with MOSI idle configuration spi: bitbang: Implement support for MOSI idle state configuration spi: spi-gpio: Add support for MOSI idle state configuration spi: spi-axi-spi-engine: Add support for MOSI idle configuration dt-bindings: iio: adc: Add AD4000 iio: adc: Add support for AD4000 .../bindings/iio/adc/adi,ad4000.yaml | 231 ++++++ Documentation/spi/spi-summary.rst | 83 ++ MAINTAINERS | 8 + drivers/iio/adc/Kconfig | 12 + drivers/iio/adc/Makefile | 1 + drivers/iio/adc/ad4000.c | 715 ++++++++++++++++++ drivers/spi/spi-axi-spi-engine.c | 8 + drivers/spi/spi-bitbang.c | 24 + drivers/spi/spi-gpio.c | 12 +- drivers/spi/spi.c | 9 +- include/linux/spi/spi.h | 6 + include/linux/spi/spi_bitbang.h | 1 + include/uapi/linux/spi/spi.h | 5 +- 13 files changed, 1111 insertions(+), 4 deletions(-) create mode 100644 Documentation/devicetree/bindings/iio/adc/adi,ad4000.yaml create mode 100644 drivers/iio/adc/ad4000.c -- 2.43.0