On Mon, Jul 31, 2023 at 11:22:04AM +0200, Naresh Solanki wrote: > From: Patrick Rudolph <patrick.rudolph@xxxxxxxxxxxxx> > > MP2973 & MP2971 returns PGOOD instead of PB_STATUS_POWER_GOOD_N. > Fix that in the read_word_data hook. > MP2975 might be affected but needs verification. > > Signed-off-by: Patrick Rudolph <patrick.rudolph@xxxxxxxxxxxxx> > Signed-off-by: Naresh Solanki <Naresh.Solanki@xxxxxxxxxxxxx> Applied, after rephrasing description to indicate that MP2975 is likely not affected. Also added Fixes: tags. Guenter > --- > drivers/hwmon/pmbus/mp2975.c | 5 +++++ > 1 file changed, 5 insertions(+) > > > base-commit: cb7022b8976e3c4d12cea2e7bb820a2944e2fd7b > > diff --git a/drivers/hwmon/pmbus/mp2975.c b/drivers/hwmon/pmbus/mp2975.c > index 28f33f4618fa..27bb39370662 100644 > --- a/drivers/hwmon/pmbus/mp2975.c > +++ b/drivers/hwmon/pmbus/mp2975.c > @@ -297,6 +297,11 @@ static int mp2973_read_word_data(struct i2c_client *client, int page, > int ret; > > switch (reg) { > + case PMBUS_STATUS_WORD: > + /* MP2973 & MP2971 returns PGOOD instead of PB_STATUS_POWER_GOOD_N. */ > + ret = pmbus_read_word_data(client, page, phase, reg); > + ret ^= PB_STATUS_POWER_GOOD_N; > + break; > case PMBUS_OT_FAULT_LIMIT: > ret = mp2975_read_word_helper(client, page, phase, reg, > GENMASK(7, 0));