Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756996AbbDPH7t (ORCPT ); Thu, 16 Apr 2015 03:59:49 -0400 Received: from mailout3.samsung.com ([203.254.224.33]:62449 "EHLO mailout3.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756935AbbDPH7e (ORCPT ); Thu, 16 Apr 2015 03:59:34 -0400 X-AuditID: cbfee68d-f79266d0000049c9-25-552f6be42ca5 Message-id: <552F6BE3.5080604@samsung.com> Date: Thu, 16 Apr 2015 16:59:31 +0900 From: Chanwoo Choi User-Agent: Mozilla/5.0 (X11; Linux i686; rv:17.0) Gecko/20130106 Thunderbird/17.0.2 MIME-version: 1.0 To: "Ivan T. Ivanov" Cc: Peter Chen , "Balbi, Felipe" , "ABRAHAM, KISHON VIJAY" , Roger Quadros , Robert Baldyga , myungjoo.ham@samsung.com, linux-usb@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, m.szyprowski@samsung.com Subject: Re: [PATCH v3 2/4] extcon: usb-gpio: add support for VBUS detection References: <55278DD3.3020409@samsung.com> <55279550.1060609@samsung.com> <552CE579.6060702@ti.com> <552CE5C0.3010207@ti.com> <552CEC97.1050205@samsung.com> <552CEE42.1050907@ti.com> <552CFA1E.5070400@samsung.com> <20150415032734.GA29095@shlinux2> <552E1862.6090709@ti.com> <552E2EBF.5090906@samsung.com> <20150416015922.GB22269@shlinux2> <552F5E17.5020902@samsung.com> <1429168424.26621.1.camel@mm-sol.com> In-reply-to: <1429168424.26621.1.camel@mm-sol.com> Content-type: text/plain; charset=UTF-8 Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrMIsWRmVeSWpSXmKPExsWyRsSkRPdJtn6owaSnbBYH79dbzD9yjtXi 2cSHjBYXnvawWVzeNYfNYtGyVmaLtUfuslvcblzBZnFs9l8miweHd7Jb9DzScuD2+He4n8lj 0/5pzB59W1Yxehy/sZ3J4/MmuQDWKC6blNSczLLUIn27BK6MBXvvshbsFqjYPce+gfEVTxcj J4eEgInEws+rWCFsMYkL99azdTFycQgJLGWUOLlpOxtM0ZQV/5ghEtMZJe7N2coK4TxglHgx aQ8jSBWvgJbE3BMvmEBsFgFViVcTpoDZbEDx/S9ugE0SFQiTWDn9CgtEvaDEj8n3gGwODhEB TYlNZ4JBwswCp5gkVt3wAQkLC/hILLwBtWoxs8S1ux/BLuUUMJKYs30VC0S9usSkeYuYIWx5 ic1r3jJDHP2IXWLXV0+IcwQkvk0+BLZKQkBWYtMBqBJJiYMrbrBMYBSbheSgWUimzkIydQEj 8ypG0dSC5ILipPQiQ73ixNzi0rx0veT83E2MwLg8/e9Z7w7G2wesDzEKcDAq8fB6JOiHCrEm lhVX5h5iNAW6YiKzlGhyPjD680riDY3NjCxMTUyNjcwtzZTEeRWlfgYLCaQnlqRmp6YWpBbF F5XmpBYfYmTi4JRqYLTt1hEon/fKgnv1ltVBjjOP7epe/r7090YDi67Thzd7rjaftnhiKUdk 3iqLbRXHGNTEze0mc57o/PAsIO+796PrnZLxns/nXfr1f1dJTml76ik1BntrrjgrPm7WtZuk JrazTnDLqVcz97zO+si36HX0bhYlydD8fT35E/x/v0hZN0s/8GBxrRJLcUaioRZzUXEiAJrY KQPGAgAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrHIsWRmVeSWpSXmKPExsVy+t9jQd3H2fqhBkcarC0O3q+3mH/kHKvF s4kPGS0uPO1hs7i8aw6bxaJlrcwWa4/cZbe43biCzeLY7L9MFg8O72S36Hmk5cDt8e9wP5PH pv3TmD36tqxi9Dh+YzuTx+dNcgGsUQ2MNhmpiSmpRQqpecn5KZl56bZK3sHxzvGmZgaGuoaW FuZKCnmJuam2Si4+AbpumTlAlykplCXmlAKFAhKLi5X07TBNCA1x07WAaYzQ9Q0JgusxMkAD CWsYMxbsvctasFugYvcc+wbGVzxdjJwcEgImElNW/GOGsMUkLtxbz9bFyMUhJDCdUeLenK2s EM4DRokXk/YwglTxCmhJzD3xggnEZhFQlXg1YQqYzQYU3//iBhuILSoQJrFy+hUWiHpBiR+T 7wHZHBwiApoSm84Eg4SZBU4xSay64QMSFhbwkVh4A2rVYmaJa3c/soLUcAoYSczZvooFol5d YtK8RcwQtrzE5jVvmScwCsxCsmEWkrJZSMoWMDKvYhRNLUguKE5KzzXUK07MLS7NS9dLzs/d xAiO+2dSOxhXNlgcYhTgYFTi4f2Roh8qxJpYVlyZe4hRgoNZSYT3eDpQiDclsbIqtSg/vqg0 J7X4EKMpMAAmMkuJJucDU1JeSbyhsYmZkaWRuaGFkbG5kjjvHF25UCGB9MSS1OzU1ILUIpg+ Jg5OqQbGTuGJ5zZN+KxU6hRr6dKcrKtWdbFV/dZ3llPe1nOmvP/wOlc9R27mvg7x7F/JwTbS J4T0ncPN9q2uOr8pdGG4+6wTx9ZW+2+/bd4TLbp6c/GkBersZVdrl8xUyuSW+H95g2lv16KF N16vNHnzUpJzhays8p6aOWxLdvI6Oivq6a5inVel+p5XiaU4I9FQi7moOBEAfaG96BEDAAA= 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 Content-Length: 2294 Lines: 63 On 04/16/2015 04:13 PM, Ivan T. Ivanov wrote: > Hi, > > On Thu, 2015-04-16 at 16:00 +0900, Chanwoo Choi wrote: >> Hi Peter, >> >> On 04/16/2015 10:59 AM, Peter Chen wrote: >>> > >>> Ok, from USB point, external id/vbus value can't decide >>> which role the controller will be, the controller driver >>> will decide role according to many things, eg, user configurations, >>> id/vbus value, OTG HNP, etc. >>> >>> So, from USB controller/phy driver, it doesn't care which cable is >>> inserted, it cares about id/vbus value. Eg, it can get id/vbus value >>> and it will be notified when the id/vbus value has changed. >> >> OK, I change the notifier name and add notifier events as following: >> >> - extcon_{register|unregister}_usb_notifier(struct extcon_dev *edev, struct notifier_block *nb); >> - list of notifier events >> #define EXTCON_USB_ID_L_VBUS_L0 /* ID low and VBUS low */ >> #define EXTCON_USB_ID_L_VBUS_H1 /* ID low and VBUS high */ >> #define EXTCON_USB_ID_H_VBUS_L2 /* ID high and VBUS low */ >> #define EXTCON_USB_ID_H_VBUS_H3 /* ID high and VBUS high */ > > I am still confused, why we mix ID and VBUS events into one? > Those are two lines and they are not necessarily handled by > the same extcon_dev. IMO, if some usb driver check both id and vbus pin at the same time, the usb driver can know the both id and vbus pin state through only one notifier event. Also, If some usb driver want to know the state of id pin except of vbus state, when receiving following events, id pin is low. #define EXTCON_USB_ID_L_VBUS_L0 #define EXTCON_USB_ID_L_VBUS_H1 when receiving following events, id pin is high. #define EXTCON_USB_ID_H_VBUS_L2 #define EXTCON_USB_ID_H_VBUS_H3 Also, some usb driver would catch the vbus pin state with same method. But, it is just my opinion. We may use following notifier events for each pin. We need to discuss it. #define EXTCON_USB_ID_LOW #define EXTCON_USB_ID_HIGH #define EXTCON_USB_VBUS_LOW #define EXTCON_USB_VBUS_HIGH -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/