linux-pm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Tony Lindgren <tony@atomide.com>
To: Sebastian Reichel <sre@kernel.org>
Cc: linux-pm@vger.kernel.org, linux-omap@vger.kernel.org,
	Pavel Machek <pavel@ucw.cz>, Rob Herring <robh+dt@kernel.org>,
	Merlijn Wajer <merlijn@wizzup.org>
Subject: Re: [PATCH] power: supply: cpcap-charger: Limit voltage to 4.2V for battery
Date: Wed, 9 Oct 2019 13:56:59 -0700	[thread overview]
Message-ID: <20191009205659.GR5610@atomide.com> (raw)
In-Reply-To: <20191009203355.5622-1-tony@atomide.com>

* Tony Lindgren <tony@atomide.com> [191009 13:34]:
> This is against v5.3 so it can be easily picked for earlier kernels as
> needed. If no changes needed, this is best applied on v5.3 and then merged
> into v5.4-rc based branch as this will cause a minor merge conflict with
> v5.4-rc because of 7f7378618b41 ("power: supply: cpcap-charger: Enable vbus
> boost voltage").

And below is the merge resolution I used for reference.

Regards,

Tony

8< ---------------------
diff --cc drivers/power/supply/cpcap-charger.c
--- a/drivers/power/supply/cpcap-charger.c
+++ b/drivers/power/supply/cpcap-charger.c
@@@ -447,9 -515,48 +531,49 @@@ static void cpcap_usb_detect(struct wor
  	if (error)
  		return;
  
+ 	/* 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);
+ 
+ 		return;
+ 	}
+ 
+ 	/*
+ 	 * If battery voltage is higher than charge voltage, it may have been
+ 	 * charged to 3.51V by Android. Try again in 10 minutes.
+ 	 */
+ 	if (cpcap_charger_get_charge_voltage(ddata) > ddata->voltage) {
+ 		cpcap_charger_disconnect(ddata, CPCAP_CHARGER_DETECTING,
+ 					 HZ * 60 * 10);
+ 
+ 		return;
+ 	}
+ 
+ 	/* Throttle chrgcurr2 interrupt for charger done and retry */
+ 	switch (ddata->state) {
+ 	case CPCAP_CHARGER_CHARGING:
+ 		if (s.chrgcurr2)
+ 			break;
+ 		if (s.chrgcurr1 && s.vbusvld) {
+ 			cpcap_charger_disconnect(ddata, CPCAP_CHARGER_DONE,
+ 						 HZ * 5);
+ 			return;
+ 		}
+ 		break;
+ 	case CPCAP_CHARGER_DONE:
+ 		if (!s.chrgcurr2)
+ 			break;
+ 		cpcap_charger_disconnect(ddata, CPCAP_CHARGER_DETECTING,
+ 					 HZ * 5);
+ 		return;
+ 	default:
+ 		break;
+ 	}
+ 
 -	if (cpcap_charger_vbus_valid(ddata) && s.chrgcurr1) {
 +	if (!ddata->feeding_vbus && cpcap_charger_vbus_valid(ddata) &&
 +	    s.chrgcurr1) {
  		int max_current;
+ 		int vchrg;
  
  		if (cpcap_charger_battery_found(ddata))
  			max_current = CPCAP_REG_CRM_ICHRG_1A596;

  reply	other threads:[~2019-10-09 20:57 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-09 20:33 [PATCH] power: supply: cpcap-charger: Limit voltage to 4.2V for battery Tony Lindgren
2019-10-09 20:56 ` Tony Lindgren [this message]
2019-10-13 11:27 ` Pavel Machek
2019-10-15 17:22   ` Tony Lindgren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20191009205659.GR5610@atomide.com \
    --to=tony@atomide.com \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=merlijn@wizzup.org \
    --cc=pavel@ucw.cz \
    --cc=robh+dt@kernel.org \
    --cc=sre@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).