The ROHM BD79104 ADC is a 12 bit, 8-channel ADC controlled via SPI. The communication over SPI uses similar protocol as the ti-adc128s052. In order to avoid code duplication, the support for the ROHM IC is added in the same driver. The driver side differencies between the ti-adc128s052 and the ROHM BD79104 are related to the supply regulator handling. The BD79104 requires supplies for the VDD and IOVDD. The ti-adc128s052 driver handles only the reference voltage supply, even though the TI data-sheet indicates it can also have separate supplies. Hardware vise the ROHM BD79104 requires SPI MODE 3, and has also some SPI frequency limitations. I decided to add own binding document for the ROHM BD79104 so it is easier to document the SPI limitations. It also allows using the supply names from the data sheet. And finally, it gives users of this IC a better hint that it is supported. Finally, I didn't find maintainer information for this driver from the MAINTAINERS file. I would like to add myself as a reviewer for the driver, so I can stay on track of the changes to it. AFAIR, having R-entry without M-entry was not appreciated. Any suggestions how to handle this? This series was based on the v6.14, but it should apply cleanly on iio/testing - please let me know if I should rebase. --- Matti Vaittinen (6): dt-bindings: ROHM BD79104 ADC iio: adc: ti-adc128s052: Fix ADC value on BE systems iio: adc: ti-adc128s052: Be consistent with arrays iio: adc: ti-adc128s052: Use devm_mutex_init() iio: adc: ti-adc128s052: Simplify using guard(mutex) iio: adc: ti-adc128s052: Support ROHM BD79104 .../bindings/iio/adc/rohm,bd79104.yaml | 69 +++++++++++++++++++ drivers/iio/adc/Kconfig | 2 +- drivers/iio/adc/ti-adc128s052.c | 66 +++++++++++++----- 3 files changed, 118 insertions(+), 19 deletions(-) create mode 100644 Documentation/devicetree/bindings/iio/adc/rohm,bd79104.yaml base-commit: 7eb172143d5508b4da468ed59ee857c6e5e01da6 -- 2.48.1