Messages in this thread | | | Date | Fri, 28 Jul 2023 03:00:27 -0700 | From | Guenter Roeck <> | Subject | Re: [PATCH] hwmon: (pmbus/mp2975) Fix PGOOD in READ_STATUS_WORD |
| |
On 7/28/23 01:25, Naresh Solanki wrote: > From: Patrick Rudolph <patrick.rudolph@9elements.com> > > MPS returns PGOOD instead of PB_STATUS_POWER_GOOD_N. > Fix that in the read_word_data hook. > Datasheets are not public, so I can not verify, but the code below only handles MP2973 and MP2971. What about MP2975 ?
Either case, this appears to affect most Monolithic chips, but not all of them. Please limit the statement to known to be affected chips.
> Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> > Signed-off-by: Naresh Solanki <Naresh.Solanki@9elements.com> > --- > drivers/hwmon/pmbus/mp2975.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/hwmon/pmbus/mp2975.c b/drivers/hwmon/pmbus/mp2975.c > index 28f33f4618fa..410b6eae6d02 100644 > --- a/drivers/hwmon/pmbus/mp2975.c > +++ b/drivers/hwmon/pmbus/mp2975.c > @@ -297,6 +297,10 @@ static int mp2973_read_word_data(struct i2c_client *client, int page, > int ret; > > switch (reg) { > + case PMBUS_STATUS_WORD: > + ret = pmbus_read_word_data(client, page, phase, reg);
if (ret < 0) return ret;
Please add a comment explaining what is going on.
> + ret ^= PB_STATUS_POWER_GOOD_N; > + break; > case PMBUS_OT_FAULT_LIMIT: > ret = mp2975_read_word_helper(client, page, phase, reg, > GENMASK(7, 0)); > > base-commit: a4bb1ce5b9e3ca403c04e20ebeae77fd6447cb11
| |