mbox series

[v4,0/2] Add support for ADS131E0x ADC family

Message ID 20210202084107.3260-1-tomislav.denis@avl.com (mailing list archive)
Headers show
Series Add support for ADS131E0x ADC family | expand

Message

Denis, Tomislav AVL DiTEST Feb. 2, 2021, 8:41 a.m. UTC
From: Tomislav Denis <tomislav.denis@avl.com>

This patchset adds support for Texas Instruments ADS131E0x
analog-to-digital converters family.

Datasheet: https://www.ti.com/lit/ds/symlink/ads131e08.pdf

Changes in v4:
- regroup includes and add blank lines between groups
- update and rename some of defines
- remove  all __func__ occurrences from logging statements
- replace all occurrences of the pre increment with the
  post increment operator 
- optimize return statements
- use for_each_clear_bit where is possible
- use fwnode API instead of the OF API
- use dev_err_probe to avoid spam when deferred
- support use of other triggers

Changes in v3:
- update driver description in Kconfig
- reorder includes in alphabetical order
- replace all occurrences of sizeof(type) with sizeof(variable)
- validate gain and channel mux values when parsing DT
- use of_device_get_match_data insted spi_get_device_id mapping
- proper handling of devm_regulator_get_optional error
- fetch vref regulator value each time when reading the scale value
- remove spi_device_id table
- fix wrong maximum value in driver bindings

Changes in v2:
- refactor SPI communication and use DMA safe buffers
- supplay timestamp when sample data is added to the buffer
- do trigger pooling in top half instead threaded IRQ
- refactor external/internal voltage reference logic
- make everything device managed by using devm_add_action_or_reset
- make data rate runtime controllable insted DT parameter
- use generic ADC channel binding for DT channel configuration
- replace global PGA gain with PGA gain per channel
- add support for channel input selection(muliplexer)
- don't use validate_device in iio_trigger_ops struct
- drop the unneceseary return ret;
- minor changes on defines

Tomislav Denis (2):
  iio: adc: Add driver for Texas Instruments ADS131E0x ADC family
  bindings: iio: adc: Add documentation for ADS131E0x ADC driver

 .../devicetree/bindings/iio/adc/ti,ads131e08.yaml  | 181 ++++
 MAINTAINERS                                        |   7 +
 drivers/iio/adc/Kconfig                            |  12 +
 drivers/iio/adc/Makefile                           |   1 +
 drivers/iio/adc/ti-ads131e08.c                     | 948 +++++++++++++++++++++
 5 files changed, 1149 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/iio/adc/ti,ads131e08.yaml
 create mode 100644 drivers/iio/adc/ti-ads131e08.c