Hi Sebastian, On Tue, Jul 23, 2013 at 12:31 PM, Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx> wrote: > > On 07/23/2013 07:28 PM, Bin Liu wrote: > > Hi, > > Hi, > > > > > On Mon, Jul 22, 2013 at 1:10 PM, Sebastian Andrzej Siewior > > <bigeasy@xxxxxxxxxxxxx <mailto:bigeasy@xxxxxxxxxxxxx>> wrote: > > > > This patch adds the MUSB_DEVCTL_SESSION back after it has been removed. > > If it is missing then the host session is not recognized. This bit is > > added initially added in musb_start() and removed after the first device > > disconnect. > > > > AFAIK, after the device is disconnected, the OTG state machine will go > > back to B_IDLE/A_IDLE state. SESSION is not needed in this case. > > > Okay. > > > In OTG mode, when no device is plugged, the ID pin is floating, you can > > never hold the host session in this case, even set the SESSION bit. The > > SESSION bit will be cleared by the controller after 100ms. > > In my testing the bit remains set. How is the bit supposed to come back > after I connect a host device? The bit remains even when no device is plugged and ID ping is float? what platform do you use to test it? 'a host device'? you meant a usb device? By the otg specs, the session will not automatically start. The user/app has to issue the command, either by SRP or HNP, or something else. In TI 3.2 kernel, there is workaround in otg_timer() to _toggle_ the SESSION bit to detect if ID pin is grounded, which means a USB device is connected. Regards, -Bin. > > > Regards, > > -Bin. > > > > Sebastian -- 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