On Fri, 4 Aug 2023 17:28:18 +0300 <marius.cristea@xxxxxxxxxxxxx> wrote: > From: Marius Cristea <marius.cristea@xxxxxxxxxxxxx> > > Adding support for Microchip family of 153.6 ksps, Low-Noise 16/24-Bit > Delta-Sigma ADCs with an SPI interface. This driver covers the following part > numbers: > - MCP3561, MCP3562, MCP3564, MCP3561R, MCP3562R, MCP3564R, > - MCP3461, MCP3462, MCP3464, MCP3461R, MCP3462R and MCP3464R. > > Differences related to previous patch: > v3: > - fix review comments: > - fix and update the device tree bindings > - enable "auto_zeroing_ref_enable" attribute only > when internal reference is used > - remove unused headers > - fix comments (kernel-docs) > - remove scan_type > - replace "extend_name" with read_label > - print label for each channel (label could be added into the dt) > - add comment to explain the maximum channels numbers > - add protection around critical region > - fallback compatible in device tree to deal with some newer part number > > - Open questions: > - whether or not to add a spi-mux type of thing to deal with the part number > address in case there are multiple devices connected to the same chip > select. I'd failed to register (until noticing it in a review a few mins ago) that we have have precedence for devices doing this device-address in the SPI transfer thing. The mcp3911 does it as well. Obviously that doesn't rule out us doing something different with this one though. I think we should take the view this is relatively uncommon and go with this simple vendor specific dt-binding approach. Always nice to do something more general, but sometimes it isn't worth the effort. > - discussion related to the "custom property". Last time around a consensus > wasn't reached. > > v2: > - fix review comments: > - change the device tree bindings > - change the ADC channel creation (starting from DT) > - use defines, masks and FIELD_PREP() instead of hardcoded values > - mode the PGA from Hardware Gain to scale > - add a current output channel from burnout current > - fix coding style issues > - use self-explanatory naming to drop the comment > - renumbered the versioning (start with v1 instead of v0) > > v1: > - first version committed to review > > Marius Cristea (2): > dt-bindings: iio: adc: adding MCP3564 ADC > iio: adc: adding support for MCP3564 ADC > > .../ABI/testing/sysfs-bus-iio-adc-mcp3564 | 53 + > .../bindings/iio/adc/microchip,mcp3564.yaml | 200 +++ > MAINTAINERS | 7 + > drivers/iio/adc/Kconfig | 13 + > drivers/iio/adc/Makefile | 1 + > drivers/iio/adc/mcp3564.c | 1541 +++++++++++++++++ > 6 files changed, 1815 insertions(+) > create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-adc-mcp3564 > create mode 100644 Documentation/devicetree/bindings/iio/adc/microchip,mcp3564.yaml > create mode 100644 drivers/iio/adc/mcp3564.c > > > base-commit: 9e66fb52449538406cea43e9f3889c391350e76e