On Fri, Aug 07, 2015 at 10:11:47AM +0800, Peter Chen wrote: > On Thu, Aug 06, 2015 at 03:09:54PM +0200, Tomeu Vizoso wrote: > > If usbmisc hasn't probed yet, defer the probe. > > > > It's not enough to check if the platform device for the OF node of the > > usbmisc has been registered, but it also needs to have been probed > > already before we can call imx_usbmisc_init(). > > > > This can happen if the order in which devices are probed change due to > > async probing or on-demand probing of dependencies. > > > > Signed-off-by: Tomeu Vizoso <tomeu.vizoso@xxxxxxxxxxxxx> > > --- > > drivers/usb/chipidea/ci_hdrc_imx.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/drivers/usb/chipidea/ci_hdrc_imx.c b/drivers/usb/chipidea/ci_hdrc_imx.c > > index 504554e41922..e3c61d5e9270 100644 > > --- a/drivers/usb/chipidea/ci_hdrc_imx.c > > +++ b/drivers/usb/chipidea/ci_hdrc_imx.c > > @@ -104,7 +104,7 @@ static struct imx_usbmisc_data *usbmisc_get_init_data(struct device *dev) > > misc_pdev = of_find_device_by_node(args.np); > > of_node_put(args.np); > > > > - if (!misc_pdev) > > + if (!misc_pdev || !platform_get_drvdata(misc_pdev)) > > return ERR_PTR(-EPROBE_DEFER); > > "||"? or "&&"? You want usbmisc has already been probed. Oh, oops. The patch is right, I will queue it. -- Best Regards, Peter Chen -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html