Sebastian, On Fri, Jul 26, 2013 at 11:31 AM, Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx> wrote: > * Bin Liu | 2013-07-23 13:55:27 [-0500]: > >>Hi Sebastian, > Hi Bin, > >>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. > > I've been looking at > http://downloads.ti.com/sitara_linux/esd/AM335xSDK/latest/index_FDS.html > > and I can't find what you are talking about. My MUSB_DEVCTL doesn't > change after I connect a device and the SESSION bit is not set. Also I > remain in a_idle state. Do you have maybe a hint for me? :) In TI 3.2 kernel, the otg_timer() toggles the SESSION bit in OTG_STATE_B_IDLE state. So whenever the ID pin is grounded by connecting a device, the controller will try go into host mode. But I have no idea why your board is in a_idle not b_idle. The toggle does not handle a_idle. Do you use the AM335x GP EVM, not the smaller StarterKit EVM, right? the USB0 port on SK EVM is device only. But anyway, I have not seen any use case which uses micro-AB receptacle and requires such dynamic role switching. So I kind of think it is unnecessary to implement this feature. And it is not easy to implement it in a right way, because AM335x does not have an interrupt for ID pin grounding, so we can only try to set SESSION bit in otg_timer(), but that causes 2sec VBUS pulsing on the wire, which violates the specs. > >>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