linux-pm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sebastian Reichel <sre@kernel.org>
To: Andreas Dannenberg <dannenberg@ti.com>
Cc: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>,
	David Woodhouse <dwmw2@infradead.org>,
	Laurentiu Palcu <laurentiu.palcu@intel.com>,
	Krzysztof Kozlowski <k.kozlowski@samsung.com>,
	Ramakrishna Pallala <ramakrishna.pallala@intel.com>,
	linux-pm@vger.kernel.org, devicetree@vger.kernel.org
Subject: Re: [PATCH v5 09/11] power: bq24257: Allow input current limit sysfs access
Date: Wed, 23 Sep 2015 17:02:28 +0200	[thread overview]
Message-ID: <20150923150228.GA5254@earth> (raw)
In-Reply-To: <20150923141146.GA6289@borg>

[-- Attachment #1: Type: text/plain, Size: 3050 bytes --]

Hi,

On Wed, Sep 23, 2015 at 09:11:46AM -0500, Andreas Dannenberg wrote:
> On Wed, Sep 23, 2015 at 02:29:06AM +0200, Sebastian Reichel wrote:
> > On Tue, Sep 22, 2015 at 05:10:45PM -0500, Andreas Dannenberg wrote:
> > > On Tue, Sep 22, 2015 at 09:16:49PM +0200, Sebastian Reichel wrote:
> > > > On Fri, Sep 18, 2015 at 04:39:57PM -0500, Andreas Dannenberg wrote:
> > > > > This patch allows reading (and writing, if the D+/D- USB signal-based
> > > > > charger type detection is disabled) of the input current limit through
> > > > > the power supply's input_current_limit sysfs property. This allows
> > > > > userspace to see what charger was detected and to re-configure the
> > > > > maximum current drawn from the external supply at runtime based on
> > > > > system-level knowledge or user input.
> > > > 
> > > > Maybe also support writing into input_current_limit in auto mode.
> > > > Just disable auto detection until "auto" is written into sysfs node.
> > > 
> > > Auto-detection was enabled by default in the original driver so I think
> > > that should be left intact. I added the ability to manually override
> > > this via DT with a fixed value, and then configure said fixed value
> > > through sysfs at runtime.
> > > 
> > > I'm not 100% clear on the usecase of runtime enabling/disabling auto so
> > > I'd rather leave the implementation as-is. Either auto mode is enabled
> > > or not -- and this is directly tied to the DT setting. But if someone
> > > has a strong usecase for this I can certainly add it.
> > 
> > For some usb power supplies auto-detection doesn't work very well,
> > resulting in a 100mA default fallback. Users knowing their hardware
> > could force charging with the correct input current limitation.
> 
> Ok. So how should we best go about extending the usage of the
> 'input_current_limit' sysfs node for this charger? You mentioned
> writing 'auto' into it should enable the auto-detection mode. I suppose
> writing a fixed current value will disable it. But how to indicate to
> the user when reading 'input_current_limit' whether auto mode is enabled
> or not (I think this is something we should do).

Right, I haven't thought of this.

> Can we return a mixed number/string like this?
> 
> # Example: charger auto detection mode is disabled, and input current
> # limit is configured as 500mA.
> 
> $ cat input_current_limit
> 500000
> 
> # Example: charger auto detection mode is enabled, and a charger
> # supporting 1A was detected (note the mixed number/string thats
> # returned)
> 
> $ cat input_current_limit
> 1000000 (auto)
> 
> Would that work?

No. sysfs nodes should only contain one value per file.

> Or should we introduce a new sysfs property?

So maybe keep this patch as is (disallow setting the limit in auto
mode) and create another file for setting (and getting) the mode.

Also it might be a good idea to return to safe defaults when the
charger is disconnected (-> reset to DT specified values).

-- Sebastian

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

  reply	other threads:[~2015-09-23 15:02 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-18 21:39 [PATCH v5 00/11] power: bq24257: Add support for bq24250/bq24251 Andreas Dannenberg
2015-09-18 21:39 ` [PATCH v5 01/11] dt: power: bq24257-charger: Cover additional devices Andreas Dannenberg
2015-09-22 16:24   ` Sebastian Reichel
2015-09-22 21:58     ` Andreas Dannenberg
2015-09-23  0:34       ` Sebastian Reichel
2015-09-23  8:14         ` Laurentiu Palcu
2015-09-23 14:13           ` Andreas Dannenberg
2015-09-18 21:39 ` [PATCH v5 02/11] power: bq24257: Add basic support for bq24250/bq24251 Andreas Dannenberg
2015-09-18 21:39 ` [PATCH v5 03/11] power: bq24257: Add bit definition for temp sense enable Andreas Dannenberg
2015-09-18 21:39 ` [PATCH v5 04/11] power: bq24257: Allow manual setting of input current limit Andreas Dannenberg
     [not found] ` <1442612399-341-1-git-send-email-dannenberg-l0cyMroinI0@public.gmane.org>
2015-09-18 21:39   ` [PATCH v5 05/11] power: bq24257: Add SW-based approach for Power Good determination Andreas Dannenberg
2015-09-22 19:37     ` Sebastian Reichel
2015-09-23 19:34       ` Andreas Dannenberg
2015-09-23 20:02         ` Andreas Dannenberg
2015-09-18 21:39   ` [PATCH v5 09/11] power: bq24257: Allow input current limit sysfs access Andreas Dannenberg
2015-09-22 19:16     ` Sebastian Reichel
2015-09-22 22:10       ` Andreas Dannenberg
2015-09-23  0:29         ` Sebastian Reichel
2015-09-23 14:11           ` Andreas Dannenberg
2015-09-23 15:02             ` Sebastian Reichel [this message]
2015-09-23 18:32               ` Andreas Dannenberg
2015-09-23 18:53                 ` Sebastian Reichel
2015-09-23 19:47                   ` Andreas Dannenberg
2015-09-18 21:39 ` [PATCH v5 06/11] power: bq24257: Use managed power supply register Andreas Dannenberg
2015-09-18 21:39 ` [PATCH v5 07/11] power: bq24257: Add over voltage protection setting support Andreas Dannenberg
2015-09-18 21:39 ` [PATCH v5 08/11] power: bq24257: Add input DPM voltage threshold " Andreas Dannenberg
2015-09-18 21:39 ` [PATCH v5 10/11] power: bq24257: Add various device-specific sysfs properties Andreas Dannenberg
2015-09-18 21:39 ` [PATCH v5 11/11] power: bq24257: Add platform data based initialization Andreas Dannenberg
2015-09-22 19:29   ` Sebastian Reichel
2015-09-22 19:31 ` [PATCH v5 00/11] power: bq24257: Add support for bq24250/bq24251 Sebastian Reichel

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=20150923150228.GA5254@earth \
    --to=sre@kernel.org \
    --cc=dannenberg@ti.com \
    --cc=dbaryshkov@gmail.com \
    --cc=devicetree@vger.kernel.org \
    --cc=dwmw2@infradead.org \
    --cc=k.kozlowski@samsung.com \
    --cc=laurentiu.palcu@intel.com \
    --cc=linux-pm@vger.kernel.org \
    --cc=ramakrishna.pallala@intel.com \
    /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).