On Wed, Mar 13, 2013 at 10:47 AM, Kishon Vijay Abraham I <kishon@xxxxxx> wrote: > In the case where omap glue is loaded and musb core is not, glue->status > wont have a valid status if the phy drivers call omap_musb_mailbox. So > fixed the conditions here. There already seems to be another patch named "usb: musb: omap2430: fix omap_musb_mailbox glue check again" on it's way to mainline that does mostly the same as first part of this patch. > > Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx> > --- > drivers/usb/musb/omap2430.c | 11 +++++------ > 1 file changed, 5 insertions(+), 6 deletions(-) > > diff --git a/drivers/usb/musb/omap2430.c b/drivers/usb/musb/omap2430.c > index 78bfc50..28a0220 100644 > --- a/drivers/usb/musb/omap2430.c > +++ b/drivers/usb/musb/omap2430.c > @@ -236,13 +236,10 @@ void omap_musb_mailbox(enum omap_musb_vbus_id_status status) > { > struct omap2430_glue *glue = _glue; > > - if (glue && glue_to_musb(glue)) { > - glue->status = status; > - } else { > - pr_err("%s: musb core is not yet ready\n", __func__); > + if (!glue) > return; > - } > > + glue->status = status; > schedule_work(&glue->omap_musb_mailbox_work); > } > EXPORT_SYMBOL_GPL(omap_musb_mailbox); > @@ -307,7 +304,9 @@ static void omap_musb_mailbox_work(struct work_struct *mailbox_work) > { > struct omap2430_glue *glue = container_of(mailbox_work, > struct omap2430_glue, omap_musb_mailbox_work); > - omap_musb_set_mailbox(glue); > + > + if (glue_to_musb(glue)) > + omap_musb_set_mailbox(glue); > } > > static irqreturn_t omap2430_musb_interrupt(int irq, void *__hci) > -- > 1.7.10.4 > -- Gražvydas -- 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