On Fri, May 07, 2021 at 09:40:20PM +0200, Erik Rosen wrote: > Some Flex pmbus converters (BMR310, BMR458, BMR80, BMR490 and BMR491) > end up in an undefined state when trying to read a 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 or write. 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 > > v2 > -Copy all flags to pmbus_platform_data struct instead of one by one > -Fix code formatting in pmbus_core documentation > -Add documentation for flag NO_CAPABILITY > -Fix sorting of chip names and prefix in pmbus documentation > Series applied, with minor whitespace fixes in documentation. Guenter