From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751408AbcHBHnJ (ORCPT ); Tue, 2 Aug 2016 03:43:09 -0400 Received: from mailout4.samsung.com ([203.254.224.34]:44595 "EHLO mailout4.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750954AbcHBHnC (ORCPT ); Tue, 2 Aug 2016 03:43:02 -0400 MIME-version: 1.0 Content-type: text/plain; charset=UTF-8 X-AuditID: cbfee68e-f79cb6d000006cfe-1d-57a04ebadea2 Content-transfer-encoding: 8BIT Message-id: <57A04EBA.9000203@samsung.com> Date: Tue, 02 Aug 2016 16:41:46 +0900 From: Chanwoo Choi Organization: Samsung Electronics User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0 To: Roger Quadros , linux-kernel@vger.kernel.org Cc: myungjoo.ham@samsung.com, zyw@rock-chips.com, groeck@chromium.org, chanwoo@kernel.org, Krzysztof Kozlowski Subject: Re: [PATCH v3 1/6] extcon: Add the extcon_type to gather each connector into five category References: <1470103105-5992-1-git-send-email-cw00.choi@samsung.com> <1470103105-5992-2-git-send-email-cw00.choi@samsung.com> <3ea3334e-96f5-6ce0-1402-6b9baf192db3@ti.com> In-reply-to: <3ea3334e-96f5-6ce0-1402-6b9baf192db3@ti.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrIIsWRmVeSWpSXmKPExsWyRsSkQHeX34Jwg8OnJCwm3rjCYnHq1TJm i9cvDC0u75rDZnG7cQWbRc8jLYv5D3YwO7B7zG64yOKxaVUnm8ffWftZPPq2rGL0OH5jO5PH 501yAWxRXDYpqTmZZalF+nYJXBlXjk1jKbgiUnHw93+2BsbjAl2MnBwSAiYSF0/tZIWwxSQu 3FvP1sXIxSEksIJR4slDmISJxJItL6ESSxklprT0s4EkeAUEJX5MvsfSxcjBwSwgL3HkUjZI mFlAXWLSvEXMEPUPGCUan74Cq+EV0JLo3SwFUsMioCrxrOU5O4jNBhTe/+IG2Eh+AUWJqz8e M4KUiwpESHSfqAQJiwjYS/TOnsUKMpIZ6HKJd3MOgNULC6RKvLt0hRViVzOTxOl1d1hAEpwC VhKf+jaxgyQkBF6yS9x+eJ4VYrOAxLfJh8AOkhCQldh0gBniSUmJgytusExgFJ+F5LVZCK/N QvLaAkbmVYyiqQXJBcVJ6UVGesWJucWleel6yfm5mxiBMXn637O+HYw3D1gfYhTgYFTi4dV4 MD9ciDWxrLgy9xCjKdARE5mlRJPzgZGfVxJvaGxmZGFqYmpsZG5ppiTOmyD1M1hIID2xJDU7 NbUgtSi+qDQntfgQIxMHp1QDI0/xi6n/zvjUBepd/pv0oS6XkfdXiuH0z8FP1rk/ljr24dGv qktnQgqKtwXubnlx2iHA+dA8zz2tn+ry1X/tvNRns6U65fQd8eSpwaZb79z5G/1drf38tvP1 ry8kM75X9uzwdN2XYOnT+OBypWyFV8nun/qzQnbsDOBkvjD/414fm5mLnH2rS5VYijMSDbWY i4oTAcwNjnbEAgAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrHIsWRmVeSWpSXmKPExsVy+t9jAd1dfgvCDT7+ELKYeOMKi8WpV8uY LV6/MLS4vGsOm8XtxhVsFj2PtCzmP9jB7MDuMbvhIovHplWdbB5/Z+1n8ejbsorR4/iN7Uwe nzfJBbBFNTDaZKQmpqQWKaTmJeenZOal2yp5B8c7x5uaGRjqGlpamCsp5CXmptoqufgE6Lpl 5gCdoqRQlphTChQKSCwuVtK3wzQhNMRN1wKmMULXNyQIrsfIAA0krGHMuHJsGkvBFZGKg7// szUwHhfoYuTkkBAwkViy5SUbhC0mceHeeiCbi0NIYCmjxJSWfrAEr4CgxI/J91i6GDk4mAXk JY5cygYJMwuoS0yat4gZov4Bo0Tj01dgNbwCWhK9m6VAalgEVCWetTxnB7HZgML7X9wAG8kv oChx9cdjRpByUYEIie4TlSBhEQF7id7Zs1hBRjIDHSjxbs4BsHphgVSJd5eusELsamaSOL3u DgtIglPASuJT3yb2CYyCs5CcOgvh1FlITl3AyLyKUSK1ILmgOCk91zAvtVyvODG3uDQvXS85 P3cTIzjun0ntYDy4y/0QowAHoxIPr8W7+eFCrIllxZW5hxglOJiVRHh53RaEC/GmJFZWpRbl xxeV5qQWH2I0BXp2IrOUaHI+MCXllcQbGpuYGVkamRtaGBmbK4nzPv6/LkxIID2xJDU7NbUg tQimj4mDU6qBUVRIVTqH396ju/3Q1p5HpcHLTl1+PEFxYeipCWdZ94fuaT1Yd+qc1W/291Ec 11njGHwkL0lvjH62r+fl18/+Sr/jOS9wSaotav64ZHuHaaYmg1ZPa8MGw/tyN6dOK7iZfNpX bl3am05uCUXPS5//Zf8seGcgV3RNcuEckz3nLtkuu5Tm5XDcS4mlOCPRUIu5qDgRAL9baVIR AwAA DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Roger, On 2016년 08월 02일 16:27, Roger Quadros wrote: > Hi, > > On 02/08/16 04:58, Chanwoo Choi wrote: >> This patch adds the new extcon type to group the each connecotr >> into following five category. This type would be used to handle >> the connectors as a group unit instead of a connector unit. >> - EXTCON_TYPE_USB : USB connector >> - EXTCON_TYPE_CHG : Charger connector >> - EXTCON_TYPE_JACK : Jack connector >> - EXTCON_TYPE_DISP : Display connector >> - EXTCON_TYPE_MISC : Miscellaneous connector >> >> Also, each external connector is possible to belong to one more extcon type. >> In caes of EXTCON_CHG_USB_SDP, it have the EXTCON_TYPE_CHG and EXTCON_TYPE_USB. >> >> Signed-off-by: Chanwoo Choi >> Tested-by: Chris Zhong >> Tested-by: Guenter Roeck >> Signed-off-by: MyungJoo Ham >> Reviewed-by: Guenter Roeck >> --- >> drivers/extcon/extcon.c | 159 +++++++++++++++++++++++++++++++++++++++--------- >> include/linux/extcon.h | 9 +++ >> 2 files changed, 139 insertions(+), 29 deletions(-) >> >> diff --git a/drivers/extcon/extcon.c b/drivers/extcon/extcon.c >> index 9a266e5c7e10..129afc87313e 100644 >> --- a/drivers/extcon/extcon.c >> +++ b/drivers/extcon/extcon.c >> @@ -38,43 +38,144 @@ >> #define SUPPORTED_CABLE_MAX 32 >> #define CABLE_NAME_MAX 30 >> >> -static const char *extcon_name[] = { >> - [EXTCON_NONE] = "NONE", >> +struct __extcon_info { >> + unsigned int type; >> + unsigned int id; >> + const char *name; >> + >> +} extcon_info[] = { >> + [EXTCON_NONE] = { >> + .type = EXTCON_TYPE_MISC, >> + .id = EXTCON_NONE, >> + .name = "NONE", >> + }, >> >> /* USB external connector */ >> - [EXTCON_USB] = "USB", >> - [EXTCON_USB_HOST] = "USB-HOST", >> + [EXTCON_USB] = { >> + .type = EXTCON_TYPE_USB, >> + .id = EXTCON_USB, >> + .name = "USB", >> + }, >> + [EXTCON_USB_HOST] = { >> + .type = EXTCON_TYPE_USB, >> + .id = EXTCON_USB, >> + .name = "USB_HOST", >> + }, > > EXTCON_USB_HOST should now be redundant as we can get all the > necessary information via EXTCON_USB. It is my mistake. I'll fix it. .id = EXTCON_USB, -> .id = EXTCON_USB_HOST, On the user-space, the process don't handle the ID and VBUS information directly. they need the identical type of attached external connector. For exmaple, The extcon separate the following two case: - mobile phone is connected to desktop pc. - mobile phone is connected to mouse/keyboard with otg cable. Regards, Chanwoo Choi