public inbox for linux-arm-kernel@lists.infradead.org
 help / color / mirror / Atom feed
From: peter.chen@freescale.com (Peter Chen)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v9 8/9] usb: chipidea: tell platform layer the ci core probe's result
Date: Wed, 27 Feb 2013 10:22:03 +0800	[thread overview]
Message-ID: <20130227022202.GA20402@nchen-desktop> (raw)
In-Reply-To: <20130226094234.GC26189@arwen.pp.htv.fi>

On Tue, Feb 26, 2013 at 11:42:34AM +0200, Felipe Balbi wrote:
> On Sun, Feb 17, 2013 at 05:24:42PM +0800, Peter Chen wrote:
> > If the probe fails, the ci13xxx_add_device will not return error,
> > (bus_probe_device doesn't has return value)
> > therefore, the platform layer can't know whether core's probe
> > is successful or not, if platform layer goes on using core's struct
> > which is initialized at core's probe, the error will occur.
> > 
> > This error is showed when I only compile gadget, the host-only
> > controller reports "no supported roles", and fails probe, but imx
> > platform code doesn't know it, and goes on using core's private data.
> > 
> > Signed-off-by: Peter Chen <peter.chen@freescale.com>
> 
> this just tells you that platform code shouldn't be using the driver
> directly. passing probe_retval via platform_data is an abomination, fix
> the real problem instead, whatever it is.

So you suggest the platform glue layer should not use core driver's data
directly, eg, for your dwc3, the platform glue layer should not use
struct dwc3 *dwc directly? 
At dwc3-exynos.c,  it has code "exynos->dwc3    = dwc3;", so the exynos
platform code may will use struct dwc3 in future. Besides, if the dwc3
core driver's probe fails, the exynos platform code will not know it,
the usb clk will be on on the usb can't be used.

If you suggest like above, we may need to add lots of notify function at
core driver as there are many platform specific things, eg, special init/
shutdown, suspend/resume, board layer gpio setting for vbus control (used
at id switch), probe fail, etc.	

-- 

Best Regards,
Peter Chen

  reply	other threads:[~2013-02-27  2:22 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-02-17  9:24 [PATCH v9 0/9] Add tested id switch and vbus connect detect support for Chipidea Peter Chen
2013-02-17  9:24 ` [PATCH v9 1/9] Revert "USB: chipidea: add vbus detect for udc" Peter Chen
2013-02-17  9:24 ` [PATCH v9 2/9] usb: chipidea: add otg file Peter Chen
2013-02-17  9:24 ` [PATCH v9 3/9] usb: chipidea: add otg id switch and vbus connect/disconnect detect Peter Chen
2013-02-17  9:24 ` [PATCH v9 4/9] usb: chipidea: udc: add pullup/pulldown dp at hw_device_state Peter Chen
2013-02-17  9:24 ` [PATCH v9 5/9] usb: chipidea: udc: retire the flag CI13_PULLUP_ON_VBUS Peter Chen
2013-02-17  9:24 ` [PATCH v9 6/9] usb: chipidea: imx: add internal vbus regulator control Peter Chen
2013-02-17  9:24 ` [PATCH v9 7/9] usb: chipidea: udc: fix the oops when plugs in usb cable after rmmod gadget Peter Chen
2013-02-17  9:24 ` [PATCH v9 8/9] usb: chipidea: tell platform layer the ci core probe's result Peter Chen
2013-02-26  9:42   ` Felipe Balbi
2013-02-27  2:22     ` Peter Chen [this message]
2013-02-27 12:12       ` Felipe Balbi
2013-02-28  3:11         ` Peter Chen
2013-02-28  7:26           ` Felipe Balbi
2013-02-28  8:31             ` Peter Chen
2013-02-28  8:49               ` Felipe Balbi
2013-02-28  9:32                 ` Alexander Shishkin
2013-02-28 10:06                   ` Peter Chen
2013-02-28 10:45                     ` Felipe Balbi
2013-03-01  1:45                       ` Peter Chen
2013-03-01  6:29                         ` Felipe Balbi
2013-02-28 10:42                   ` Felipe Balbi
2013-02-28 11:55                     ` Alexander Shishkin
2013-03-01  6:36                       ` Felipe Balbi
2013-02-17  9:24 ` [PATCH v9 9/9] usb: chipidea: imx: fix the error that using uninitialized pointer Peter Chen
2013-02-26  9:36 ` [PATCH v9 0/9] Add tested id switch and vbus connect detect support for Chipidea Peter Chen

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=20130227022202.GA20402@nchen-desktop \
    --to=peter.chen@freescale.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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