]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
hwmon: (pmbus/adm1275) Accept negative page register values
authorGuenter Roeck <linux@roeck-us.net>
Sun, 11 Mar 2018 01:55:47 +0000 (17:55 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 30 May 2018 05:47:42 +0000 (07:47 +0200)
[ Upstream commit ecb29abd4cb0670c616fb563a078f25d777ce530 ]

A negative page register value means that no page needs to be
selected. This is used by status register read operations and needs
to be accepted. The failure to do so so results in missed status
and limit registers.

Fixes: da8e48ab483e1 ("hwmon: (pmbus) Always call _pmbus_read_byte in core driver")
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/hwmon/pmbus/adm1275.c

index 60aad9570f016987d82acd6d7f6104e94de3c12c..4876129c83376f331b2cc4cbe1284f1a954aad1d 100644 (file)
@@ -67,7 +67,7 @@ static int adm1275_read_word_data(struct i2c_client *client, int page, int reg)
        const struct adm1275_data *data = to_adm1275_data(info);
        int ret = 0;
 
-       if (page)
+       if (page > 0)
                return -ENXIO;
 
        switch (reg) {
@@ -144,7 +144,7 @@ static int adm1275_write_word_data(struct i2c_client *client, int page, int reg,
 {
        int ret;
 
-       if (page)
+       if (page > 0)
                return -ENXIO;
 
        switch (reg) {