summaryrefslogtreecommitdiff
path: root/drivers/power
diff options
context:
space:
mode:
authorTony Lindgren <tony@atomide.com>2021-01-10 22:53:53 +0300
committerSebastian Reichel <sre@kernel.org>2021-01-15 01:42:42 +0300
commit41ac23f5c9fbff53d1c0ce46606c0f157d7c6982 (patch)
treeff40f3e1f1c4d295af673838235f95c05895ee00 /drivers/power
parente015964a28683aecca822f2457dba43f1fd63b2d (diff)
downloadlinux-41ac23f5c9fbff53d1c0ce46606c0f157d7c6982.tar.xz
power: supply: cpcap-charger: Use standard enumeration
Just get rid of the custom enumeration if favor of the standard one. Cc: Arthur Demchenkov <spinal.by@gmail.com> Cc: Carl Philipp Klemm <philipp@uvos.xyz> Cc: Merlijn Wajer <merlijn@wizzup.org> Cc: Pavel Machek <pavel@ucw.cz> Signed-off-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Diffstat (limited to 'drivers/power')
-rw-r--r--drivers/power/supply/cpcap-charger.c39
1 files changed, 19 insertions, 20 deletions
diff --git a/drivers/power/supply/cpcap-charger.c b/drivers/power/supply/cpcap-charger.c
index 721c71ab01ca..5a008152bca6 100644
--- a/drivers/power/supply/cpcap-charger.c
+++ b/drivers/power/supply/cpcap-charger.c
@@ -120,13 +120,6 @@ enum {
CPCAP_CHARGER_IIO_NR,
};
-enum {
- CPCAP_CHARGER_DISCONNECTED,
- CPCAP_CHARGER_DETECTING,
- CPCAP_CHARGER_CHARGING,
- CPCAP_CHARGER_DONE,
-};
-
struct cpcap_charger_ddata {
struct device *dev;
struct regmap *reg;
@@ -533,7 +526,7 @@ static void cpcap_charger_update_state(struct cpcap_charger_ddata *ddata,
{
const char *status;
- if (state > CPCAP_CHARGER_DONE) {
+ if (state > POWER_SUPPLY_STATUS_FULL) {
dev_warn(ddata->dev, "unknown state: %i\n", state);
return;
@@ -542,16 +535,16 @@ static void cpcap_charger_update_state(struct cpcap_charger_ddata *ddata,
ddata->state = state;
switch (state) {
- case CPCAP_CHARGER_DISCONNECTED:
+ case POWER_SUPPLY_STATUS_DISCHARGING:
status = "DISCONNECTED";
break;
- case CPCAP_CHARGER_DETECTING:
+ case POWER_SUPPLY_STATUS_NOT_CHARGING:
status = "DETECTING";
break;
- case CPCAP_CHARGER_CHARGING:
+ case POWER_SUPPLY_STATUS_CHARGING:
status = "CHARGING";
break;
- case CPCAP_CHARGER_DONE:
+ case POWER_SUPPLY_STATUS_FULL:
status = "DONE";
break;
default:
@@ -616,7 +609,8 @@ static void cpcap_usb_detect(struct work_struct *work)
/* Just init the state if a charger is connected with no chrg_det set */
if (!s.chrg_det && s.chrgcurr1 && s.vbusvld) {
- cpcap_charger_update_state(ddata, CPCAP_CHARGER_DETECTING);
+ cpcap_charger_update_state(ddata,
+ POWER_SUPPLY_STATUS_NOT_CHARGING);
return;
}
@@ -626,7 +620,8 @@ static void cpcap_usb_detect(struct work_struct *work)
* charged to 4.35V by Android. Try again in 10 minutes.
*/
if (cpcap_charger_get_charge_voltage(ddata) > ddata->voltage) {
- cpcap_charger_disconnect(ddata, CPCAP_CHARGER_DETECTING,
+ cpcap_charger_disconnect(ddata,
+ POWER_SUPPLY_STATUS_NOT_CHARGING,
HZ * 60 * 10);
return;
@@ -634,19 +629,21 @@ static void cpcap_usb_detect(struct work_struct *work)
/* Throttle chrgcurr2 interrupt for charger done and retry */
switch (ddata->state) {
- case CPCAP_CHARGER_CHARGING:
+ case POWER_SUPPLY_STATUS_CHARGING:
if (s.chrgcurr2)
break;
if (s.chrgcurr1 && s.vbusvld) {
- cpcap_charger_disconnect(ddata, CPCAP_CHARGER_DONE,
+ cpcap_charger_disconnect(ddata,
+ POWER_SUPPLY_STATUS_FULL,
HZ * 5);
return;
}
break;
- case CPCAP_CHARGER_DONE:
+ case POWER_SUPPLY_STATUS_FULL:
if (!s.chrgcurr2)
break;
- cpcap_charger_disconnect(ddata, CPCAP_CHARGER_DETECTING,
+ cpcap_charger_disconnect(ddata,
+ POWER_SUPPLY_STATUS_NOT_CHARGING,
HZ * 5);
return;
default:
@@ -669,12 +666,14 @@ static void cpcap_usb_detect(struct work_struct *work)
max_current, 0);
if (error)
goto out_err;
- cpcap_charger_update_state(ddata, CPCAP_CHARGER_CHARGING);
+ cpcap_charger_update_state(ddata,
+ POWER_SUPPLY_STATUS_CHARGING);
} else {
error = cpcap_charger_set_state(ddata, 0, 0, 0);
if (error)
goto out_err;
- cpcap_charger_update_state(ddata, CPCAP_CHARGER_DISCONNECTED);
+ cpcap_charger_update_state(ddata,
+ POWER_SUPPLY_STATUS_DISCHARGING);
}
power_supply_changed(ddata->usb);