On Wed, 24 Jun 2009 10:29:03 +0800 David Brownell <david-b@xxxxxxxxxxx> wrote: > On Tuesday 23 June 2009, Alek Du wrote: > > On Wed, 24 Jun 2009 09:58:42 +0800 > > David Brownell <david-b@xxxxxxxxxxx> wrote: > > > > > On Thursday 11 June 2009, Alek Du wrote: > > > > --- a/drivers/usb/core/hub.c > > > > +++ b/drivers/usb/core/hub.c > > > > @@ -1545,6 +1545,7 @@ static int usb_configure_device_otg(struct usb_device *udev) > > > > err); > > > > bus->b_hnp_enable = 0; > > > > } > > > > + usb_notify_otg_hnp_enable(udev); > > > > } > > > > } > > > > } > > > > > > What makes this hardware so unlike other OTG hosts that it needs > > > to add a hook at this level? > > > > > > There are other OTG implementations, and they didn't need this... > > > > David, > > Because it is the first EHCI OTG controller driver. The notification is used > > for OTG transceiver driver (already in linus git tree) to update its hw status. > > The fact that it's EHCI can't matter. There are two other > OTG implementations and they were able to work just fine > without a notification at this level. > > ISTR they had the hook from the HCD's root hub code, not > from usbcore ... which is funky enough already! David, What's your suggestions here? I really do not know how to hook the HNP enable to another place... Thanks, Alek -- 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