diff mbox

extcon: Add documentation for EXTCON_CHG_USB_SLOW/FAST

Message ID f18aa3ab2fb1182c96ecfe46551cd9c0b5787baf.1483422329.git.baolin.wang@linaro.org
State Accepted
Commit 62a37443e93bbae74410cb72aa9d7e15a1da0b98
Headers show

Commit Message

(Exiting) Baolin Wang Jan. 3, 2017, 5:50 a.m. UTC
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@suse.com>
Signed-off-by: Baolin Wang <baolin.wang@linaro.org>

---
 include/linux/extcon.h |    4 ++++
 1 file changed, 4 insertions(+)

-- 
1.7.9.5

Comments

Chanwoo Choi Jan. 3, 2017, 12:48 p.m. UTC | #1
Hi Baolin,

2017-01-03 14:50 GMT+09:00 Baolin Wang <baolin.wang@linaro.org>:
> 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@suse.com>

> Signed-off-by: Baolin Wang <baolin.wang@linaro.org>

> ---

>  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?


>   */

>  #define EXTCON_CHG_USB_SDP     5       /* Standard Downstream Port */

>  #define EXTCON_CHG_USB_DCP     6       /* Dedicated Charging Port */

> --

> 1.7.9.5

>

> _______________________________________________

> linaro-kernel mailing list

> linaro-kernel@lists.linaro.org

> https://lists.linaro.org/mailman/listinfo/linaro-kernel




-- 
Best Regards,
Chanwoo Choi
NeilBrown Jan. 3, 2017, 11:01 p.m. UTC | #2
On Tue, Jan 03 2017, Chanwoo Choi wrote:

> Hi Baolin,

>

> 2017-01-03 14:50 GMT+09:00 Baolin Wang <baolin.wang@linaro.org>:

>> 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@suse.com>

>> Signed-off-by: Baolin Wang <baolin.wang@linaro.org>

>> ---

>>  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.

Thanks,
NeilBrown
Chanwoo Choi Jan. 6, 2017, 8:50 a.m. UTC | #3
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@linaro.org>:

>>> 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@suse.com>

>>> Signed-off-by: Baolin Wang <baolin.wang@linaro.org>

>>> ---

>>>  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
Chanwoo Choi Jan. 6, 2017, 8:55 a.m. UTC | #4
On 2017년 01월 03일 14:50, Baolin Wang wrote:
> 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@suse.com>

> Signed-off-by: Baolin Wang <baolin.wang@linaro.org>

> ---

>  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.


When I applied this patch, I use the 'connector expression' instead of 'cable'.

>   */

>  #define EXTCON_CHG_USB_SDP	5	/* Standard Downstream Port */

>  #define EXTCON_CHG_USB_DCP	6	/* Dedicated Charging Port */

> 


Applied it. Thanks.

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

Patch

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.
  */
 #define EXTCON_CHG_USB_SDP	5	/* Standard Downstream Port */
 #define EXTCON_CHG_USB_DCP	6	/* Dedicated Charging Port */