From: Michael Nosthoff <commit...@heine.so>

commit 99956a9e08251a1234434b492875b1eaff502a12 upstream.

the type flag is stored in the chip->flags field not in the
client->flags field. This currently leads to never using the ti
specific health function as client->flags doesn't use that bit.
So it's always falling back to the general one.

Fixes: 76b16f4cdfb8 ("power: supply: sbs-battery: don't assume 
MANUFACTURER_DATA formats")
Cc: <sta...@vger.kernel.org>
Signed-off-by: Michael Nosthoff <commit...@heine.so>
Reviewed-by: Brian Norris <briannor...@chromium.org>
Reviewed-by: Enric Balletbo i Serra <enric.balle...@collabora.com>
Signed-off-by: Sebastian Reichel <sebastian.reic...@collabora.com>
Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org>

---
 drivers/power/supply/sbs-battery.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/drivers/power/supply/sbs-battery.c
+++ b/drivers/power/supply/sbs-battery.c
@@ -629,7 +629,7 @@ static int sbs_get_property(struct power
        switch (psp) {
        case POWER_SUPPLY_PROP_PRESENT:
        case POWER_SUPPLY_PROP_HEALTH:
-               if (client->flags & SBS_FLAGS_TI_BQ20Z75)
+               if (chip->flags & SBS_FLAGS_TI_BQ20Z75)
                        ret = sbs_get_ti_battery_presence_and_health(client,
                                                                     psp, val);
                else


Reply via email to