Hello! Third round for Maxim max9611/max9612 high-side current sense amplifier driver. For reference, a simplified integration schematic drawing is here reported: ----o----/\/\/-----o-------|LOAD|--- | shunt | ____|______________|___ | RS+ RS- | | |-----gain-----| | | | | | | | |max9611 |->| ADC |===== I2c |______________________| public datasheet available at https://datasheets.maximintegrated.com/en/ds/MAX9611-MAX9612.pdf In v2 all channels whose values are calculated using parameters depending on the applied gain have been transformed in "processed" channels. In v3 fixed DT bindings to use a more generic name for ADC nodes, and shunt resistor description property. output reported from iio_info tool: iio:device0: max9611_vdd 6 channels found: voltage0: (input) 1 channel-specific attributes found: attr 0: input value: 4.085000000 voltage1: (input) 3 channel-specific attributes found: attr 0: scale value: 14 attr 1: offset value: 1 attr 2: raw value: 59 shunt: (input) 2 channel-specific attributes found: attr 0: resistor_power value: 5000 attr 1: resistor_current value: 5000 power: (input) 1 channel-specific attributes found: attr 0: input value: 663.404000000 temp: (input) 2 channel-specific attributes found: attr 0: scale value: 0.480076812 attr 1: raw value: 59 current: (input) 1 channel-specific attributes found: attr 0: input value: 817.000000000 Tested on Salvator-X M3-W board. Thanks j v1 -> v2: - Drop wildcard (max961x) in driver, documentation and dt-bindings. Use max9611 instead. - Make 3 processed channels for csa voltage, csa current and power load - Remove wrapper functions around i2c buffer access - Add locking in read_raw() - Make 2 separate attributes for shunt resistor: current and power - Renamed shunt resistor attribute - Fixed several review comments v2 -> v3: - Incorporated Geert's suggestions on using a more generic name for ADC nodes in device tree - Changed "maxim,shunt-resistor-uohm" to "shunt-resistor-uohm" - Update documentation accordingly to the two previous changes Jacopo Mondi (4): Documentation: dt-bindings: iio: Add max9611 ADC iio: Documentation: Add max9611 sysfs documentation iio: adc: Add Maxim max9611 ADC driver arm64: dts: salvator-x: Add current sense amplifiers .../ABI/testing/sysfs-bus-iio-adc-max9611 | 16 + .../devicetree/bindings/iio/adc/max9611.txt | 26 + arch/arm64/boot/dts/renesas/r8a7796-salvator-x.dts | 18 + drivers/iio/adc/Kconfig | 10 + drivers/iio/adc/Makefile | 1 + drivers/iio/adc/max9611.c | 590 +++++++++++++++++++++ 6 files changed, 661 insertions(+) create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-adc-max9611 create mode 100644 Documentation/devicetree/bindings/iio/adc/max9611.txt create mode 100644 drivers/iio/adc/max9611.c -- 2.7.4 -- To unsubscribe from this list: send the line "unsubscribe linux-iio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html