> -----Original Message----- > From: Naresh Solanki <naresh.solanki@xxxxxxxxxxxxx> > Sent: Monday, 31 July 2023 12:22 > To: Guenter Roeck <linux@xxxxxxxxxxxx>; Jean Delvare <jdelvare@xxxxxxxx> > Cc: Vadim Pasternak <vadimp@xxxxxxxxxx>; Patrick Rudolph > <patrick.rudolph@xxxxxxxxxxxxx>; Naresh Solanki > <Naresh.Solanki@xxxxxxxxxxxxx>; linux-hwmon@xxxxxxxxxxxxxxx; linux- > kernel@xxxxxxxxxxxxxxx > Subject: [PATCH v2] hwmon: (pmbus/mp2975) Fix PGOOD in > READ_STATUS_WORD > > 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. Hi, According to MP2975 regmap datasheet for STATUS_WORD, bit 11 reports: 11 POWER_GOOD_N 1’b0: PG is active. 1’b1: PG not active has occurred Is it the same what stays MP2971 and MP2973 docs? Thanks, Vadim. > > Signed-off-by: Patrick Rudolph <patrick.rudolph@xxxxxxxxxxxxx> > Signed-off-by: Naresh Solanki <Naresh.Solanki@xxxxxxxxxxxxx> > --- > drivers/hwmon/pmbus/mp2975.c | 5 +++++ > 1 file changed, 5 insertions(+) > > 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)); > > base-commit: cb7022b8976e3c4d12cea2e7bb820a2944e2fd7b > -- > 2.41.0