Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit defbfa9c authored by Paer-Olof Haakansson's avatar Paer-Olof Haakansson Committed by Anton Vorontsov
Browse files

ab8500_charger: Rename the power_loss function



Rename the ab8500_power_loss_handling function to a more
descriptive name ab8500_enable_disable_sw_fallback

Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
Signed-off-by: default avatarRobert Marklund <robert.marklund@stericsson.com>
Reviewed-by: default avatarPar-Olof HAKANSSON <par-olof.hakansson@stericsson.com>
Reviewed-by: default avatarKarl KOMIEROWSKI <karl.komierowski@stericsson.com>
Tested-by: default avatarPar-Olof HAKANSSON <par-olof.hakansson@stericsson.com>
Signed-off-by: default avatarAnton Vorontsov <anton@enomsg.org>
parent c4f34226
Loading
Loading
Loading
Loading
+11 −12
Original line number Original line Diff line number Diff line
@@ -270,20 +270,19 @@ static enum power_supply_property ab8500_charger_usb_props[] = {
	POWER_SUPPLY_PROP_CURRENT_NOW,
	POWER_SUPPLY_PROP_CURRENT_NOW,
};
};


/**
/*
 * ab8500_power_loss_handling - set how we handle powerloss.
 * Function for enabling and disabling sw fallback mode
 * @di:		pointer to the ab8500_charger structure
 * should always be disabled when no charger is connected.
 *
 * Magic nummbers are from STE HW department.
 */
 */
static void ab8500_power_loss_handling(struct ab8500_charger *di)
static void ab8500_enable_disable_sw_fallback(struct ab8500_charger *di,
		bool fallback)
{
{
	u8 reg;
	u8 reg;
	int ret;
	int ret;


	dev_dbg(di->dev, "Autopower : %d\n", di->autopower);
	dev_dbg(di->dev, "SW Fallback: %d\n", fallback);


	/* read the autopower register */
	/* read the register containing fallback bit */
	ret = abx500_get_register_interruptible(di->dev, 0x15, 0x00, &reg);
	ret = abx500_get_register_interruptible(di->dev, 0x15, 0x00, &reg);
	if (ret) {
	if (ret) {
		dev_err(di->dev, "%d write failed\n", __LINE__);
		dev_err(di->dev, "%d write failed\n", __LINE__);
@@ -297,12 +296,12 @@ static void ab8500_power_loss_handling(struct ab8500_charger *di)
		return;
		return;
	}
	}


	if (di->autopower)
	if (fallback)
		reg |= 0x8;
		reg |= 0x8;
	else
	else
		reg &= ~0x8;
		reg &= ~0x8;


	/* write back the changed value to autopower reg */
	/* write back the changed fallback bit value to register */
	ret = abx500_set_register_interruptible(di->dev, 0x15, 0x00, reg);
	ret = abx500_set_register_interruptible(di->dev, 0x15, 0x00, reg);
	if (ret) {
	if (ret) {
		dev_err(di->dev, "%d write failed\n", __LINE__);
		dev_err(di->dev, "%d write failed\n", __LINE__);
@@ -332,12 +331,12 @@ static void ab8500_power_supply_changed(struct ab8500_charger *di,
		    !di->ac.charger_connected &&
		    !di->ac.charger_connected &&
		    di->autopower) {
		    di->autopower) {
			di->autopower = false;
			di->autopower = false;
			ab8500_power_loss_handling(di);
			ab8500_enable_disable_sw_fallback(di, false);
		} else if (!di->autopower &&
		} else if (!di->autopower &&
			   (di->ac.charger_connected ||
			   (di->ac.charger_connected ||
			    di->usb.charger_connected)) {
			    di->usb.charger_connected)) {
			di->autopower = true;
			di->autopower = true;
			ab8500_power_loss_handling(di);
			ab8500_enable_disable_sw_fallback(di, true);
		}
		}
	}
	}
	power_supply_changed(psy);
	power_supply_changed(psy);