[RFC PATCH 0/5] iio: adc: Add initial support for TI ADS1262

Sayyad Abid posted 5 patches 9 months, 1 week ago
.../bindings/iio/adc/ti,ads1262.yaml          | 189 ++++++++
MAINTAINERS                                   |   7 +
drivers/iio/adc/Kconfig                       |  12 +
drivers/iio/adc/Makefile                      |   1 +
drivers/iio/adc/ti-ads1262.c                  | 438 ++++++++++++++++++
5 files changed, 647 insertions(+)
create mode 100644 Documentation/devicetree/bindings/iio/adc/ti,ads1262.yaml
create mode 100644 drivers/iio/adc/ti-ads1262.c
[RFC PATCH 0/5] iio: adc: Add initial support for TI ADS1262
Posted by Sayyad Abid 9 months, 1 week ago
The ADS1262 is a 32-bit, high-resolution delta-sigma ADC communicating
over SPI. It's designed for precision measurements.

This initial driver provides the basic functionality needed to:
 - Probe and register the device via SPI.
 - Expose standard IIO channels for reading raw voltage samples.

Basic testing was performed on a Raspberry Pi Zero 2W using the hardware
SPI0 interface. The connections used were:

+-----------------+            +-----------------+
| RPi Zero 2W     |            | TI ADS1262      |
| (SPI0 Pins)     |            |                 |
|-----------------|            |-----------------|
| MOSI            |----------->| DIN             |
| MISO            |<-----------| DOUT/DRDY       |
| SCLK            |----------->| SCLK            |
| CE0             |----------->| /CS             |
| 5V              |----------->| DVDD, AVDD      |
| GND             |----------->| DGND, AGND      |
+-----------------+            +-----------------+

I would greatly appreciate any feedback on the driver structure,
IIO integration, SPI communication handling, or any potential issues
or areas for improvement you might spot.

This series is broken down as follows:
 Patch 1: Adds the core driver code (ti-ads1262.c).
 Patch 2: Adds the Kconfig option.
 Patch 3: Adds the Makefile entry for compilation.
 Patch 4: Adds the MAINTAINERS entry.

Thanks for your time and consideration.

Sayyad Abid (5):
  iio: adc: ti-ads1262.c: add initial driver for TI ADS1262 ADC
  iio: adc: Kconfig: add Kconfig entry for TI ADS1262 driver
  iio: adc: Makefile: add compile support for TI ADS1262 driver
  MAINTAINERS: add entry for TI ADS1262 ADC driver
  dt-bindings: iio: adc: add bindings for TI ADS1262

 .../bindings/iio/adc/ti,ads1262.yaml          | 189 ++++++++
 MAINTAINERS                                   |   7 +
 drivers/iio/adc/Kconfig                       |  12 +
 drivers/iio/adc/Makefile                      |   1 +
 drivers/iio/adc/ti-ads1262.c                  | 438 ++++++++++++++++++
 5 files changed, 647 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/iio/adc/ti,ads1262.yaml
 create mode 100644 drivers/iio/adc/ti-ads1262.c

--
2.39.5
Re: [RFC PATCH 0/5] iio: adc: Add initial support for TI ADS1262
Posted by Jonathan Cameron 9 months, 1 week ago
On Thu,  1 May 2025 15:30:38 +0530
Sayyad Abid <sayyad.abid16@gmail.com> wrote:

> The ADS1262 is a 32-bit, high-resolution delta-sigma ADC communicating
> over SPI. It's designed for precision measurements.
> 
> This initial driver provides the basic functionality needed to:
>  - Probe and register the device via SPI.
>  - Expose standard IIO channels for reading raw voltage samples.
> 
> Basic testing was performed on a Raspberry Pi Zero 2W using the hardware
> SPI0 interface. The connections used were:
> 
> +-----------------+            +-----------------+
> | RPi Zero 2W     |            | TI ADS1262      |
> | (SPI0 Pins)     |            |                 |
> |-----------------|            |-----------------|
> | MOSI            |----------->| DIN             |
> | MISO            |<-----------| DOUT/DRDY       |
> | SCLK            |----------->| SCLK            |
> | CE0             |----------->| /CS             |
> | 5V              |----------->| DVDD, AVDD      |
> | GND             |----------->| DGND, AGND      |
> +-----------------+            +-----------------+
> 
> I would greatly appreciate any feedback on the driver structure,
> IIO integration, SPI communication handling, or any potential issues
> or areas for improvement you might spot.
> 
> This series is broken down as follows:
>  Patch 1: Adds the core driver code (ti-ads1262.c).
>  Patch 2: Adds the Kconfig option.
>  Patch 3: Adds the Makefile entry for compilation.
>  Patch 4: Adds the MAINTAINERS entry.
> 
> Thanks for your time and consideration.

Hi Sayyad

As a general rule, an RFC is usually meant to contain a list of open
questions or some clear statement on why it is not ready for consideration
as a final driver submissions. Often that is something like some other
ongoing discussion that needs to conclude.

I'm not seeing such questions, so I'm guessing this was just a bit of
a lack of confidence?  In general it looks pretty good so drop the RFC on
v2 :)

Jonathan

> 
> Sayyad Abid (5):
>   iio: adc: ti-ads1262.c: add initial driver for TI ADS1262 ADC
>   iio: adc: Kconfig: add Kconfig entry for TI ADS1262 driver
>   iio: adc: Makefile: add compile support for TI ADS1262 driver
>   MAINTAINERS: add entry for TI ADS1262 ADC driver
>   dt-bindings: iio: adc: add bindings for TI ADS1262
> 
>  .../bindings/iio/adc/ti,ads1262.yaml          | 189 ++++++++
>  MAINTAINERS                                   |   7 +
>  drivers/iio/adc/Kconfig                       |  12 +
>  drivers/iio/adc/Makefile                      |   1 +
>  drivers/iio/adc/ti-ads1262.c                  | 438 ++++++++++++++++++
>  5 files changed, 647 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/iio/adc/ti,ads1262.yaml
>  create mode 100644 drivers/iio/adc/ti-ads1262.c
> 
> --
> 2.39.5
> 
>
Re: [RFC PATCH 0/5] iio: adc: Add initial support for TI ADS1262
Posted by David Lechner 9 months, 1 week ago
On 5/1/25 5:00 AM, Sayyad Abid wrote:
> The ADS1262 is a 32-bit, high-resolution delta-sigma ADC communicating
> over SPI. It's designed for precision measurements.
> 
> This initial driver provides the basic functionality needed to:
>  - Probe and register the device via SPI.
>  - Expose standard IIO channels for reading raw voltage samples.
> 
> Basic testing was performed on a Raspberry Pi Zero 2W using the hardware
> SPI0 interface. The connections used were:
> 
> +-----------------+            +-----------------+
> | RPi Zero 2W     |            | TI ADS1262      |
> | (SPI0 Pins)     |            |                 |
> |-----------------|            |-----------------|
> | MOSI            |----------->| DIN             |
> | MISO            |<-----------| DOUT/DRDY       |
> | SCLK            |----------->| SCLK            |
> | CE0             |----------->| /CS             |
> | 5V              |----------->| DVDD, AVDD      |
> | GND             |----------->| DGND, AGND      |
> +-----------------+            +-----------------+
> 
> I would greatly appreciate any feedback on the driver structure,
> IIO integration, SPI communication handling, or any potential issues
> or areas for improvement you might spot.
> 
> This series is broken down as follows:
>  Patch 1: Adds the core driver code (ti-ads1262.c).
>  Patch 2: Adds the Kconfig option.
>  Patch 3: Adds the Makefile entry for compilation.
>  Patch 4: Adds the MAINTAINERS entry.
> 
> Thanks for your time and consideration.
> 
> Sayyad Abid (5):
>   iio: adc: ti-ads1262.c: add initial driver for TI ADS1262 ADC
>   iio: adc: Kconfig: add Kconfig entry for TI ADS1262 driver
>   iio: adc: Makefile: add compile support for TI ADS1262 driver
>   MAINTAINERS: add entry for TI ADS1262 ADC driver
>   dt-bindings: iio: adc: add bindings for TI ADS1262
> 
>  .../bindings/iio/adc/ti,ads1262.yaml          | 189 ++++++++
>  MAINTAINERS                                   |   7 +
>  drivers/iio/adc/Kconfig                       |  12 +
>  drivers/iio/adc/Makefile                      |   1 +
>  drivers/iio/adc/ti-ads1262.c                  | 438 ++++++++++++++++++
>  5 files changed, 647 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/iio/adc/ti,ads1262.yaml
>  create mode 100644 drivers/iio/adc/ti-ads1262.c
> 
> --
> 2.39.5
> 

It looks like you managed to CC everyone who ever touched the IIO ADC makefile.
On v2, you don't need to include quite so many. :-) Just the people listed in
MAINTAINERS.

And you can drop the RFC on v2, there doesn't seem to be anything unusual that
needs more than regular review. v1 didn't really need the RFC either and is
quite good for a first IIO driver. ;-)
Re: [RFC PATCH 0/5] iio: adc: Add initial support for TI ADS1262
Posted by Andy Shevchenko 9 months, 1 week ago
On Thu, May 01, 2025 at 01:20:51PM -0500, David Lechner wrote:
> On 5/1/25 5:00 AM, Sayyad Abid wrote:

> It looks like you managed to CC everyone who ever touched the IIO ADC makefile.
> On v2, you don't need to include quite so many. :-) Just the people listed in
> MAINTAINERS.

FWIW, one may use my "smart" script [1] that has some heuristics which appears to
be quite robust (rarely gives false positives).

[1]: https://github.com/andy-shev/home-bin-tools/blob/master/ge2maintainer.sh


-- 
With Best Regards,
Andy Shevchenko