[PATCH 0/5] hwmon: (pmbus/core) Introduce and use pmbus_read_smbus_i2c_block_data()

Guenter Roeck <[email protected]> Mon, 3 Aug 2026 12:35:30 -0700
Newsgroups org.kernel.vger.linux-hwmon
Message-ID <[email protected]>
PMBus drivers need support for reading SMBus block data. Unfortunately,
not all i2C controllers support this command.

Implement pmbus_read_smbus_i2c_block_data() which first tries to use
i2c_smbus_read_block_data(). If not supported, try to emulate it by calling
i2c_smbus_read_i2c_block_data(). Export the new function for use in PMBus
drivers, and use it in affected drivers.

----------------------------------------------------------------
Guenter Roeck (5):
      hwmon: (pmbus/core) Introduce pmbus_read_smbus_i2c_block_data()
      hwmon: (pmbus/adm1275) Use pmbus_read_smbus_i2c_block_data for block commands
      hwmon: (pmbus/ltc2978) Use pmbus_read_smbus_i2c_block_data for block commands
      hwmon: (pmbus/max20830) Use pmbus_read_smbus_i2c_block_data for block commands
      hwmon: (pmbus/ir36021) Use pmbus_read_smbus_i2c_block_data for block commands

 drivers/hwmon/pmbus/adm1275.c    |   9 +---
 drivers/hwmon/pmbus/ir36021.c    |  22 +++------
 drivers/hwmon/pmbus/ltc2978.c    |  21 ++++----
 drivers/hwmon/pmbus/max20830.c   |  34 ++-----------
 drivers/hwmon/pmbus/pmbus.h      |   1 +
 drivers/hwmon/pmbus/pmbus_core.c | 102 ++++++++++++++++++++++++++++++++++++---
 6 files changed, 117 insertions(+), 72 deletions(-)