Hi! The LTC2978 driver supports a wide range of power regulator chips, but it has limited functionality for using it in a dynamic regulator framework. Since standard functions for setting and getting voltage are missing as pmbus core operations this patchset adds it. These patches have been tested on an ARTPEC-8 developer board with a group of LTC2977 power regulators. Kind regards Mårten Lindahl Changes in v2: - Add pmbus core _pmbus_write_byte_data to check for driver specific callback - Change pmbus_update_byte_data to use _pmbus_read/write_byte_data - Change pmbus_regulator_is_enabled to use _pmbus_read_byte_data - Export pmbus core functions enable/disable/is_enabled Changes in v3: - Split patch "hwmon: (pmbus/ltc2978) Use driver specific ops if they exist" into two patches: (1) pmbus core, (2) ltc2978. - Move ltc2978_regulator_get/set_voltage functions to pmbus core. Changes in v4: - Split (and rename) patch "hwmon: (pmbus) Use driver specific ops if they exist" into two patches where the first handle _pmbus_write_byte_data, and the second handle _pmbus_read_byte_data. - Use voltage conversion functions in pmbus_regulator_get/set_voltage. Changes in v5: - Remove PMBUS_VOUT_COMMAND voltage attribute added in v4 and use local sensor object for conversion. - Try to read MFR_VOUT_MIN and MFR_VOUT_MAX first, or else VOUT_MARGIN_LOW and VOUT_MARGIN_HIGH, to get voltage window. Mårten Lindahl (4): hwmon: (pmbus) Introduce and use write_byte_data callback hwmon: (pmbus) Use _pmbus_read_byte_data with callback hwmon: (pmbus/ltc2978) Add chip specific write_byte_data hwmon: (pmbus) Add get_voltage/set_voltage ops drivers/hwmon/pmbus/ltc2978.c | 12 +++ drivers/hwmon/pmbus/pmbus.h | 2 + drivers/hwmon/pmbus/pmbus_core.c | 133 +++++++++++++++++++++++++------ 3 files changed, 121 insertions(+), 26 deletions(-) -- 2.30.2