[Resending because the message was rejected the first time, probably due to a bad Subject: line] On Tue, 14 Apr 2009, Yong Yao wrote: > Hi, Alan, > > Actually we encountered this case of OTG: > > When B device state is changed from OTG_STATE_B_WAIT_ACON to > OTG_STATE_B_HOST, B device will call the function usb_bus_start_enum > to reset the root hub (call the hub_resume). In this case, the > portstatus is equal to 0x17 and udev->state is USB_STATE_NOTATTACHED, > so that usb port is disabled and will cause the port disconnected. At > that time, the OTG state machine will be changed from > OTG_STATE_B_HOST to OTG_STATE_B_PERIPHERAL. So HNP will fail. I don't understand the details, and I have always foung OTG confusing. Anyway, if you want to make this case work then you should add extra OTG- and HNP-specific code to the test, without changing its behavior in the non-OTG non-HNP case. 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