On Sun, Sep 08, 2013 at 10:50:36AM +0200, Pali Rohár wrote: > More power supply drivers depends on vbus events and without it they not > working. Power supply drivers using usb_register_notifier, so to deliver > events it is needed to call atomic_notifier_call_chain. > > So without atomic notifier power supply driver isp1704 not retrieving > vbus status and reporting bogus values to userspace and also to board > platform data functions. Without proper data charger drivers trying to > charge battery also when charger is disconnected or do not start charging > when wallcharger connects. > > Atomic notifier in musb driver was used before v3.5 and was replaced with > omap mailbox. This patch adding atomic_notifier_call_chain call from > function omap_musb_set_mailbox. > > Signed-off-by: Pali Rohár <pali.rohar@xxxxxxxxx> > --- > drivers/usb/musb/omap2430.c | 3 +++ > drivers/usb/phy/phy-twl4030-usb.c | 2 ++ > 2 files changed, 5 insertions(+) > > diff --git a/drivers/usb/musb/omap2430.c b/drivers/usb/musb/omap2430.c > index f44e8b5..5c40252 100644 > --- a/drivers/usb/musb/omap2430.c > +++ b/drivers/usb/musb/omap2430.c > @@ -305,6 +305,9 @@ static void omap_musb_set_mailbox(struct omap2430_glue *glue) > default: > dev_dbg(dev, "ID float\n"); > } > + > + atomic_notifier_call_chain(&musb->xceiv->notifier, > + musb->xceiv->last_event, NULL); let's add a wrapper for this: static inline int usb_phy_notify(struct usb phy *x, unsigned val, void *v) { return atomic_notifier_call_chain(&x->notifier, val, v); } -- balbi
Attachment:
signature.asc
Description: Digital signature