[PATCH 0/3] hwmon: (pmbus) Add support for additional Flex BMR converters to the pmbus driver

From: Erik Rosen
Date: Wed May 05 2021 - 14:33:03 EST


Some Flex PMBus converters (BMR310, BMR458, BMR80, BMR490 and BMR491)
end up in an undefined state when trying to read an register that does
not exist in the chip. This causes the following chip access to also
fail even if it is a valid register read. This will mess up the pmbus
driver auto-detection process.

One way to reset the pmbus state machine to a known state is to read
a register that is known to exist. This read will fail but will also
reset the chip into a known state.

For such chips we suggest adding a new pmbus flag:
PMBUS_READ_STATUS_AFTER_FAILED_CHECK
By setting this flag the driver will try to read the STATUS register
after each failed register check. This read may fail, but it will put
the chip into a known state so that the auto-detection process can
proceed correctly.

Add support for Flex BMR310, BMR456, BMR457, BMR458, BMR480, BMR490,
BMR491 and BMR492 to the pmbus driver

This patch has been tested with Flex BMR310, BMR456, BMR457, BMR458,
BMR480, BMR490, BMR491 and BMR492 converter modules

Erik Rosen (3):
Add new flag PMBUS_READ_STATUS_AFTER_FAILED_CHECK
Add documentation for new flags
Add support for Flex BMR310, BMR456, BMR457, BMR458, BMR480, BMR490,
BMR491 and BMR492 to the pmbus driver

Documentation/hwmon/pmbus-core.rst | 24 ++++++++++++++++++++++--
Documentation/hwmon/pmbus.rst | 11 +++++++----
drivers/hwmon/pmbus/Kconfig | 7 ++++---
drivers/hwmon/pmbus/pmbus.c | 24 ++++++++++++++++++++++--
drivers/hwmon/pmbus/pmbus_core.c | 2 ++
include/linux/pmbus.h | 13 +++++++++++++
6 files changed, 70 insertions(+), 11 deletions(-)


base-commit: 1e28eed17697bcf343c6743f0028cc3b5dd88bf0
--
2.20.1