[PATCH v5 0/2] hwmon: (adm1275) Add sample averaging binding support
From: Potin Lai
Date: Wed Mar 02 2022 - 02:09:28 EST
This patch series allow user config PWR_AVG and VI_AVG in PMON_CONF
register by adding properties in device tree.
Example:
adm1278@11 {
compatible = "adi,adm1278";
......
adi,volt-curr-sample-average = <128>;
adi,power-sample-average = <128>;
};
LINK: [v1] https://lore.kernel.org/all/20220223163817.30583-1-potin.lai@xxxxxxxxxxxx/
LINK: [v2] https://lore.kernel.org/all/20220224154329.9755-1-potin.lai@xxxxxxxxxxxx/
LINK: [v3] https://lore.kernel.org/all/20220228103716.10774-1-potin.lai@xxxxxxxxxxxx/
LINK: [v4] https://lore.kernel.org/all/20220301103900.12637-1-potin.lai@xxxxxxxxxxxx/
Changes v4 --> v5:
- remove "adi,power-sample-average-enable" property, just set number of
sampling to 1 as disabling sample averaging, and set 2 .. 128 as
enabling.
- update correct default value (from datasheet) in if-block of each chip,
and set "adi,power-sample-average" to false if not allowed.
- change adm1278 pmon_config smbus write "byte" to "word" in probe,
adm1278 pmon_config register has 2 bytes data length.
Changes v3 --> v4:
- add "adi,power-sample-average-enable" property
- add sample number cehcking in driver, only allow listed value
- remove info logging, add error log when invalid number detected
Changes v2 --> v3:
- change property type back to u32, use logical value instead of register
value
- fix typo in properties description
- add if-block to descript "adi,power-sample-average" not alloed if
compatible not in the enum list
Changes v1 --> v2:
- use more descriptive property name
- change property type from u32 to u8
- add property value check, valid range between 1 and 7
Potin Lai (2):
hwmon: (adm1275) Allow setting sample averaging
dt-bindings: hwmon: Add sample averaging properties for ADM1275
.../bindings/hwmon/adi,adm1275.yaml | 69 +++++++++++++++++++
drivers/hwmon/pmbus/adm1275.c | 40 ++++++++++-
2 files changed, 108 insertions(+), 1 deletion(-)
--
2.17.1