On 10/23/2017 09:03 AM, Minas Harutyunyan wrote: > On 10/19/2017 5:35 PM, Dinh Nguyen wrote: >> >> >> On 10/19/2017 06:55 AM, Grigor Tovmasyan wrote: >>> On 10/18/2017 6:07 PM, Marek Vasut wrote: >>>> On 10/18/2017 04:05 PM, Dinh Nguyen wrote: >>>>> Hi, >>>>> >>>>> I'm trying to bringup the DWC2 USB IP version 330A on a new Stratix10 >>>>> SoC and have encountered this error in both Linux and U-Boot: >>>>> >>>>> U-Boot(version v2017.09) >>>>> >>>>> # usb start >>>>> starting USB... >>>>> USB0: Core Release: 3.30a >>>>> dwc_otg_core_host_init: Timeout! >>>>> dwc_otg_core_host_init: Timeout! >>>>> >>>>> Linux(kernel v4.13) >>>>> >>>>> [ 1.299891] dwc2 ffb00000.usb: DWC OTG Controller >>>>> [ 1.304628] dwc2 ffb00000.usb: new USB bus registered, assigned bus >>>>> number 1 >>>>> [ 1.311698] dwc2 ffb00000.usb: irq 13, io mem 0xffb00000 >>>>> [ 1.318309] dwc2 ffb00000.usb: Unable to clear enable on channel 0 >>>>> [ 1.325749] dwc2 ffb00000.usb: Unable to clear enable on channel 1 >>>>> [ 1.333187] dwc2 ffb00000.usb: Unable to clear enable on channel 2 >>>>> [ 1.340626] dwc2 ffb00000.usb: Unable to clear enable on channel 3 >>>>> [ 1.348064] dwc2 ffb00000.usb: Unable to clear enable on channel 4 >>>>> [ 1.355503] dwc2 ffb00000.usb: Unable to clear enable on channel 5 >>>>> [ 1.362941] dwc2 ffb00000.usb: Unable to clear enable on channel 6 >>>>> [ 1.370379] dwc2 ffb00000.usb: Unable to clear enable on channel 7 >>>>> [ 1.377818] dwc2 ffb00000.usb: Unable to clear enable on channel 8 >>>>> [ 1.385256] dwc2 ffb00000.usb: Unable to clear enable on channel 9 >>>>> [ 1.392694] dwc2 ffb00000.usb: Unable to clear enable on channel 10 >>>>> [ 1.400218] dwc2 ffb00000.usb: Unable to clear enable on channel 11 >>>>> [ 1.407743] dwc2 ffb00000.usb: Unable to clear enable on channel 12 >>>>> [ 1.415269] dwc2 ffb00000.usb: Unable to clear enable on channel 13 >>>>> [ 1.422794] dwc2 ffb00000.usb: Unable to clear enable on channel 14 >>>>> >>>>> Just wondering if anyone might have an idea on what could be causing >>>>> this error? >>>> >>>> Maybe some clock are not enabled ? >>>> >>> >>> Hi , >>> >>> Are you following board/hisilicon/hikey/README file instructions when >>> using U-Boot? Specially paragraph FLASHING point 4, where discussed >>> "dwc_otg_core_host_init: Timeout!" message. >>> >> >> I saw that, but I don't know how that applies to a Stratix10 platform? >> >> Dinh >> >> > Hi, > > Did you able to resolve this issue? If not, please provide verbose debug > log and register dump. > I double-checked the clocks and it looks like all of the necessary clocks are enabled. Here are the log and register dump for U-Boot, I'll follow-up with the Linux log shortly. For U-Boot: SOCFPGA_STRATIX10 # usb start starting USB... USB0: Core Release: 3.30a dwc_otg_core_host_init: Timeout (reg=00000000ffb00500 mask=80000000 wait_set=0) dwc_otg_core_host_init: Timeout! dwc_otg_core_host_init: Timeout (reg=00000000ffb00520 mask=80000000 wait_set=0) dwc_otg_core_host_init: Timeout! dwc_otg_core_host_init: Timeout (reg=00000000ffb00540 mask=80000000 wait_set=0) dwc_otg_core_host_init: Timeout! dwc_otg_core_host_init: Timeout (reg=00000000ffb00560 mask=80000000 wait_set=0) dwc_otg_core_host_init: Timeout! dwc_otg_core_host_init: Timeout (reg=00000000ffb00580 mask=80000000 wait_set=0) dwc_otg_core_host_init: Timeout! dwc_otg_core_host_init: Timeout (reg=00000000ffb005a0 mask=80000000 wait_set=0) dwc_otg_core_host_init: Timeout! dwc_otg_core_host_init: Timeout (reg=00000000ffb005c0 mask=80000000 wait_set=0) dwc_otg_core_host_init: Timeout! dwc_otg_core_host_init: Timeout (reg=00000000ffb005e0 mask=80000000 wait_set=0) dwc_otg_core_host_init: Timeout! dwc_otg_core_host_init: Timeout (reg=00000000ffb00600 mask=80000000 wait_set=0) dwc_otg_core_host_init: Timeout! dwc_otg_core_host_init: Timeout (reg=00000000ffb00620 mask=80000000 wait_set=0) dwc_otg_core_host_init: Timeout! dwc_otg_core_host_init: Timeout (reg=00000000ffb00640 mask=80000000 wait_set=0) dwc_otg_core_host_init: Timeout! dwc_otg_core_host_init: Timeout (reg=00000000ffb00660 mask=80000000 wait_set=0) dwc_otg_core_host_init: Timeout! dwc_otg_core_host_init: Timeout (reg=00000000ffb00680 mask=80000000 wait_set=0) dwc_otg_core_host_init: Timeout! dwc_otg_core_host_init: Timeout (reg=00000000ffb006a0 mask=80000000 wait_set=0) dwc_otg_core_host_init: Timeout! dwc_otg_core_host_init: Timeout (reg=00000000ffb006c0 mask=80000000 wait_set=0) dwc_otg_core_host_init: Timeout! scanning bus 0 for devices... dwc2_submit_control_msg: dev='usb@ffb00000', udev=000000003fa50380, udev->dev='usb@ffb00000', portnr=0 dwc2_submit_control_msg: dev='usb@ffb00000', udev=000000003fa50380, udev->dev='usb@ffb00000', portnr=0 dwc2_submit_control_msg: dev='usb@ffb00000', udev=000000003fa50380, udev->dev='usb@ffb00000', portnr=0 dwc2_submit_control_msg: dev='usb@ffb00000', udev=000000003fa50380, udev->dev='usb@ffb00000', portnr=0 dwc2_submit_control_msg: dev='usb@ffb00000', udev=000000003fa50380, udev->dev='usb@ffb00000', portnr=0 dwc2_submit_control_msg: dev='usb@ffb00000', udev=000000003fa50380, udev->dev='usb@ffb00000', portnr=0 dwc2_submit_control_msg: dev='usb@ffb00000', udev=000000003fa50380, udev->dev='usb@ffb00000', portnr=0 dwc2_submit_control_msg: dev='usb@ffb00000', udev=000000003fa50380, udev->dev='usb@ffb00000', portnr=0 dwc2_submit_control_msg: dev='usb@ffb00000', udev=000000003fa55080, udev->dev='usb_hub', portnr=0 dwc2_submit_control_msg: dev='usb@ffb00000', udev=000000003fa55080, udev->dev='usb_hub', portnr=0 dwc2_submit_control_msg: dev='usb@ffb00000', udev=000000003fa55080, udev->dev='usb_hub', portnr=0 dwc2_submit_control_msg: dev='usb@ffb00000', udev=000000003fa55080, udev->dev='usb_hub', portnr=0 dwc2_submit_control_msg: dev='usb@ffb00000', udev=000000003fa55080, udev->dev='usb_hub', portnr=0 dwc2_submit_control_msg: dev='usb@ffb00000', udev=000000003fa55080, udev->dev='usb_hub', portnr=0 dwc2_submit_control_msg: dev='usb@ffb00000', udev=000000003fa55080, udev->dev='usb_hub', portnr=0 dwc2_submit_control_msg: dev='usb@ffb00000', udev=000000003fa55080, udev->dev='usb_hub', portnr=0 dwc2_submit_control_msg: dev='usb@ffb00000', udev=000000003fa55080, udev->dev='usb_hub', portnr=0 dwc2_submit_control_msg: dev='usb@ffb00000', udev=000000003fa55080, udev->dev='usb_hub', portnr=0 dwc2_submit_control_msg: dev='usb@ffb00000', udev=000000003fa4f440, udev->dev='usb_hub', portnr=1 chunk_msg: msg: pipe 80000083 pid 3 in 0 len 8 transfer_chunk: chunk: pid 3 xfer_len 8 pkts 1 wait_for_chhltd: Timeout (reg=00000000ffb00508 mask=00000002 wait_set=1) unable to get device descriptor (error=-110) dwc2_submit_control_msg: dev='usb@ffb00000', udev=000000003fa55080, udev->dev='usb_hub', portnr=0 1 USB Device(s) found scanning usb for storage devices... 0 Storage Device(s) found SOCFPGA_STRATIX10 Before "usb start", the registers are: ffb00000: 00200000 00000000 00000000 00001410 .. ............. ffb00010: 80000000 04000021 00000000 00000000 ....!........... ffb00020: 00000000 00002000 20002000 00082000 ..... ... . . .. ffb00030: 00000000 00000000 00000000 12345678 ............xV4. ffb00040: 4f54330a 00000000 238ffc90 1f8002e8 .3TO.......#.... ffb00050: fe0f0020 00000000 00000000 1f802000 ............ .. ffb00060: 00000000 00000000 00000000 00000000 ................ ffb00070: 00000000 00000000 00000000 00000000 ................ ffb00080: 00000000 00000000 00000000 00000000 ................ ffb00090: 00000000 00000000 00000000 00000000 ................ ffb000a0: 00000000 00000000 00000000 00000000 ................ ffb000b0: 00000000 00000000 00000000 00000000 ................ ffb000c0: 00000000 00000000 00000000 00000000 ................ ffb000d0: 00000000 00000000 00000000 00000000 ................ ffb000e0: 00000000 00000000 00000000 00000000 ................ ffb000f0: 00000000 00000000 00000000 00000000 ................ ffb00100: 20004000 00000000 00000000 00000000 .@. ............ ffb00110: 00000000 00000000 00000000 00000000 ................ ffb00120: 00000000 00000000 00000000 00000000 ................ ffb00130: 00000000 00000000 00000000 00000000 ................ ffb00140: 00000000 00000000 00000000 00000000 ................ ffb00150: 00000000 00000000 00000000 00000000 ................ ffb00160: 00000000 00000000 00000000 00000000 ................ ffb00170: 00000000 00000000 00000000 00000000 ................ ffb00180: 00000000 00000000 00000000 00000000 ................ ffb00500: 00000000 00000000 00000000 00000000 ................ ffb00510: 00000000 ffffff7f 00000000 ffffff7f ................ ffb00520: 00000000 00000000 00000000 00000000 ................ ffb00530: 00000000 ffffff7f 00002000 ffffff7f ......... ...... ffb00540: 00000000 00000000 00000000 00000000 ................ ffb00550: 00000000 ffffff7f 00002000 ffffff7f ......... ...... ffb00560: 00000000 00000000 00000000 00000000 ................ ffb00570: 00000000 ffffff7f 00002000 ffffff7f ......... ...... ffb00580: 00000000 00000000 00000000 00000000 ................ ffb00590: 00000000 ffffff7f 00002000 ffffff7f ......... ...... ffb005a0: 00000000 00000000 00000000 00000000 ................ ffb005b0: 00000000 ffffff7f 00002000 ffffff7f ......... ...... ffb005c0: 00000000 00000000 00000000 00000000 ................ ffb005d0: 00000000 ffffff7f 00002000 ffffff7f ......... ...... ffb005e0: 00000000 00000000 00000000 00000000 ................ ffb005f0: 00000000 ffffff7f 00002000 ffffff7f ......... ...... ffb00600: 00000000 00000000 00000000 00000000 ................ ffb00610: 00000000 ffffff7f 00002000 ffffff7f ......... ...... ffb00620: 00000000 00000000 00000000 00000000 ................ ffb00630: 00000000 ffffff7f 00002000 ffffff7f ......... ...... ffb00640: 00000000 00000000 00000000 00000000 ................ ffb00650: 00000000 ffffff7f 00002000 ffffff7f ......... ...... ffb00660: 00000000 00000000 00000000 00000000 ................ ffb00670: 00000000 ffffff7f 00002000 ffffff7f ......... ...... ffb00680: 00000000 00000000 00000000 00000000 ................ After "usb start": # md.l 0xffb00000 64 ffb00000: 002e0000 00080000 00000026 01301710 ........&.....0. ffb00010: 80000000 3500002d 00000000 ffffff7f ....-..5........ ffb00020: ffffff7f 00000214 01000214 47080100 ...............G ffb00030: 00000000 00000000 00000000 12345678 ............xV4. ffb00040: 4f54330a 00000000 238ffc90 1f8002e8 .3TO.......#.... ffb00050: fe0f0020 00000000 00000000 1f802000 ............ .. ffb00060: 00000000 00000000 00000000 00000000 ................ ffb00070: 00000000 00000000 00000000 00000000 ................ ffb00080: 00000000 00000000 00000000 00000000 ................ ffb00090: 00000000 00000000 00000000 00000000 ................ ffb000a0: 00000000 00000000 00000000 00000000 ................ ffb000b0: 00000000 00000000 00000000 00000000 ................ ffb000c0: 00000000 00000000 00000000 00000000 ................ ffb000d0: 00000000 00000000 00000000 00000000 ................ ffb000e0: 00000000 00000000 00000000 00000000 ................ ffb000f0: 00000000 00000000 00000000 00000000 ................ ffb00100: 02000314 00000000 00000000 00000000 ................ ffb00110: 00000000 00000000 00000000 00000000 ................ ffb00120: 00000000 00000000 00000000 00000000 ................ ffb00130: 00000000 00000000 00000000 00000000 ................ ffb00140: 00000000 00000000 00000000 00000000 ................ ffb00150: 00000000 00000000 00000000 00000000 ................ ffb00160: 00000000 00000000 00000000 00000000 ................ ffb00170: 00000000 00000000 00000000 00000000 ................ ffb00180: 00000000 00000000 00000000 00000000 ................ # md.l 0xffb00500 64 ffb00500: c0100040 00000000 00000000 00000000 @............... ffb00510: 60080008 ffffff7f 00000000 ffffff7f ...`............ ffb00520: c0000000 00000000 00000000 00000000 ................ ffb00530: 00000000 ffffff7f 00000100 ffffff7f ................ ffb00540: c0000000 00000000 00000000 00000000 ................ ffb00550: 00000000 ffffff7f 00000100 ffffff7f ................ ffb00560: c0000000 00000000 00000000 00000000 ................ ffb00570: 00000000 ffffff7f 00000100 ffffff7f ................ ffb00580: c0000000 00000000 00000000 00000000 ................ ffb00590: 00000000 ffffff7f 00000100 ffffff7f ................ ffb005a0: c0000000 00000000 00000000 00000000 ................ ffb005b0: 00000000 ffffff7f 00000100 ffffff7f ................ ffb005c0: c0000000 00000000 00000000 00000000 ................ ffb005d0: 00000000 ffffff7f 00000100 ffffff7f ................ ffb005e0: c0000000 00000000 00000000 00000000 ................ ffb005f0: 00000000 ffffff7f 00000100 ffffff7f ................ ffb00600: c0000000 00000000 00000000 00000000 ................ ffb00610: 00000000 ffffff7f 00000100 ffffff7f ................ ffb00620: c0000000 00000000 00000000 00000000 ................ ffb00630: 00000000 ffffff7f 00000100 ffffff7f ................ ffb00640: c0000000 00000000 00000000 00000000 ................ ffb00650: 00000000 ffffff7f 00000100 ffffff7f ................ ffb00660: c0000000 00000000 00000000 00000000 ................ ffb00670: 00000000 ffffff7f 00000100 ffffff7f ................ ffb00680: c0000000 00000000 00000000 00000000 ................ I'll follow up the the Linux debug output shortly. Dinh -- 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