mbox series

[v5,0/2] Adding support for Microchip MCP3564 ADC family

Message ID 20230829154133.40716-1-marius.cristea@microchip.com
Headers show
Series Adding support for Microchip MCP3564 ADC family | expand

Message

marius.cristea@microchip.com Aug. 29, 2023, 3:41 p.m. UTC
From: Marius Cristea <marius.cristea@microchip.com>

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:
v5:
- fix review comments from v4:
  -  fix coding stile
  - remove some of the _SET defines
  - flip logic to cut down on indent in some cases
  - update "mcp3564_update_8bits" function to be more clear

v4:
- fix review comments from v3:
  - adding label names for channels into the example from the
    "microchip,mcp3564.yaml" file  
  - update defines names (with _REG and _MASK)
  - code clean-up
  - flip logic to cut down on indent in some cases
  - use "spi_get_device_match_data" instead of "device_get_match_data"
  - remove some unnecessary _SET functions
- change "boost_current" attribute to "boost_current_gain". The
  attribute is a gain not an absolute value.
- change "boost_current_available" attribute to
  "boost_current_gain_available"
- update comment from v3 (to better describe the change) "fallback compatible
  in device tree to deal with some newer part number" to "stop failing to
  probe when the chip id is not recognized. In this case a fallback
  compatible has been used to support a new part number"

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
  - stop failing to probe when the chip id is not recognized. In this
    case a fallback compatible has been used to support a new 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.
  - 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   |  205 +++
 MAINTAINERS                                   |    7 +
 drivers/iio/adc/Kconfig                       |   13 +
 drivers/iio/adc/Makefile                      |    1 +
 drivers/iio/adc/mcp3564.c                     | 1516 +++++++++++++++++
 6 files changed, 1795 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

Comments

marius.cristea@microchip.com Aug. 29, 2023, 4:01 p.m. UTC | #1
Hi Conor

On Tue, 2023-08-29 at 16:45 +0100, Conor Dooley wrote:
> On Tue, Aug 29, 2023 at 06:41:32PM +0300,
> marius.cristea@microchip.com wrote:
> > From: Marius Cristea <marius.cristea@microchip.com>
> > 
> > This is the device tree schema for iio driver for
> > Microchip family of 153.6 ksps, Low-Noise 16/24-Bit
> > Delta-Sigma ADCs with an SPI interface (Microchip's
> > MCP3461, MCP3462, MCP3464, MCP3461R, MCP3462R,
> > MCP3464R, MCP3561, MCP3562, MCP3564, MCP3561R,
> > MCP3562R and MCP3564R analog to digital converters).
> > 
> > Signed-off-by: Marius Cristea <marius.cristea@microchip.com>
> 
> Did you intentionally drop my reviewed-by that I gave you on v4?
> 

Sorry that was my mistake. I was not aware that I need to keep the
reviewd-by that you have given me on v4, also on v5.

Thanks,
Marius
Conor Dooley Aug. 29, 2023, 4:18 p.m. UTC | #2
On Tue, Aug 29, 2023 at 04:01:00PM +0000, Marius.Cristea@microchip.com wrote:
> Hi Conor
> 
> On Tue, 2023-08-29 at 16:45 +0100, Conor Dooley wrote:
> > On Tue, Aug 29, 2023 at 06:41:32PM +0300,
> > marius.cristea@microchip.com wrote:
> > > From: Marius Cristea <marius.cristea@microchip.com>
> > > 
> > > This is the device tree schema for iio driver for
> > > Microchip family of 153.6 ksps, Low-Noise 16/24-Bit
> > > Delta-Sigma ADCs with an SPI interface (Microchip's
> > > MCP3461, MCP3462, MCP3464, MCP3461R, MCP3462R,
> > > MCP3464R, MCP3561, MCP3562, MCP3564, MCP3561R,
> > > MCP3562R and MCP3564R analog to digital converters).
> > > 
> > > Signed-off-by: Marius Cristea <marius.cristea@microchip.com>
> > 
> > Did you intentionally drop my reviewed-by that I gave you on v4?
> > 
> 
> Sorry that was my mistake. I was not aware that I need to keep the
> reviewd-by that you have given me on v4, also on v5.

If you don't change anything meaningful, there's no need to drop the
tags. AFAICT, you changed nothing at all here.
Reviewed-by: Conor Dooley <conor.dooley@microchip.com>

Thanks,
Conor.