From: Chanwoo Choi <cw00.choi@samsung.com>
To: Guenter Roeck <groeck@google.com>
Cc: linux-kernel <linux-kernel@vger.kernel.org>,
myungjoo.ham@samsung.com, Chris Zhong <zyw@rock-chips.com>,
Guenter Roeck <groeck@chromium.org>,
chanwoo@kernel.org, "cpgs (cpgs@samsung.com)" <cpgs@samsung.com>
Subject: Re: [PATCH v2 0/6] extcon: Add the support for extcon type and property
Date: Tue, 02 Aug 2016 10:52:07 +0900 [thread overview]
Message-ID: <579FFCC7.6000409@samsung.com> (raw)
In-Reply-To: <CABXOdTfLXu=dt0G8DyejVrzW+hrAgEnV6fFEdmv-BmjQsRXmiA@mail.gmail.com>
Hi Guenter,
On 2016년 08월 02일 03:18, Guenter Roeck wrote:
> On Sun, Jul 31, 2016 at 10:50 PM, Chanwoo Choi <cw00.choi@samsung.com> wrote:
>> This patch-set add the support the extcon type, extcon property
>> and the synchronization functions.
>>
>> The each external connector has the common characters. So, the external
>> connectors are able to gather in the specific type. And the each external
>> connectors has the specific H/W desigin to support the multiple features
>> throught h/w lines. There are the requirement to express the each h/w
>> character of each external connector. Lastly, when the state and property
>> are changed, the extcon notify the extcon client driver of the changed
>> information. To support the notification on extcon provider drivers,
>> this patches support the three sync functions.
>>
>> Changes from v1:
>> - Expand the size (+1) of the property array for each extcon type.
>> - Use the memset() to initialize the property when connector is detached.
>> - Wrap the data of struct extcon_dev in the lock mechanism.
>> - Don't send the notification if connector state is not changed in
>> extcon_set_state_sync()
>> - Fix the minor issue.
>> - Add Tested-by tag of Chris Zhong for these patches.
>> - Add Signed-off tag of Myungjoo Ham for patch1.
>> - Add Reviewed-by tag of Guenter Roeck for patch6.
>>
>> Depends on:
>> This patch depend on the extcon git repository[2]. (branch : extcon-next)
>>
>
> For the series:
>
> Tested-by: Guenter Roeck <groeck@chromium.org>
Thanks for your test and review.
I'll modify the minor issue of your comment. I'll send next version(v3) and then
merged patches on extcon-next branch.
Regards,
Chanwoo Choi
>
>> [1] https://en.wikipedia.org/wiki/DisplayPort
>> [2] https://git.kernel.org/cgit/linux/kernel/git/chanwoo/extcon.git/
>>
>> [Detailed description of these patches]
>> 1. Add the extcon type to group the each external connector.
>> There are five categories unitl now as following:
>> - 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
>>
>> 2. Add the extcon property to support the multiple characteristic
>> for the specific H/W design.
>> - EXTCON_PROP_USB_[property name]
>> - EXTCON_PROP_CHG_[property name]
>> - EXTCON_PROP_JACK_[property name]
>> - EXTCON_PROP_DISP_[property name]
>> e.g., EXTCON_PROP_USB_ID and EXTCON_PROP_USB_VBUS
>> The list of the new extcon APIs for the property as following:
>> - int extcon_get_property(struct extcon_dev *edev,
>> unsigned int id, unsigned int prop,
>> union extcon_property_value *prop_val)
>> - int extcon_set_property(struct extcon_dev *edev,
>> unsigned int id, unsigned int prop,
>> union extcon_property_value prop_val)
>> - int extcon_get_property_capability(struct extcon_dev *edev,
>> unsigned int id, unsigned int prop);
>> - int extcon_set_property_capability(struct extcon_dev *edev,
>> unsigned int id, unsigned int prop);
>>
>> 3. Add the sync functions to synchronize the data of each external connector
>> between an extcon provider driver and the extcon client drivers.
>> The list of the new extcon sync APIs as following:
>> - extcon_sync() : Send the notification for each external connector to
>> synchronize the information between and extcon provider driver
>> and the extcon client drivers.
>> - extcon_set_state_sync() : Set the state of external connector with noti.
>> - extcon_set_property_sync() : Set the property of external connector with noti.
>>
>> 4. Add the new external connector definition. The EXTCON_DISP_DP
>> means the Display external connector[1].
>> The list of new external connector as following:
>> - EXTCON_DISP_DP
>> The list of new property of USB connector as following:
>> - EXTCON_PROP_USB_TYPEC_POLARITY
>>
>> 5. Rename the renames the existing extcon_get/set_cable_state_()
>> to maintain the function naming pattern like as extcon APIs for property.
>> - extcon_set_cable_state_() -> extcon_set_state()
>> - extcon_get_cable_state_() -> extcon_get_state()
>>
>> For example,
>> case 1, change the state of external connector and synchronized the data.
>> extcon_set_state_sync(edev, EXTCON_USB, 1);
>> case 2, change both the state and property of external connector
>> and synchronized the data.
>> extcon_set_state(edev, EXTCON_USB, 1);
>> extcon_set_property(edev, EXTCON_USB, EXTCON_PROP_USB_ID, 1);
>> extcon_set_property(edev, EXTCON_USB, EXTCON_PROP_USB_VBUS, 0);
>> extcon_sync(edev, EXTCON_USB);
>> case 3, change the property of external connector and synchronized the data.
>> extcon_set_property(edev, EXTCON_USB, EXTCON_PROP_USB_VBUS, 0);
>> extcon_set_property(edev, EXTCON_USB, EXTCON_PROP_USB_ID, 1);
>> extcon_sync(edev, EXTCON_USB);
>> case 4, change the property of external connector and synchronized the data.
>> extcon_set_property_sync(edev, EXTCON_USB, EXTCON_PROP_USB_VBUS, 0);
>>
>>
>> Chanwoo Choi (5):
>> extcon: Add the extcon_type to gather each connector into five category
>> extcon: Add the support for extcon property according to extcon type
>> extcon: Add the support for the capability of each property
>> extcon: Rename the extcon_set/get_state() to maintain the function naming pattern
>> extcon: Add the synchronization extcon APIs to support the notification
>>
>> Chris Zhong (1):
>> extcon: Add EXTCON_DISP_DP and the property for USB Type-C
>>
>> drivers/extcon/extcon.c | 730 ++++++++++++++++++++++++++++++++++++++++--------
>> include/linux/extcon.h | 176 +++++++++++-
>> 2 files changed, 786 insertions(+), 120 deletions(-)
>>
>> --
>> 1.9.1
>>
>
>
>
next prev parent reply other threads:[~2016-08-02 3:06 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-01 5:50 [PATCH v2 0/6] extcon: Add the support for extcon type and property Chanwoo Choi
2016-08-01 5:50 ` [PATCH v2 1/6] extcon: Add the extcon_type to gather each connector into five category Chanwoo Choi
2016-08-01 19:44 ` Guenter Roeck
2016-08-01 5:50 ` [PATCH v2 2/6] extcon: Add the support for extcon property according to extcon type Chanwoo Choi
2016-08-01 19:48 ` Guenter Roeck
2016-08-02 1:27 ` Chanwoo Choi
2016-08-01 5:50 ` [PATCH v2 3/6] extcon: Add the support for the capability of each property Chanwoo Choi
2016-08-01 19:49 ` Guenter Roeck
2016-08-01 5:50 ` [PATCH v2 4/6] extcon: Rename the extcon_set/get_state() to maintain the function naming pattern Chanwoo Choi
2016-08-01 19:51 ` Guenter Roeck
2016-08-01 5:50 ` [PATCH v2 5/6] extcon: Add the synchronization extcon APIs to support the notification Chanwoo Choi
2016-08-01 19:55 ` Guenter Roeck
2016-08-02 1:50 ` Chanwoo Choi
2016-08-01 5:50 ` [PATCH v2 6/6] extcon: Add EXTCON_DISP_DP and the property for USB Type-C Chanwoo Choi
2016-08-01 18:18 ` [PATCH v2 0/6] extcon: Add the support for extcon type and property Guenter Roeck
2016-08-02 1:52 ` Chanwoo Choi [this message]
2016-08-02 4:51 ` Guenter Roeck
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=579FFCC7.6000409@samsung.com \
--to=cw00.choi@samsung.com \
--cc=chanwoo@kernel.org \
--cc=cpgs@samsung.com \
--cc=groeck@chromium.org \
--cc=groeck@google.com \
--cc=linux-kernel@vger.kernel.org \
--cc=myungjoo.ham@samsung.com \
--cc=zyw@rock-chips.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox