lkml.org 
[lkml]   [2016]   [Apr]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: [PATCH v9 1/4] gadget: Introduce the usb charger framework
    From
    On 7 April 2016 at 12:56, Felipe Balbi <balbi@kernel.org> wrote:
    >
    > Hi,
    >
    > Peter Chen <hzpeterchen@gmail.com> writes:
    >> On Wed, Apr 06, 2016 at 01:25:06PM +0300, Felipe Balbi wrote:
    >>>
    >>> Hi,
    >>>
    >>> Peter Chen <hzpeterchen@gmail.com> writes:
    >>> > On Wed, Apr 06, 2016 at 11:05:26AM +0300, Felipe Balbi wrote:
    >>> >> Peter Chen <hzpeterchen@gmail.com> writes:
    >>> >> > On Wed, Apr 06, 2016 at 10:38:23AM +0300, Felipe Balbi wrote:
    >>> >> >> Peter Chen <hzpeterchen@gmail.com> writes:
    >>> >> >> > On Fri, Apr 01, 2016 at 03:21:49PM +0800, Baolin Wang wrote:
    >>> >> >> > +
    >>> >> >> >> +static struct attribute *usb_charger_attrs[] = {
    >>> >> >> >> + &dev_attr_sdp_current.attr,
    >>> >> >> >> + &dev_attr_dcp_current.attr,
    >>> >> >> >> + &dev_attr_cdp_current.attr,
    >>> >> >> >> + &dev_attr_aca_current.attr,
    >>> >> >> >> + &dev_attr_charger_type.attr,
    >>> >> >> >> + &dev_attr_charger_state.attr,
    >>> >> >> >> + NULL
    >>> >> >> >> +};
    >>> >> >> >
    >>> >> >> > The user may only care about current limit, type and state, why they
    >>> >> >> > need to care what type's current limit, it is the usb charger
    >>> >> >> > framework handles, the framework judge the current according to
    >>> >> >> > charger type and USB state (connect/configured/suspended).
    >>> >> >>
    >>> >> >> it might be useful if we want to know that $this charger doesn't really
    >>> >> >> give us as much current as it advertises.
    >>> >> >>
    >>> >> >
    >>> >> > As my understanding, the current limit is dynamic value, it should
    >>> >> > report the value the charger supports now, eg, it connects SDP, but
    >>> >> > the host is suspended now, then the value should be 2mA.
    >>> >>
    >>> >> yes, and that's the limit. Now consider we connect to DCP or CDP and
    >>> >> limit is 2000mA but we're charging at 1000mA ;-)
    >>> >>
    >>> >
    >>> > Does the user need to know the $this charger limit? Don't they only
    >>> > care about the current charging value? I have a USB cable which can
    >>>
    >>> Why not ? UI might want to change the color of the battery charging icon
    >>> if we're charging @ 2000mA or @ 1000mA to give some visual feedback as
    >>> to "how fast" battery is supposed to be charged.
    >>>
    >>> > show charging current value, it changes from time to time, when it
    >>> > connects to host pc, it shows 430mA; when it connects to dedicated
    >>> > charger, it shows 1000mA.
    >>>
    >>> good for you, now what does that have to do with $subject ?
    >>>
    >>
    >> +static struct attribute *usb_charger_attrs[] = {
    >> + &dev_attr_sdp_current.attr,
    >> + &dev_attr_dcp_current.attr,
    >> + &dev_attr_cdp_current.attr,
    >> + &dev_attr_aca_current.attr,
    >> + &dev_attr_charger_type.attr,
    >> + &dev_attr_charger_state.attr,
    >> + NULL
    >> +};
    >>
    >> Ok, even the users are interesting in current limit, we still have no
    >> necessary to know all kinds of chargers limit and current value, since
    >> we already have charger type user interface, the framework can show
    >> limit according to charger type.
    >
    > Oh, now I get your comment and I totally agree. We already *know* the
    > detected charger type, there's no point in showing them all.
    >
    >> I think below user interfaces are enough, who do you think?
    >>
    >> +static struct attribute *usb_charger_attrs[] = {
    >> + &dev_attr_current.attr,
    >> + &dev_attr_current_limit.attr,
    >> + &dev_attr_charger_type.attr,
    >> + &dev_attr_charger_state.attr,
    >> + NULL
    >> +};
    >
    > agreed, const though.

    OK. Thanks for Felipe, Peter and Jun's suggestion. I'll modify it in
    next version.

    >
    > --
    > balbi



    --
    Baolin.wang
    Best Regards

    \
     
     \ /
      Last update: 2016-04-07 08:21    [W:5.107 / U:0.468 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site