From: kishon <kishon@ti.com>
To: balbi@ti.com
Cc: grant.likely@secretlab.ca, rob.herring@calxeda.com,
rob@landley.net, gregkh@linuxfoundation.org, s-guiriec@ti.com,
gg@slimlogic.co.uk, sameo@linux.intel.com,
broonie@opensource.wolfsonmicro.com, ldewangan@nvidia.com,
devicetree-discuss@lists.ozlabs.org, linux-doc@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org,
linux-omap@vger.kernel.org
Subject: Re: [PATCH 2/4] usb: dwc3: dwc3-omap: return -EPROBE_DEFER if probe has not yet executed
Date: Tue, 5 Mar 2013 20:48:24 +0530 [thread overview]
Message-ID: <51360CC0.9080108@ti.com> (raw)
In-Reply-To: <20130305150608.GI12123@arwen.pp.htv.fi>
Hi,
On Tuesday 05 March 2013 08:36 PM, Felipe Balbi wrote:
> On Tue, Mar 05, 2013 at 08:31:58PM +0530, kishon wrote:
>> Hi,
>>
>> On Tuesday 05 March 2013 08:26 PM, Felipe Balbi wrote:
>>> On Tue, Mar 05, 2013 at 07:51:58PM +0530, Kishon Vijay Abraham I wrote:
>>>> return -EPROBE_DEFER from dwc3_omap_mailbox in dwc3-omap.c, if the probe of
>>>> dwc3-omap has not yet been executed or failed.
>>>>
>>>> Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
>>>> ---
>>>> drivers/usb/dwc3/dwc3-omap.c | 7 +++++--
>>>> include/linux/usb/dwc3-omap.h | 6 +++---
>>>> 2 files changed, 8 insertions(+), 5 deletions(-)
>>>>
>>>> diff --git a/drivers/usb/dwc3/dwc3-omap.c b/drivers/usb/dwc3/dwc3-omap.c
>>>> index 19c6e72..9428f4e 100644
>>>> --- a/drivers/usb/dwc3/dwc3-omap.c
>>>> +++ b/drivers/usb/dwc3/dwc3-omap.c
>>>> @@ -138,11 +138,14 @@ static inline void dwc3_omap_writel(void __iomem *base, u32 offset, u32 value)
>>>> writel(value, base + offset);
>>>> }
>>>>
>>>> -void dwc3_omap_mailbox(enum omap_dwc3_vbus_id_status status)
>>>> +int dwc3_omap_mailbox(enum omap_dwc3_vbus_id_status status)
>>>> {
>>>> u32 val;
>>>> struct dwc3_omap *omap = _omap;
>>>>
>>>> + if (!omap)
>>>> + return -EPROBE_DEFER;
>>>> +
>>>> switch (status) {
>>>> case OMAP_DWC3_ID_GROUND:
>>>> dev_dbg(omap->dev, "ID GND\n");
>>>> @@ -185,7 +188,7 @@ void dwc3_omap_mailbox(enum omap_dwc3_vbus_id_status status)
>>>> dev_dbg(omap->dev, "ID float\n");
>>>> }
>>>>
>>>> - return;
>>>> + return IRQ_HANDLED;
>>>
>>> IRQ_HANDLED ????
>>
>> Actually I did it that way since palmas_vbus_wakeup_irq can directly
>> return the return value from dwc3_omap_mailbox. If this seems hacky
>> to you, I'll change it.
>
> it does seem hacky :-) Try something like:
>
> ret = dwc3_omap_mailbox();
> if (ret)
> print_error();
>
> return IRQ_HANDLED;
hmm.. But there is one case where palmas_vbus_wakeup_irq should return
EPROBE_DEFER. In the cold plug case, if palmas gets loaded before
dwc3-omap, omap in dwc3_omap_mailbox will be NULL. So ideally palmas
should be probed after dwc3-omap for this case. Returning IRQ_HANDLED or
IRQ_NONE wont help here.
Thanks
Kishon
>
next prev parent reply other threads:[~2013-03-05 15:18 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-05 14:21 [PATCH 0/4] usb: added palmas-usb driver and a few misc fixes Kishon Vijay Abraham I
2013-03-05 14:21 ` [PATCH 1/4] usb: dwc3: dwc3-omap: set dma_mask for dwc3 inorder for host mode to work Kishon Vijay Abraham I
[not found] ` <1362493320-13913-2-git-send-email-kishon-l0cyMroinI0@public.gmane.org>
2013-03-05 14:54 ` Felipe Balbi
[not found] ` <20130305145458.GF12123-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org>
2013-03-05 14:59 ` kishon
2013-03-05 15:11 ` Felipe Balbi
2013-03-05 14:21 ` [PATCH 2/4] usb: dwc3: dwc3-omap: return -EPROBE_DEFER if probe has not yet executed Kishon Vijay Abraham I
2013-03-05 14:56 ` Felipe Balbi
[not found] ` <20130305145645.GG12123-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org>
2013-03-05 15:01 ` kishon
[not found] ` <513608E6.3010502-l0cyMroinI0@public.gmane.org>
2013-03-05 15:06 ` Felipe Balbi
2013-03-05 15:18 ` kishon [this message]
[not found] ` <51360CC0.9080108-l0cyMroinI0@public.gmane.org>
2013-03-05 15:21 ` Felipe Balbi
[not found] ` <1362493320-13913-1-git-send-email-kishon-l0cyMroinI0@public.gmane.org>
2013-03-05 14:21 ` [PATCH 3/4] USB: Palmas OTG Transceiver Driver Kishon Vijay Abraham I
2013-03-05 16:48 ` Stephen Warren
2013-03-05 14:22 ` [PATCH 4/4] usb: musb: omap2430: replace *_* with *-* in property names Kishon Vijay Abraham I
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=51360CC0.9080108@ti.com \
--to=kishon@ti.com \
--cc=balbi@ti.com \
--cc=broonie@opensource.wolfsonmicro.com \
--cc=devicetree-discuss@lists.ozlabs.org \
--cc=gg@slimlogic.co.uk \
--cc=grant.likely@secretlab.ca \
--cc=gregkh@linuxfoundation.org \
--cc=ldewangan@nvidia.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=rob.herring@calxeda.com \
--cc=rob@landley.net \
--cc=s-guiriec@ti.com \
--cc=sameo@linux.intel.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).