From: Roger Quadros <rogerq@ti.com>
To: Peter Chen <hzpeterchen@gmail.com>
Cc: <peter.chen@freescale.com>, <balbi@kernel.org>,
<tony@atomide.com>, <gregkh@linuxfoundation.org>,
<dan.j.williams@intel.com>, <mathias.nyman@linux.intel.com>,
<Joao.Pinto@synopsys.com>, <sergei.shtylyov@cogentembedded.com>,
<jun.li@freescale.com>, <grygorii.strashko@ti.com>,
<yoshihiro.shimoda.uh@renesas.com>, <robh@kernel.org>,
<nsekhar@ti.com>, <b-liu@ti.com>, <joe@perches.com>,
<linux-usb@vger.kernel.org>, <linux-omap@vger.kernel.org>,
<linux-kernel@vger.kernel.org>, <devicetree@vger.kernel.org>
Subject: Re: [PATCH v10 13/14] usb: gadget: udc: adapt to OTG core
Date: Mon, 13 Jun 2016 10:14:31 +0300 [thread overview]
Message-ID: <575E5D57.7010700@ti.com> (raw)
In-Reply-To: <20160612113655.GC32615@shlinux2>
On 12/06/16 14:36, Peter Chen wrote:
> On Fri, Jun 10, 2016 at 04:07:22PM +0300, Roger Quadros wrote:
>>
>> +/**
>> + * usb_otg_add_gadget_udc - adds a new gadget to the udc class driver list
>> + * @parent: the parent device to this udc. Usually the controller
>> + * driver's device.
>
> It seems it should be udc device
Parent and udc->dev are not the same right?
I guess i'll omit the second statement to avoid confusion. So.
@parent: the parent device to this udc.
>
>> +/* udc_lock must be held */
>> static int udc_bind_to_driver(struct usb_udc *udc, struct usb_gadget_driver *driver)
>> {
>> int ret;
>> @@ -1282,17 +1449,26 @@ static int udc_bind_to_driver(struct usb_udc *udc, struct usb_gadget_driver *dri
>> ret = driver->bind(udc->gadget, driver);
>> if (ret)
>> goto err1;
>> - ret = usb_gadget_udc_start(udc);
>> - if (ret) {
>> - driver->unbind(udc->gadget);
>> - goto err1;
>> +
>> + /* If OTG/dual-role, the otg core manages UDC start/stop */
>> + if (udc->gadget->otg_dev) {
>> + mutex_unlock(&udc_lock);
>> + usb_otg_gadget_ready(udc->gadget, true);
>> + mutex_lock(&udc_lock);
>> + } else {
>> + ret = usb_gadget_udc_start(udc);
>> + if (ret) {
>> + mutex_unlock(&udc_lock);
>> + driver->unbind(udc->gadget);
>> + goto err1;
>> + }
>> + usb_udc_connect_control(udc);
>> }
>> - usb_udc_connect_control(udc);
>>
>> kobject_uevent(&udc->dev.kobj, KOBJ_CHANGE);
>> return 0;
>> err1:
>> - if (ret != -EISNAM)
>> + if ((ret != -EISNAM) && (ret != -EPROBE_DEFER))
>
> It seems it will not introduce -EPROBE_DEFER with your changes
> in udc_bind_to_driver
>
Good catch. Left over bit when I moved defer probing out of here.
--
cheers,
-roger
next prev parent reply other threads:[~2016-06-13 7:14 UTC|newest]
Thread overview: 89+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-06-10 13:07 [PATCH v10 00/14] USB OTG/dual-role framework Roger Quadros
2016-06-10 13:07 ` [PATCH v10 01/14] usb: hcd: Initialize hcd->flags to 0 Roger Quadros
2016-06-14 8:16 ` Roger Quadros
2016-06-10 13:07 ` [PATCH v10 02/14] usb: otg-fsm: Prevent build warning "VDBG" redefined Roger Quadros
2016-06-10 13:07 ` [PATCH v10 03/14] usb: hcd.h: Add OTG to HCD interface Roger Quadros
2016-06-14 8:17 ` Roger Quadros
2016-06-14 14:21 ` Alan Stern
2016-06-15 7:14 ` Roger Quadros
2016-06-10 13:07 ` [PATCH v10 04/14] usb: otg-fsm: use usb_otg wherever possible Roger Quadros
2016-06-10 13:07 ` [PATCH v10 05/14] usb: otg-fsm: move host controller operations into usb_otg->hcd_ops Roger Quadros
2016-06-10 13:07 ` [PATCH v10 06/14] usb: gadget.h: Add OTG to gadget interface Roger Quadros
2016-06-12 9:13 ` Peter Chen
2016-06-20 7:21 ` Felipe Balbi
2016-06-20 7:28 ` Roger Quadros
2016-06-20 8:13 ` Felipe Balbi
2016-06-20 8:25 ` Roger Quadros
2016-06-20 9:24 ` Felipe Balbi
2016-06-20 9:43 ` Roger Quadros
2016-06-10 13:07 ` [PATCH v10 07/14] usb: otg: get rid of CONFIG_USB_OTG_FSM in favour of CONFIG_USB_OTG Roger Quadros
2016-06-10 13:07 ` [PATCH v10 08/14] usb: otg: add OTG/dual-role core Roger Quadros
2016-06-12 11:21 ` Peter Chen
2016-06-13 7:42 ` Roger Quadros
2016-06-13 7:56 ` [PATCH v11 " Roger Quadros
2016-06-13 7:58 ` Peter Chen
2016-06-20 7:45 ` Felipe Balbi
2016-06-20 10:13 ` Roger Quadros
2016-06-20 12:03 ` Felipe Balbi
2016-06-20 12:26 ` Roger Quadros
2016-06-20 12:46 ` Felipe Balbi
2016-06-21 6:39 ` Peter Chen
2016-06-21 7:19 ` Felipe Balbi
2016-06-21 8:02 ` Peter Chen
2016-06-21 8:18 ` Felipe Balbi
2016-06-21 9:14 ` Peter Chen
2016-06-21 12:35 ` Felipe Balbi
2016-06-21 13:12 ` Peter Chen
2016-06-21 14:47 ` Felipe Balbi
2016-06-22 3:33 ` Peter Chen
2016-06-22 6:51 ` Felipe Balbi
2016-06-22 7:30 ` Peter Chen
2016-06-22 8:00 ` Felipe Balbi
2016-06-23 7:41 ` Yoshihiro Shimoda
2016-06-21 2:30 ` Yoshihiro Shimoda
2016-06-21 7:21 ` Felipe Balbi
2016-06-20 11:49 ` Peter Chen
2016-06-20 12:08 ` Felipe Balbi
2016-06-21 6:05 ` Peter Chen
2016-06-21 7:26 ` Felipe Balbi
2016-06-21 9:07 ` Peter Chen
2016-06-21 10:02 ` Felipe Balbi
2016-06-21 10:43 ` Tony Lindgren
2016-06-21 10:56 ` Felipe Balbi
2016-06-21 13:05 ` Peter Chen
2016-06-22 6:56 ` Felipe Balbi
2016-06-22 7:33 ` Peter Chen
2016-06-22 8:03 ` Felipe Balbi
2016-06-22 7:49 ` Roger Quadros
2016-06-22 8:14 ` Felipe Balbi
2016-06-22 8:30 ` Roger Quadros
2017-01-19 11:56 ` Vivek Gautam
2017-01-19 12:15 ` Roger Quadros
2017-01-19 15:15 ` vivek.gautam
2017-01-20 8:30 ` Roger Quadros
2017-01-20 11:39 ` Vivek Gautam
2016-06-23 7:42 ` Yoshihiro Shimoda
2016-06-10 13:07 ` [PATCH v10 09/14] usb: of: add an API to get OTG device from USB controller node Roger Quadros
2016-06-13 8:13 ` Jun Li
2016-06-13 8:16 ` Roger Quadros
2016-06-13 8:23 ` [PATCH v11 " Roger Quadros
2016-06-10 13:07 ` [PATCH v10 10/14] usb: otg: add hcd companion support Roger Quadros
2016-06-10 13:07 ` [PATCH v10 11/14] usb: otg: use dev_vdbg() instead of VDBG() Roger Quadros
2016-06-10 13:07 ` [PATCH v10 12/14] usb: hcd: Adapt to OTG core Roger Quadros
2016-06-14 8:17 ` Roger Quadros
2016-06-10 13:07 ` [PATCH v10 13/14] usb: gadget: udc: adapt " Roger Quadros
2016-06-12 11:36 ` Peter Chen
2016-06-13 7:14 ` Roger Quadros [this message]
2016-06-13 7:20 ` Peter Chen
2016-06-13 7:37 ` Roger Quadros
2016-06-13 7:40 ` Peter Chen
2016-06-13 7:55 ` [PATCH v11 " Roger Quadros
2016-06-13 7:56 ` Peter Chen
2016-06-13 8:06 ` Roger Quadros
2016-06-10 13:07 ` [PATCH v10 14/14] usb: host: xhci-plat: Add otg device to platform data Roger Quadros
2016-06-14 8:18 ` Roger Quadros
2016-06-14 2:17 ` [PATCH v10 00/14] USB OTG/dual-role framework Peter Chen
2016-06-14 8:12 ` Roger Quadros
2016-06-16 11:07 ` Roger Quadros
2016-06-17 7:17 ` Felipe Balbi
2016-06-17 7:31 ` Roger Quadros
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=575E5D57.7010700@ti.com \
--to=rogerq@ti.com \
--cc=Joao.Pinto@synopsys.com \
--cc=b-liu@ti.com \
--cc=balbi@kernel.org \
--cc=dan.j.williams@intel.com \
--cc=devicetree@vger.kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=grygorii.strashko@ti.com \
--cc=hzpeterchen@gmail.com \
--cc=joe@perches.com \
--cc=jun.li@freescale.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=mathias.nyman@linux.intel.com \
--cc=nsekhar@ti.com \
--cc=peter.chen@freescale.com \
--cc=robh@kernel.org \
--cc=sergei.shtylyov@cogentembedded.com \
--cc=tony@atomide.com \
--cc=yoshihiro.shimoda.uh@renesas.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).