On 10/24/2017 12:41 AM, John Stultz wrote: > On Mon, Oct 23, 2017 at 2:19 AM, Minas Harutyunyan > <Minas.Harutyunyan@xxxxxxxxxxxx> wrote: >> Could you please verify on your setup follow patches: >> 1. Vardan's patch. >> 2. Patch for TOUTCAL&USBTRDTIM programming (new version see below). >> 4. Your patch 2/3 to avoid "Mode Mismatch" interrupts. >> 5. Your patch 3/3 to set udc state to "not attached". >> 6. Your patch 1/3, but remove dwc2_hsotg_core_init_disconnected() >> function call from Host starting brnch, keep *only* >> dwc2_hsotg_disconnect() to change UDC state to "not attached". > > So yes, this set does seem to work ok for me. Though neither Vardan's > patch or the TOUTCAL/USBTRDTIM patch seem to have much effect either > way (I need to do more testing just to be sure, but for the use cases > I've had trouble with they don't seem to do much). > > I'm happy to rework my earlier patch #1/3 to remove > dwc2_hsotg_core_init_disconnected() and resend. > > thanks > -john > Hi John Stultz, 1. Vardan's patch required for cases when core switching from host mode to device mode. On host disconnect hsotg->lx_state set to DWC2_L2 as result dwc2_hsotg_enqueue_setup() failed because enqueuing should be done in DWC2_L0 state. This patch set lx_state to DWC2_L0 before enqueuing setup transfer. 2. TOUTCAL&USBTRDTIM patch adding missing USBCFG programming in host mode. These fields even if was programmed in device mode (see function dwc2_hsotg_core_init_disconnected()) will be resetting to POR values after core soft reset applied. Programming of these fields to correct values allow fix issues with lot of transaction errors due to timeouts and turnarrounds on USB bus. Previously on TOUTCAL patch you wrote: "So while using this patch and the earlier one from Vardan, I don't see the "Transaction Error" and " ChHltd set, but reason is unknown" messages". Thanks, Minas -- 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