Re: [PATCH v3 0/2] AD74115
From: Jonathan Cameron
Date: Wed Nov 23 2022 - 15:39:15 EST
On Thu, 17 Nov 2022 10:09:14 +0200
Cosmin Tanislav <demonsingur@xxxxxxxxx> wrote:
> The AD74115H is a single-channel, software-configurable, input and
> output device for industrial control applications. The AD74115H
> provides a wide range of use cases, integrated on a single chip.
>
> These use cases include analog output, analog input, digital output,
> digital input, resistance temperature detector (RTD), and thermocouple
> measurement capability. The AD74115H also has an integrated HART modem.
>
> A serial peripheral interface (SPI) is used to handle all communications
> to the device, including communications with the HART modem. The digital
> input and digital outputs can be accessed via the SPI or the
> general-purpose input and output (GPIO) pins to support higher
> speed data rates.
>
> The device features a 16-bit, sigma-delta analog-to-digital converter
> (ADC) and a 14-bit digital-to-analog converter (DAC).
> The AD74115H contains a high accuracy 2.5 V on-chip reference that can
> be used as the DAC and ADC reference.
>
Applied to the togreg branch of iio.git.
Thanks,
Jonathan
> V2 -> V3:
> * dt-bindings: remove address and size cells specifiers
> * dt-bindings: additionalProperties -> unevaluatedProperties
> * dt-bindings: remove pipe where not needed
> * dt-bindings: use required for adi,digital-input-sink-range-high: true
> * do not uselessly store poll time
> * fix ad74115_adc_gain capitalization
> * inline ad74115_channels_map[st->ch_func] access
> * keep consistent table naming
> * remove aldo1v8 regulator
> * spell out low-power
> * split up resistance offset and scale into separate function
> * use adc_rdy name for irq
> * use microvolt for conv2 range
> * use unsigned int for ad74115_adc_conv_mul
> * use unsigned int for ad74115_adc_gain
> * wrap module_driver call less
>
> V1 -> V2:
> * dt-bindings: add spi peripheral allOf
> * dt-bindings: remove cs-gpios
> * dt-bindings: remove refin supply from example
> * dt-bindings: remove status
> * sort includes
> * ad74115_parse_fw_prop -> ad74115_apply_fw_prop
> * ad74115_setup_{comp,}_gc -> ad74115_setup_{comp,}_gpio_chip
> * gpiod_get_optional -> devm_gpiod_get_optional
> * add support for reset-gpios
> * add support for running without an interrupt
> * fix comma after terminating member
> * fix order of rate and range masks
> * fix reset pin wait time and out of reset time
> * fix rtd mode reading
> * pass chan spec only where needed
> * remove -en suffix
> * remove default 0 values
> * remove diag support
> * remove unecessary prop storage
> * reorder switch cases to match enum
> * set burnout enable bit based on burnout current
> * set default value for props
> * simplify dac hart slew usage
> * simplify prop value validation
> * use bool for 4 wire rtd mode
> * use bool for burnout current polarity
> * use bool for dac sc current limit
> * use bool for debounce mode
> * use bool for din sink range
> * use bool for din threshold mode
> * use devm_regulator_bulk_get_enable
> * use IIO_VAL_FRACTIONAL for resistance offset
> * use struct assignment for gpiochip
> * warn on empty prop mask
>
> Cosmin Tanislav (2):
> dt-bindings: iio: addac: add AD74115
> iio: addac: add AD74115 driver
>
> .../bindings/iio/addac/adi,ad74115.yaml | 373 ++++
> MAINTAINERS | 8 +
> drivers/iio/addac/Kconfig | 14 +
> drivers/iio/addac/Makefile | 1 +
> drivers/iio/addac/ad74115.c | 1947 +++++++++++++++++
> 5 files changed, 2343 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/iio/addac/adi,ad74115.yaml
> create mode 100644 drivers/iio/addac/ad74115.c
>