On Wed, 28 May 2014, Pratyush Anand wrote: > On Tue, May 27, 2014 at 10:04:37PM +0800, Alan Stern wrote: > > On Sat, 24 May 2014, Pratyush Anand wrote: > > > > > OTG3 and EH Compliance Plan 1.0 talks about Super Speed OTG Verification > > > + ret = usb_control_msg(hdev, usb_rcvctrlpipe(hdev, 0), > > > + USB_REQ_GET_STATUS, USB_DIR_IN | USB_RT_PORT, 0, i, > > > + port_status, sizeof(*port_status), 1000); > > > + if (ret < 4) > > > + continue; > > > + /* handle only connection change notification */ > > > + if (!(port_status->wPortChange & USB_PORT_STAT_C_CONNECTION)) > > > + continue; > > > > There will be other bits set in the wPortChange word from time to time, > > such as USB_PORT_STAT_C_RESET and maybe USB_PORT_STAT_C_ENABLE. By not > > ever clearing them, you will cause this routine to be polled 4 times > > To clear all the change notifications, it would be wise to use > usb_clear_port_feature. But to use that what do you suggest: > > 1. Move drivers/usb/core/hub.h to include/usb/hub.h > or > 2. use extern definition of usb_clear_port_feature in lvstest.c? Neither one. Simply add your own version of usb_clear_port_feature() to lvstest.c. Don't worry about duplicating code; very few people will ever use lvstest. Alan Stern -- 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