Re: [PATCH v6 01/12] usb: hcd: Initialize hcd->flags to 0

From: Alan Stern
Date: Mon Apr 18 2016 - 10:11:35 EST


On Mon, 18 Apr 2016, Peter Chen wrote:

> On Wed, Apr 06, 2016 at 09:32:22AM +0300, Roger Quadros wrote:
> > On 06/04/16 09:09, Felipe Balbi wrote:
> > >
> > > Hi,
> > >
> > > Roger Quadros <rogerq@xxxxxx> writes:
> > >> diff --git a/drivers/usb/core/hcd.c b/drivers/usb/core/hcd.c
> > >> index 2ca2cef..6b1930d 100644
> > >> --- a/drivers/usb/core/hcd.c
> > >> +++ b/drivers/usb/core/hcd.c
> > >> @@ -2706,6 +2706,7 @@ int usb_add_hcd(struct usb_hcd *hcd,
> > >> int retval;
> > >> struct usb_device *rhdev;
> > >>
> > >> + hcd->flags = 0;
> > >
> > > seems like this would make more sense in usb_del_hcd() instead.
> > >
> >
> > OK, I'll move it there.
> >
>
> It depends on Alan's comments, whether only usb_add_hcd/usb_del_hcd
> pair can be called repeat. If Alan acks it, I have no idea for it.

Most of the host controller drivers were not written with this in mind,
but I think it would be a good thing to allow. It would speed up the
host/device role switches.

This might mean we need to fix up several drivers to make them work
correctly in an OTG environment. It should be possible to do this. Is
there any particular reason why it would be difficult for Chipidea?

Alan Stern