Re: [PATCH v9 1/4] gadget: Introduce the usb charger framework

From: Felipe Balbi
Date: Thu Apr 07 2016 - 00:58:55 EST



Hi,

Peter Chen <hzpeterchen@xxxxxxxxx> writes:
> On Wed, Apr 06, 2016 at 01:25:06PM +0300, Felipe Balbi wrote:
>>
>> Hi,
>>
>> Peter Chen <hzpeterchen@xxxxxxxxx> writes:
>> > On Wed, Apr 06, 2016 at 11:05:26AM +0300, Felipe Balbi wrote:
>> >> Peter Chen <hzpeterchen@xxxxxxxxx> writes:
>> >> > On Wed, Apr 06, 2016 at 10:38:23AM +0300, Felipe Balbi wrote:
>> >> >> Peter Chen <hzpeterchen@xxxxxxxxx> 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.

--
balbi

Attachment: signature.asc
Description: PGP signature