Messages in this thread | | | Date | Tue, 06 Oct 2015 12:11:15 +0900 | From | Chanwoo Choi <> | Subject | Re: [PATCH] extcon: Modify the id and name of external connector |
| |
Roger,
On 2015년 10월 05일 19:49, Roger Quadros wrote: > Chanwoo, > > On 05/10/15 12:04, Chanwoo Choi wrote: >> Hi Roger, >> >> On 2015년 10월 05일 18:01, Chanwoo Choi wrote: >>> Hi Roger, >>> >>> On 2015년 10월 05일 17:26, Roger Quadros wrote: >>>> Chanwoo, >>>> >>>> On 04/10/15 06:45, Chanwoo Choi wrote: >>>>> This patch modifies the id and name of external connector with the additional >>>>> prefix to clarify both attribute and meaning of external connector as following: >>>>> - EXTCON_CHG_* mean the charger connector. >>>>> - EXTCON_JACK_* mean the jack connector. >>>>> - EXTCON_DISP_* mean the display port connector. >>>>> >>>>> Following table show the new name of external connector with old name: >>>>> ------------------------------------------------- >>>>> Old extcon name | New extcon name | >>>>> ------------------------------------------------- >>>>> EXTCON_TA | EXTCON_CHG_USB_DCP | >>>>> EXTCON_FAST_CHARGER | EXTCON_CHG_USB_FAST | >>>>> EXTCON_SLOW_CHARGER | EXTCON_CHG_USB_SLOW | >>>>> EXTCON_CHARGE_DOWNSTREAM| EXTCON_CHG_USB_CDP | >>>>> ------------------------------------------------- >>>>> EXTCON_MICROPHONE | EXTCON_JACK_MICROPHONE| >>>>> EXTCON_HEADPHONE | EXTCON_JACK_HEADPHONE | >>>>> EXTCON_LINE_IN | EXTCON_JACK_LINE_IN | >>>>> EXTCON_LINE_OUT | EXTCON_JACK_LINE_OUT | >>>>> EXTCON_VIDEO_IN | EXTCON_JACK_VIDEO_IN | >>>>> EXTCON_VIDEO_OUT | EXTCON_JACK_VIDEO_OUT | >>>>> EXTCON_SPDIF_IN | EXTCON_JACK_SPDIF_IN | >>>>> EXTCON_SPDIF_OUT | EXTCON_JACK_SPDIF_OUT | >>>>> ------------------------------------------------- >>>>> EXTCON_HMDI | EXTCON_DISP_HDMI | >>>>> EXTCON_MHL | EXTCON_DISP_MHL | >>>>> EXTCON_DVI | EXTCON_DISP_DVI | >>>>> EXTCON_VGA | EXTCON_DISP_VGA | >>>>> ------------------------------------------------- >>>>> >>>>> And, when altering the name of USB charger connector, EXTCON refers to the >>>>> "USB battery charging specification"[1] to use the standard name of USB >>>>> charging port as following. Following name of USB charging port are already used >>>>> in power_supply subsystem. We chan check it on patch[2]. >>>>> - EXTCON_CHG_USB /* Standard Downstream Port */ >>>>> - EXTCON_CHG_USB_DCP /* Dedicated Charging Port */ >>>>> - EXTCON_CHG_USB_CDP /* Charging Downstream Port */ >>>>> - EXTCON_CHG_USB_ACA /* Accessory Charging Adapter */ >>>>> >>>>> [1] http://www.usb.org/developers/docs/devclass_docs/USB_Battery_Charging_1.2.pdf >>>>> [2] commit 85efc8a18ce ("[PATCH] power_supply: Add types for USB chargers") >>>>> >>>>> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> >>>>> --- >>>>> drivers/extcon/extcon-arizona.c | 18 ++++++------ >>>>> drivers/extcon/extcon-axp288.c | 12 ++++---- >>>>> drivers/extcon/extcon-max14577.c | 18 ++++++------ >>>>> drivers/extcon/extcon-max77693.c | 32 +++++++++++---------- >>>>> drivers/extcon/extcon-max77843.c | 27 ++++++++++-------- >>>>> drivers/extcon/extcon-max8997.c | 21 +++++++------- >>>>> drivers/extcon/extcon-rt8973a.c | 4 +-- >>>>> drivers/extcon/extcon-sm5502.c | 4 +-- >>>>> drivers/extcon/extcon.c | 60 ++++++++++++++++++++------------------- >>>>> include/linux/extcon.h | 61 +++++++++++++++++++++++----------------- >>>>> 10 files changed, 138 insertions(+), 119 deletions(-) >>>>> >>>> >>>> <snip> >>>> >>>>> diff --git a/drivers/extcon/extcon.c b/drivers/extcon/extcon.c >>>>> index 8dd0af1..505a028 100644 >>>>> --- a/drivers/extcon/extcon.c >>>>> +++ b/drivers/extcon/extcon.c >>>>> @@ -39,37 +39,39 @@ >>>>> #define CABLE_NAME_MAX 30 >>>>> >>>>> static const char *extcon_name[] = { >>>>> - [EXTCON_NONE] = "NONE", >>>>> + [EXTCON_NONE] = "EXTCON_NONE", >>>>> >>>>> /* USB external connector */ >>>>> - [EXTCON_USB] = "USB", >>>>> - [EXTCON_USB_HOST] = "USB-HOST", >>>>> - >>>>> - /* Charger external connector */ >>>>> - [EXTCON_TA] = "TA", >>>>> - [EXTCON_FAST_CHARGER] = "FAST-CHARGER", >>>>> - [EXTCON_SLOW_CHARGER] = "SLOW-CHARGER", >>>>> - [EXTCON_CHARGE_DOWNSTREAM] = "CHARGE-DOWNSTREAM", >>>>> - >>>>> - /* Audio/Video external connector */ >>>>> - [EXTCON_LINE_IN] = "LINE-IN", >>>>> - [EXTCON_LINE_OUT] = "LINE-OUT", >>>>> - [EXTCON_MICROPHONE] = "MICROPHONE", >>>>> - [EXTCON_HEADPHONE] = "HEADPHONE", >>>>> - >>>>> - [EXTCON_HDMI] = "HDMI", >>>>> - [EXTCON_MHL] = "MHL", >>>>> - [EXTCON_DVI] = "DVI", >>>>> - [EXTCON_VGA] = "VGA", >>>>> - [EXTCON_SPDIF_IN] = "SPDIF-IN", >>>>> - [EXTCON_SPDIF_OUT] = "SPDIF-OUT", >>>>> - [EXTCON_VIDEO_IN] = "VIDEO-IN", >>>>> - [EXTCON_VIDEO_OUT] = "VIDEO-OUT", >>>>> - >>>>> - /* Etc external connector */ >>>>> - [EXTCON_DOCK] = "DOCK", >>>>> - [EXTCON_JIG] = "JIG", >>>>> - [EXTCON_MECHANICAL] = "MECHANICAL", >>>>> + [EXTCON_USB] = "EXTCON_USB", >>>>> + [EXTCON_USB_HOST] = "EXTCON_USB_HOST", >>>>> + >>>>> + /* Charging external connector */ >>>>> + [EXTCON_CHG_USB] = "EXTCON_CHG_USB", >>>>> + [EXTCON_CHG_USB_FAST] = "EXTCON_CHG_USB_FAST", >>>>> + [EXTCON_CHG_USB_SLOW] = "EXTCON_CHG_USB_SLOW", >>>> >>>> How does FAST & SLOW correlate to USB specifications? >>> >>> There is no specification about FAST & SLOW USB charger. >>> Just, the datasheet of MUIC (Micro-USB Interface Circuit) device >>> can detect the DCP (Dedicated Charging Port) and more two type charger >>> according to current value as following: >>> >>> For example, >>> max77693 MUIC device (is used on Samsung Galaxy S3) >>> - CHG_USB_DCP: current up to 1.5A >>> - CHG_USB_SLOW : current up to 500mA >>> - CHG_USB_FAST : current up to 1A or 2A >>> >>> max77836 MUIC device (is used on Samsung gear 2) >>> - CHG_USB_DCP: current up to 1.5A >>> - CHG_USB_SLOW : current up to 500mA >>> - CHG_USB_FAST : current up to 1A or 2A >>> >>> max77843 MUIC device (is used on Samsung Galaxy Note4) >>> - CHG_USB_DCP: current up to 1.5A >>> - CHG_USB_SLOW : current up to 500mA >>> - CHG_USB_FAST : current up to 1A or 2A >>> >>> If MUIC device detects the some USB charger which >>> has the more maximum current than DCP, this muic device >>> call the FAST charger. Also, there is oppsite case for SLOW charger. >> >> I think that following name is more appropriate than old name. >> - EXTCON_CHG_USB_SLOW -> EXTCON_CHG_USB_DCP_SLOW >> - EXTCON_CHG_USB_FAST -> EXTCON_CHG_USB_DCP_FAST >> > > Yes that looks more appropriate. > >> >>> >>>> >>>>> + [EXTCON_CHG_USB_DCP] = "EXTCON_CHG_USB_DCP", >>>>> + [EXTCON_CHG_USB_CDP] = "EXTCON_CHG_USB_CDP", >>>> >>>> What about USB ACA? >>> >>> ACA is "Accessory Charging Adapter". But, I didn't understand the role >>> of ACA charger type. I'll drop ACA type on next version. > > ACA is typically used by a docking station which can charge the > embedded host (e.g. mobile phone) as well as allow connecting a > USB peripheral to it. > > The link you gave above for Battery charging spec is in fact just the compliance plan. > The spec is actually available here > http://www.usb.org/developers/docs/devclass_docs/BCv1.2_070312.zip
Thanks for your help and guide.
I'l look at the battery charging spec for adding the ACA.
Thanks, Chanwoo Choi
| |