Re: [PATCH v2 0/2] add support for Microchip PAC1711 Power Monitor
From: Jonathan Cameron
Date: Sat Aug 01 2026 - 19:10:03 EST
On Tue, 28 Jul 2026 15:03:47 +0300
Ariana Lazar <ariana.lazar@xxxxxxxxxxxxx> wrote:
> The PAC1711, PAC1721, PAC1811 and PAC1821 products are single-channel power
> monitors with accumulator. The PAC1711 and PAC1721 devices use 12-bit
> resolution for voltage and current measurements and 24 bits for power
> calculations, while PAC1811 and PAC1821 have 16-bit resolution and use 32
> bits for power calculations. The 56-bit accumulator register accumulates
> power (energy) or current (Coulomb counter).
>
> PAC1711 and PAC1811 measure up to 42V Full-Scale Range, respectively 9V for
> PAC1721 and PAC1821.
Hi Ariana,
Cover letter should include a discussion of why IIO makes more sense than
hmwon similar to what you posted for v1.
+ keep Guenter +CC if not also the hmwon list.
Jonathan
>
> Signed-off-by: Ariana Lazar <ariana.lazar@xxxxxxxxxxxxx>
> ---
> Changes in v2:
> - fix review comments device tree binding:
> add PAC1721, PAC1811 and PAC1821 part numbers
> add Vbus/Vsense input ranges in attribute definition
> change accumulation-mode from int to string type
> remove size and address cells
> correct interrupts definition and add attributes for the two
> alerts, microchip,gpio0-mode and microchip,gpio1-mode
> remove microchip,gpio attribute
> remove "vbus" accumulation mode
>
> - fix review comments driver:
> add PAC1721, PAC1811 and PAC1821 part numbers
> run pahole on reg_data and pac1711_chip_info structs
> remove average registers - VBUS_AVG and VSENSE_AVG
> add PAC1721, PAC1811, PAC1821 to features/compatible
> add missing headers
> remove rarely used defines like PAC1711_POWER_24B_RES and use the
> numerical value inline instead
> use ARRAY_SIZE() instead of define for the number of accumulator
> related attributes
> add explanation for bytes length defines
> use spacing convention space after { and before }
> remove pac1711_shift_map_tbl in order to use just
> pac1711_samp_rate_map_tbl and an index saved in struct
> use read_avail() for sampling_rate
> change mutex comment in reg_data
> use fsleep instead of usleep
> use a local __be16 variable in endianess transformations
> add missing error returns after dev_err
> add info_mask_shared_by_all for sampling_frequency
> use dev_info instead of dev_err_probe in chip_identify
> generalize input setup functions into one
> remove device_property_present
> rename pac1711_single_channel into pac1711_chan_spec
> rename pac1711_of_parse_channel_config into pac1711_parse_fw
> remove unneccessary comments in probe
> define in_shunt_resistor as ext_info instead of custom attribute
> use calculations only with 16-bit resolution instead of multiple
> shifting (12-bit registers are left shifted)
> add scale computations based on new voltage of 9V for PAC1721/PAC1821
>
> v1:
> - first version committed to review
> - Link to v1: https://lore.kernel.org/r/20251015-pac1711-v1-0-976949e36367@xxxxxxxxxxxxx
>
> ---
> Ariana Lazar (2):
> dt-bindings: iio: adc: add support for PAC1711
> iio: adc: add support for PAC1711
>
> .../ABI/testing/sysfs-bus-iio-adc-pac1711 | 24 +
> .../bindings/iio/adc/microchip,pac1711.yaml | 209 ++++
> MAINTAINERS | 8 +
> drivers/iio/adc/Kconfig | 11 +
> drivers/iio/adc/Makefile | 1 +
> drivers/iio/adc/pac1711.c | 1274 ++++++++++++++++++++
> 6 files changed, 1527 insertions(+)
> ---
> base-commit: 19272b37aa4f83ca52bdf9c16d5d81bdd1354494
> change-id: 20250901-pac1711-d3bacda400fd
>
> Best regards,