Re: [PATCH] extcon: Add documentation for EXTCON_CHG_USB_SLOW/FAST

From: Chanwoo Choi
Date: Fri Jan 06 2017 - 03:50:56 EST


Hi NeilBrown,

On 2017ë 01ì 04ì 08:01, NeilBrown wrote:
> On Tue, Jan 03 2017, Chanwoo Choi wrote:
>
>> Hi Baolin,
>>
>> 2017-01-03 14:50 GMT+09:00 Baolin Wang <baolin.wang@xxxxxxxxxx>:
>>> Currently there are no documentation for EXTCON_CHG_USB_SLOW/FAST
>>> charger connector. These names don't mean much and no guide to tell
>>> users how to use it, thus try to add documentation to make them clear.
>>>
>>> Suggested-by: NeilBrown <neilb@xxxxxxxx>
>>> Signed-off-by: Baolin Wang <baolin.wang@xxxxxxxxxx>
>>> ---
>>> include/linux/extcon.h | 4 ++++
>>> 1 file changed, 4 insertions(+)
>>>
>>> diff --git a/include/linux/extcon.h b/include/linux/extcon.h
>>> index 0020123..ceec1f0 100644
>>> --- a/include/linux/extcon.h
>>> +++ b/include/linux/extcon.h
>>> @@ -53,6 +53,10 @@
>>> * the USB connector, which means EXTCON_CHG_USB_SDP should always
>>> * appear together with EXTCON_USB. The same as ACA charger connector,
>>> * EXTCON_CHG_USB_ACA would normally appear with EXTCON_USB_HOST.
>>> + *
>>> + * A cable of type EXTCON_CHG_USB_SLOW can provide at least 500mA of
>>> + * current at 5V. A cable of type EXTCON_CHG_USB_FAST can provide at
>>> + * least 1A of current at 5V.
>>
>> I agree the at least current value(mA) for EXTCON_CHG_USB_SLOW/FAST.
>> But, I'm worried that fix the 5V.
>>
>> I have a plan to support the 'current' and 'voltage' property for
>> charger connector as following:
>> - EXTCON_PROP_CHG_CURRNET
>> - EXTCON_PROP_CHG_VOLTAGE
>>
>> So, I don't like to fix the voltage for EXTCON_CHG_USB_SLOW/FAST.
>> How about this?
>
> I think you should be very caution about pursuing this approach. As it
> stands, it implies that a given cable has a fixed voltage and a fixed
> available current. This is not true of many cables.
>
> The USB battery charging spec defines a range of possibly current limits
> that each cable type can provide. There is a defined protocol for the
> slave to detect how much current is available within that range. So
> setting a single "CHG_CURRENT" property would be incorrect.
>
> For SDP ports, the current limit is negotiation using the USB protocol
> and it is completely unknown to the cable (and so to EXTCON). For
> USB-C, there is a greater range of voltages and currents. I don't know
> the details, but I do know that a single-valued "PROP_CHG_VOLTAGE" would
> not be appropriate.
>
> I think that EXTCON should stick with identifying the type of cable, and
> leave it to the client to determine what other properties are implied by
> each particular cable type.

First of all, Thanks for your detailed comment. The power-supply already
has the voltage/current property for power-supply device as following:
- POWER_SUPPLY_PROP_CONSTANT_CHARGE_CURRENT
- POWER_SUPPLY_PROP_CONSTANT_CHARGE_CURRENT_MAX
- POWER_SUPPLY_PROP_CONSTANT_CHARGE_VOLTAGE
- POWER_SUPPLY_PROP_CONSTANT_CHARGE_VOLTAGE_MAX

--
Best Regards,
Chanwoo Choi
S/W Center, Samsung Electronics