linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Roger Quadros <rogerq@ti.com>
To: Chanwoo Choi <cw00.choi@samsung.com>,
	Robert Baldyga <r.baldyga@samsung.com>
Cc: "Chanwoo Choi" <cwchoi00@gmail.com>,
	"George Cherian" <gcherianv@gmail.com>,
	"Felipe Balbi" <balbi@ti.com>,
	"Greg KH" <gregkh@linuxfoundation.org>,
	"myungjoo.ham@samsung.com" <myungjoo.ham@samsung.com>,
	linux-usb@vger.kernel.org,
	linux-kernel <linux-kernel@vger.kernel.org>,
	"Marek Szyprowski" <m.szyprowski@samsung.com>,
	"Łukasz Stelmach" <l.stelmach@samsung.com>
Subject: Re: [RFC 01/19] extcon: add extcon-odroid-usbotg driver
Date: Fri, 20 Mar 2015 10:51:25 +0200	[thread overview]
Message-ID: <550BDF8D.8080806@ti.com> (raw)
In-Reply-To: <550BD02D.7050804@samsung.com>

Chanwoo & Robert,

On 20/03/15 09:45, Chanwoo Choi wrote:
> Hi Robert,
> 
> On 03/20/2015 04:25 PM, Robert Baldyga wrote:
>> Hi Chanwoo,
>>
>> On 03/19/2015 09:50 PM, Chanwoo Choi wrote:
>>> Hi Roger,
>>>
>>> On Thu, Mar 19, 2015 at 11:45 PM, Roger Quadros <rogerq@ti.com> wrote:
>>>> On 19/03/15 14:19, George Cherian wrote:
>>>>> Hi Robert,
>>>>>
>>>>> +Roger
>>>>> On Thu, Mar 19, 2015 at 5:37 PM, Robert Baldyga <r.baldyga@samsung.com> wrote:
>>>>>> Hi George,
>>>>>>
>>>>>> On 03/19/2015 09:50 AM, George Cherian wrote:
>>>>>>> Hi Robert,
>>>>>>>
>>>>>>> This looks like a extcon driver based on gpio for USB.
>>>>>>>
>>>>>>> Roger posted a generic one a while back.
>>>>>>> https://lkml.org/lkml/2015/2/2/187
>>>>>>>
>>>>>>> Doesn't this serve the purpose rather than adding this driver?
>>>>>>
>>>>>> Roger's driver doesn't support VBUS state detection so it cannot handle
>>>>> I feel Roger's driver could be extended for supporting VBUS.
>>>>> Also I think Roger's driver is about to get merged.
>>>>> Probably, Roger or Chanwoo can better tell that
>>>>
>>>> It is already queued for 4.1 and is available in linux-next.
>>>>
>>>>>
>>>>>> situation when USB cable is unpluged. In addition some of Odroid boards
>>>>>> has only VBUS detection (without ID pin), so this driver cannot handle
>>>>>> them at all.
>>>>
>>>> why not?
>>>>
>>>> x15-beagleboard also gets VBUS event over GPIO and I was planning to extent it
>>>> to support VBUS detection.
>>>
>>> Sounds good to me to extent extcon-usb-gpio.c.
>>> I'd like to hold only one extcon driver to support both USB and
>>> USB-HOST with gpio .
>>>
>>> There are one more extcon-gpio driver in mailing list as following:
>>> - extcon-usb-gpio.c (will be merged to Linux 4.1)
>>> - extcon-odroid-usbotg.c
>>> - extcon-otg_gpio.c [1]
>>> [1] https://lkml.org/lkml/2015/2/19/411
>>>
>>> The each extcon gpio driver support both USB/USB-HOST cable by using
>>> different way,
>>> Because some board which detect USB/USB-HOST by gpio have a little
>>> different pin composition
>>
>> These differences are small. In general we have three cases:
>>
>> 1. We have both VBUS and ID pin detection - we can detect USB, USB-HOST
>> and cable disconnection.
>>
>> 2. We have only VBUS detection - we can detect USB and cable disconnection.
>>
>> 3. We have ID pin only - we can distinguish between USB and USB-HOST but
>> without ability to detect cable disconnection.
>>
>>>
>>> I think only one extcon driver can support all cases with optional properties.
>>
>> So my driver in current form is ready for that. Only thing it would need
>> to change is to make VBUS detection an option (for now is mandatory
>> because all of supported Odroid boards have it). Then boards with VBUS
>> detection only or ID pin detection only will be handled also. I can also
>> change name of the driver to more generic. I'm going to prepare V2 on my
>> patches today.
> 
> Could you implement this feature on extcon-usb-gpio.c to support various pin composition?
> because extcon-usb-gpio.c was already implemented by Roger.
> If you implement other extcon driver to detect USB/USB-HOST cable by using gpio,
> there will be similar two extcon gpio driver for USB cable.
> 
> And,
> As Roger comment, he have the plan to extend the extcon-usb-gpio.c.
> So, If you will implement some feature for extcon driver with gpio,
> I'd like you to share your plan this thread to remove duplicat work.

extcon-usb-gpio.c supports case (3). (only ID pin)
I have plans to support case (1). (both ID and VBUS)

But Robert can go ahead and implement (2) and (1) over extcon-usb-gpio.c
if he wishes. The driver can easily decide which logic to follow depending on the
availability of the GPIO pins in the device tree.

cheers,
-roger


  reply	other threads:[~2015-03-20  8:51 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-18 14:04 [RFC 00/19] dwc3: add USB OTG role switch support Robert Baldyga
2015-03-18 14:04 ` [RFC 01/19] extcon: add extcon-odroid-usbotg driver Robert Baldyga
2015-03-19  8:50   ` George Cherian
2015-03-19 12:07     ` Robert Baldyga
2015-03-19 12:19       ` George Cherian
2015-03-19 14:45         ` Roger Quadros
2015-03-19 20:50           ` Chanwoo Choi
2015-03-20  7:25             ` Robert Baldyga
2015-03-20  7:45               ` Chanwoo Choi
2015-03-20  8:51                 ` Roger Quadros [this message]
2015-03-18 14:04 ` [RFC 02/19] dt-bindings: extcon: Add doc for extcon-odroid-usbotg Robert Baldyga
2015-03-18 14:04 ` [RFC 03/19] ARM: dts: exynos5422-odroidxu3: add odroid-usbotg extcon support Robert Baldyga
2015-03-18 14:04 ` [RFC 04/19] dwc3: gadget: add VBUS session handling Robert Baldyga
2015-03-18 14:04 ` [RFC 05/19] dwc3: gadget: enable/disable ep0 in dwc3_gadget_run_stop() Robert Baldyga
2015-03-18 14:04 ` [RFC 06/19] dwc3: gadget: check returned value in suspend/resume Robert Baldyga
2015-03-18 14:04 ` [RFC 07/19] dwc3: core: cleanup suspend/resume code Robert Baldyga
2015-03-18 15:00   ` Sergei Shtylyov
2015-03-18 14:04 ` [RFC 08/19] dwc3: core: handle event buffers in core_init/exit Robert Baldyga
2015-03-18 14:04 ` [RFC 09/19] dwc3: core: make dwc3_core_init/exit non-static Robert Baldyga
2015-03-18 14:04 ` [RFC 10/19] dwc3: add missing OTG register definitions Robert Baldyga
2015-03-18 14:04 ` [RFC 11/19] dwc3: add OTG handling code Robert Baldyga
2015-03-19  7:38   ` George Cherian
2015-03-18 14:04 ` [RFC 12/19] dwc3: otg: add ext_otg_ops support Robert Baldyga
2015-03-18 14:04 ` [RFC 13/19] dwc3: gadget: register gadget in OTG core Robert Baldyga
2015-03-18 14:04 ` [RFC 14/19] dwc3: host: don't add XHCI device only if in OTG mode Robert Baldyga
2015-03-18 14:04 ` [RFC 15/19] dwc3: core: initialize OTG in DWC3 core Robert Baldyga
2015-03-18 14:04 ` [RFC 16/19] dwc3: exynos: add software role switching code Robert Baldyga
2015-03-18 14:04 ` [RFC 17/19] ARM: dts: exynos5420: set usb3_lpm_capable in dwc3 controllers Robert Baldyga
2015-03-18 14:04 ` [RFC 18/19] ARM: dts: exynos5420: add snps,dis_u3_susphy_quirk to " Robert Baldyga
2015-03-18 14:04 ` [RFC 19/19] ARM: dts: exynos5422-odroidxu3: make usbdrd3 extcon client Robert Baldyga
2015-03-19  2:33 ` [RFC 00/19] dwc3: add USB OTG role switch support Chanwoo Choi
2015-03-19  8:27   ` Robert Baldyga

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=550BDF8D.8080806@ti.com \
    --to=rogerq@ti.com \
    --cc=balbi@ti.com \
    --cc=cw00.choi@samsung.com \
    --cc=cwchoi00@gmail.com \
    --cc=gcherianv@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=l.stelmach@samsung.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=m.szyprowski@samsung.com \
    --cc=myungjoo.ham@samsung.com \
    --cc=r.baldyga@samsung.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;
as well as URLs for NNTP newsgroup(s).