[PATCH 0/3] iio: adc: add support for ADE9000 Energy Monitoring IC

Antoniu Miclaus posted 3 patches 2 months, 3 weeks ago
There is a newer version of this series
Documentation/ABI/testing/sysfs-bus-iio       |   19 +
.../bindings/iio/adc/adi,ade9000.yaml         |  157 ++
drivers/iio/adc/Kconfig                       |   13 +
drivers/iio/adc/Makefile                      |    1 +
drivers/iio/adc/ade9000.c                     | 2187 +++++++++++++++++
drivers/iio/industrialio-core.c               |   11 +
include/uapi/linux/iio/types.h                |   11 +
7 files changed, 2399 insertions(+)
create mode 100644 Documentation/devicetree/bindings/iio/adc/adi,ade9000.yaml
create mode 100644 drivers/iio/adc/ade9000.c
[PATCH 0/3] iio: adc: add support for ADE9000 Energy Monitoring IC
Posted by Antoniu Miclaus 2 months, 3 weeks ago
This patch series adds support for the Analog Devices ADE9000, a highly
accurate, fully integrated, multiphase energy and power quality monitoring
device. The ADE9000 is capable of measuring energy consumption and power
quality parameters in industrial and commercial applications.

The series includes:

1. New IIO modifiers for power and energy measurement devices, including
   support for active/reactive/apparent power, energy accumulation, RMS
   measurements, and power quality indicators (swell/dip detection).

2. Device tree bindings for the ADE9000, supporting waveform buffer
   configuration, phase configuration, and trigger settings.

3. Complete driver implementation supporting:
   - Multi-phase energy measurement (3-phase support)
   - Power quality monitoring (voltage swell/dip detection)
   - Waveform buffer capture with configurable triggering
   - Energy accumulation with configurable time windows
   - IIO buffer interface for continuous data streaming
   - Event-based notifications for power quality events

The driver provides a comprehensive interface for energy monitoring
applications through the IIO framework, enabling userspace applications
to monitor power consumption, quality, and waveform data.

The driver will be extended in the future to support multiple parts such as
ade9039.

Antoniu Miclaus (3):
  iio: add power and energy measurement modifiers
  dt-bindings: iio: adc: add ade9000
  iio: adc: add ade9000 support

 Documentation/ABI/testing/sysfs-bus-iio       |   19 +
 .../bindings/iio/adc/adi,ade9000.yaml         |  157 ++
 drivers/iio/adc/Kconfig                       |   13 +
 drivers/iio/adc/Makefile                      |    1 +
 drivers/iio/adc/ade9000.c                     | 2187 +++++++++++++++++
 drivers/iio/industrialio-core.c               |   11 +
 include/uapi/linux/iio/types.h                |   11 +
 7 files changed, 2399 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/iio/adc/adi,ade9000.yaml
 create mode 100644 drivers/iio/adc/ade9000.c

-- 
2.49.0
Re: [PATCH 0/3] iio: adc: add support for ADE9000 Energy Monitoring IC
Posted by David Lechner 2 months, 3 weeks ago
On 7/11/25 8:02 AM, Antoniu Miclaus wrote:
> This patch series adds support for the Analog Devices ADE9000, a highly
> accurate, fully integrated, multiphase energy and power quality monitoring
> device. The ADE9000 is capable of measuring energy consumption and power
> quality parameters in industrial and commercial applications.
> 
> The series includes:
> 
> 1. New IIO modifiers for power and energy measurement devices, including
>    support for active/reactive/apparent power, energy accumulation, RMS
>    measurements, and power quality indicators (swell/dip detection).
> 
> 2. Device tree bindings for the ADE9000, supporting waveform buffer
>    configuration, phase configuration, and trigger settings.
> 
> 3. Complete driver implementation supporting:

You will get much better review if we can spread this out across
multiple series instead of trying to do everything all at once.
At a minimum, each of these should be a separate patch. 2000 lines
in one patch is just way too much to grok at once.

>    - Multi-phase energy measurement (3-phase support)
>    - Power quality monitoring (voltage swell/dip detection)
>    - Waveform buffer capture with configurable triggering
>    - Energy accumulation with configurable time windows
>    - IIO buffer interface for continuous data streaming
>    - Event-based notifications for power quality events
> 
> The driver provides a comprehensive interface for energy monitoring
> applications through the IIO framework, enabling userspace applications
> to monitor power consumption, quality, and waveform data.
> 
> The driver will be extended in the future to support multiple parts such as
> ade9039.
> 
> Antoniu Miclaus (3):
>   iio: add power and energy measurement modifiers

It looks like [PATCH 1/3] didn't get sent out.

>   dt-bindings: iio: adc: add ade9000
>   iio: adc: add ade9000 support
> 
>  Documentation/ABI/testing/sysfs-bus-iio       |   19 +
>  .../bindings/iio/adc/adi,ade9000.yaml         |  157 ++
>  drivers/iio/adc/Kconfig                       |   13 +
>  drivers/iio/adc/Makefile                      |    1 +
>  drivers/iio/adc/ade9000.c                     | 2187 +++++++++++++++++
>  drivers/iio/industrialio-core.c               |   11 +
>  include/uapi/linux/iio/types.h                |   11 +
>  7 files changed, 2399 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/iio/adc/adi,ade9000.yaml
>  create mode 100644 drivers/iio/adc/ade9000.c
>