power: supply: qcom_pmi8998_charger: fix charger status
authorCaleb Connolly <caleb.connolly@linaro.org>
Wed, 2 Aug 2023 14:49:29 +0000 (15:49 +0100)
committerSebastian Reichel <sebastian.reichel@collabora.com>
Thu, 3 Aug 2023 00:23:42 +0000 (02:23 +0200)
The INHIBIT_CHARGE status bit means the battery has reached a
pre-programmed charge limit which is some voltage offset below the
target float voltage. This should be reported as a STATUS_FULL rather
than UNKNOWN, fix it.

Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
Link: https://lore.kernel.org/r/20230802-pmi8998-charger-fixes-v1-2-a8f1e8b84c1e@linaro.org
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
drivers/power/supply/qcom_pmi8998_charger.c

index c7ec9aeb7a643ebeddb76438a23a56f6d9269dc7..10f4dd0caca177bb4487bcaa850106c920611d54 100644 (file)
@@ -517,9 +517,9 @@ static int smb2_get_prop_status(struct smb2_chip *chip, int *val)
                *val = POWER_SUPPLY_STATUS_NOT_CHARGING;
                return rc;
        case TERMINATE_CHARGE:
+       case INHIBIT_CHARGE:
                *val = POWER_SUPPLY_STATUS_FULL;
                return rc;
-       case INHIBIT_CHARGE:
        default:
                *val = POWER_SUPPLY_STATUS_UNKNOWN;
                return rc;