On Tue, Nov 26, 2013 at 12:56:04PM -0500, Alan Stern wrote: > On Tue, 26 Nov 2013, Felipe Balbi wrote: > > > Start matching endpoints against feature flags, > > this will help us dropping the naming conventions > > currently used by the Gadget Framework. > > > > Signed-off-by: Felipe Balbi <balbi@xxxxxx> > > --- > > drivers/usb/gadget/epautoconf.c | 28 ++++++++++++++++++++++++++-- > > 1 file changed, 26 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/usb/gadget/epautoconf.c b/drivers/usb/gadget/epautoconf.c > > index feaaa7b..3fe0d42 100644 > > --- a/drivers/usb/gadget/epautoconf.c > > +++ b/drivers/usb/gadget/epautoconf.c > > @@ -62,6 +62,31 @@ ep_matches ( > > if (USB_ENDPOINT_XFER_CONTROL == type) > > return 0; > > > > + /* first check feature flags */ > > + if (ep->has_dir_in ^ usb_endpoint_dir_in(desc)) > > + return 0; > > + > > + if (ep->has_dir_out ^ usb_endpoint_dir_out(desc)) > > + return 0; > > I should have noticed this sooner (argh!). The ^ operation isn't what > you want here -- if the endpoint hardware can work in either direction > then one of those two tests is bound to fail. The code should be > structured more like the tests for the endpoint type, below. In other > words, like this: > > if (usb_endpoint_dir_in(desc)) { > if (!ep->has_dir_in) > return 0; > } else { > if (!ep->has_dir_out) > return 0; > } again, good point. /me should really review his own patches before sending them out. -- balbi
Attachment:
signature.asc
Description: Digital signature