Re: VL805 USB 3.0 does not see connected devices (only on x86_64) (x86 is ok)
tested this controller on the this and other PC with linux x86_32 and windows, everything works ok btw i have 2 similar controllers and the same problems 2017-01-14 16:53 GMT+03:00 c400 : > a262eb551300 320471228 S Ci:4:001:0 s a3 00 0001 0004 4 < > a262eb551300 320471237 C Ci:4:001:0 0 4 = 03020100 > a262eb551300 320471240 S Co:4:001:0 s 23 01 0010 0001 0 > a262eb551300 320471242 C Co:4:001:0 0 0 > a262eb551300 320471244 S Ci:4:001:0 s a3 00 0002 0004 4 < > a262eb551300 320471245 C Ci:4:001:0 0 4 = a002 > a262eb551300 320471246 S Ci:4:001:0 s a3 00 0003 0004 4 < > a262eb551300 320471247 C Ci:4:001:0 0 4 = a002 > a262eb551300 320471248 S Ci:4:001:0 s a3 00 0004 0004 4 < > a262eb551300 320471250 C Ci:4:001:0 0 4 = a002 > a2633302f840 320576056 S Ii:4:001:1 -115:2048 4 < > a262eb5513c0 320576079 S Ci:4:001:0 s a3 00 0001 0004 4 < > a262eb5513c0 320576084 C Ci:4:001:0 0 4 = 0302 > a262eb5513c0 320576147 S Ci:4:001:0 s a3 00 0001 0004 4 < > a262eb5513c0 320576152 C Ci:4:001:0 0 4 = 0302 > a262eb5513c0 320576154 S Co:4:001:0 s 23 03 0004 0001 0 > a262eb5513c0 320576157 C Co:4:001:0 0 0 > a262eb5513c0 320636053 S Ci:4:001:0 s a3 00 0001 0004 4 < > a262eb5513c0 320636071 C Ci:4:001:0 0 4 = 03021000 > a262eb5513c0 320636074 S Co:4:001:0 s 23 01 0014 0001 0 > a262eb5513c0 320636076 C Co:4:001:0 0 0 > a262eb5513c0 320636077 S Co:4:001:0 s 23 01 001d 0001 0 > a262eb5513c0 320636079 C Co:4:001:0 0 0 > a262eb5513c0 320636080 S Co:4:001:0 s 23 01 0019 0001 0 > a262eb5513c0 320636082 C Co:4:001:0 0 0 > a262eb5513c0 320636083 S Co:4:001:0 s 23 01 0010 0001 0 > a262eb5513c0 320636085 C Co:4:001:0 0 0 > a262eb5513c0 320636085 S Ci:4:001:0 s a3 00 0001 0004 4 < > a262eb5513c0 320636087 C Ci:4:001:0 0 4 = 0302 > a262eb5513c0 320716069 S Ci:4:002:0 s 80 06 0100 0008 8 < > a262eb5513c0 320716157 C Ci:4:002:0 0 8 = 12010003 0009 > a262eb5513c0 320716178 S Ci:4:002:0 s 80 06 0100 0012 18 < > a262eb5513c0 320716228 C Ci:4:002:0 0 18 = 12010003 0009 > 51095616 10010102 0301 > a262eb5513c0 320716250 S Ci:4:002:0 s 80 06 0f00 0005 5 < > a262eb5513c0 320716304 C Ci:4:002:0 0 5 = 050f1600 02 > a262eb5513c0 320716324 S Ci:4:002:0 s 80 06 0f00 0016 22 < > a262eb5513c0 320716381 C Ci:4:002:0 0 22 = 050f1600 02071002 > 0200 0a100300 0e00020a ff07 > a262eb5513c0 320716405 S Ci:4:002:0 s 80 06 0200 0009 9 < > a262eb5513c0 320716455 C Ci:4:002:0 0 9 = 09022c00 01010080 70 > a262eb5513c0 320716476 S Ci:4:002:0 s 80 06 0200 002c 44 < > a262eb5513c0 320716532 C Ci:4:002:0 0 44 = 09022c00 01010080 > 70090400 00020806 5705 81020004 0006300e 0007 > a262eb551480 320716555 S Ci:4:002:0 s 80 06 0300 00ff 255 < > a262eb551480 320716621 C Ci:4:002:0 0 4 = 04030904 > a262eb551480 320716630 S Ci:4:002:0 s 80 06 0302 0409 00ff 255 < > a262eb551480 320716669 C Ci:4:002:0 0 30 = 1e034400 54002000 > 55006c00 74006900 6d006100 74006500 20004700 3200 > a262eb551480 320716693 S Ci:4:002:0 s 80 06 0301 0409 00ff 255 < > a262eb551480 320716767 C Ci:4:002:0 0 18 = 12034b00 69006e00 > 67007300 74006f00 6e00 > a262eb551480 320716791 S Ci:4:002:0 s 80 06 0303 0409 00ff 255 < > a262eb551480 320716826 C Ci:4:002:0 0 50 = 32033000 30003100 > 38004600 33004400 39003700 31003600 33004200 42003700 > a262eb551540 320717121 S Co:4:002:0 s 00 09 0001 0 > a262eb551540 320717156 C Co:4:002:0 0 0 > a262eb5516c0 321724063 S Ci:4:002:0 s a1 fe 0001 1 < > a262eb5516c0 321724113 C Ci:4:002:0 0 1 = 00 > a262eb5516c0 321724426 S Bo:4:002:2 -115 31 = 55534243 0100 > 2400 8612 0024 00 > a262eb5516c0 321724447 C Bo:4:002:2 0 31 > > a262eb551cc0 321724453 S Bi:4:002:1 -115 36 < > a262eb551cc0 321724488 C Bi:4:002:1 0 36 = 0081 1f00 > 4b696e67 73746f6e 44542055 6c74696d 61746520 47322020 > a262eb5516c0 321724496 S Bi:4:002:1 -115 13 < > a262eb5516c0 321724534 C Bi:4:002:1 0 13 = 55534253 0100 00 > a262eb5516c0 321724682 S Bo:4:002:2 -115 31 = 55534243 0200 > 0600 00 > a262eb5516c0 321724792 C Bo:4:002:2 0 31 > > a262eb5516c0 321724862 S Bi:4:002:1 -115 13 < > a262eb5516c0 321724907 C Bi:4:002:1 0 13 = 55534253 0200 00 > a262eb5516c0 321724991 S Bo:4:002:2 -115 31 = 55534243 0300 > 0800 8a25 00 > a262eb5516c0 321725003 C Bo:4:002:2 0 31 > > a26333ac69c0 321725011 S Bi:4:002:1 -115 8 < > a26333ac69c0 321725050 C Bi:4:002:1 0 8 = 01dd7fff 0200 > a262eb5516c0 321725079 S Bi:4:002:1 -115 13 < > a262eb5516c0 321725092 C Bi:4:002:1 0 13 = 55534253 0300 00 > a262eb5516c0 321725154
Re: VL805 USB 3.0 does not see connected devices (only on x86_64) (x86 is ok)
On Sat, 14 Jan 2017, c400 wrote: ... > a262eb5516c0 321863050 S Bo:4:002:2 -115 31 = 55534243 6e00 > 0010 8a28 0008 1008 00 > a262eb5516c0 321863062 C Bo:4:002:2 0 31 > > a26333a3d3c0 321863073 S Bi:4:002:1 -115 4096 < > a26333a3d3c0 321863103 C Bi:4:002:1 0 4096 = > > a262eb5516c0 321863127 S Bi:4:002:1 -115 13 < > a262eb5516c0 321863143 C Bi:4:002:1 0 13 = 55534253 6e00 00 At this point everything was working. A 4096-byte read just completed normally. > a262eb5516c0 321863190 S Bo:4:002:2 -115 31 = 55534243 6f00 > 0070 8a28 0008 4038 00 > a262eb5516c0 321863202 C Bo:4:002:2 0 31 > > a2633391ecc0 321863211 S Bi:4:002:1 -115 28672 < > a2633391ecc0 353264495 C Bi:4:002:1 -104 1024 = > This shows a 28-KB read that failed after the first 4 KB had been transferred. No further data was received and the transfer was aborted after about 30 seconds. > a2633391ecc0 353264543 S Ci:4:001:0 s a3 00 0001 0004 4 < > a2633391ecc0 353264550 C Ci:4:001:0 0 4 = 0302 > a2633312eb40 353264658 S Co:4:001:0 s 23 03 0004 0001 0 > a2633312eb40 353264665 C Co:4:001:0 0 0 > a26336cf3600 353324060 S Ci:4:001:0 s a3 00 0001 0004 4 < > a26336cf3600 353324078 C Ci:4:001:0 0 4 = 03021000 > a2633828d900 353324135 S Co:4:001:0 s 23 01 0014 0001 0 > a2633828d900 353324149 C Co:4:001:0 0 0 > a263371bc540 353324271 S Co:4:001:0 s 23 01 001d 0001 0 > a263371bc540 353324278 C Co:4:001:0 0 0 > a2633256c240 353324353 S Co:4:001:0 s 23 01 0019 0001 0 > a2633256c240 353324366 C Co:4:001:0 0 0 > a262ee14a600 353324421 S Co:4:001:0 s 23 01 0010 0001 0 > a262ee14a600 353324427 C Co:4:001:0 0 0 > a263325d80c0 353324527 S Ci:4:001:0 s a3 00 0001 0004 4 < > a263325d80c0 353324533 C Ci:4:001:0 0 4 = 0302 > a262ee1da0c0 355788061 S Ci:4:002:0 s 80 06 0100 0008 8 < This shows the start of a reset. Apparently the reset did not finish normally. > Here it is! Launched USBMON and inserted USB3 flash into buggy > controler. Then stoped monitoring. Obviously there is some sort of communications problem. Either the device stopped transferring data or else the xHCI host controller stopped receiving it. From the usbmon trace, there's no way to tell which. However, if the device works okay with an EHCI host controller or on another computer, that would indicate the problem is in the xHCI controller. Maybe Mathias can offer some advice. Alan Stern > 2017-01-14 0:01 GMT+03:00 Alan Stern : > > On Fri, 13 Jan 2017, c400 wrote: > > > >> kernel 4.9.3 > >> still not working > >> latest log: > >> > >> [ 196.984424] sd 7:0:0:0: [sdc] 31293440 512-byte logical blocks: > >> (16.0 GB/14.9 GiB) > >> [ 196.984564] sd 7:0:0:0: [sdc] Write Protect is off > >> [ 196.984566] sd 7:0:0:0: [sdc] Mode Sense: 23 00 00 00 > >> [ 196.984689] sd 7:0:0:0: [sdc] No Caching mode page found > >> [ 196.984690] sd 7:0:0:0: [sdc] Assuming drive cache: write through > >> [ 196.984696] device: '8:32': device_add > >> [ 196.984714] PM: Adding info for No Bus:8:32 > >> [ 196.984727] device: 'sdc': device_add > >> [ 196.984747] PM: Adding info for No Bus:sdc > >> [ 197.085658] sdc: sdc1 > >> [ 197.085664] device: 'sdc1': device_add > >> [ 197.085680] PM: Adding info for No Bus:sdc1 > >> [ 197.086929] sd 7:0:0:0: [sdc] Attached SCSI removable disk > >> [ 230.955006] FAT-fs (sdc1): Volume was not properly unmounted. Some > >> data may be corrupt. Please run fsck. > >> [ 234.422942] DMAR: DRHD: handling fault status reg 2 > >> [ 234.422946] DMAR: [DMA Read] Request device [02:00.0] fault addr > >> fffbb000 [fault reason 06] PTE Read access is not set > >> [ 234.422950] xhci_hcd :02:00.0: WARNING: Host System Error > >> [ 234.446078] xhci_hcd :02:00.0: Host not halted after 16000 > >> microseconds. > >> [ 270.447035] xhci_hcd :02:00.0: xHCI host not responding to stop > >> endpoint command. > >> [ 270.447040] xhci_hcd :02:00.0: Assuming host is dying, halting host. > >> [ 270.470143] xhci_hcd :02:00.0: Host not halted after 16000 > >> microseconds. > >> [ 270.470153] xhci_hcd :02:00.0: Non-responsive xHCI host is not > >> halting. > >> [ 270.470154] xhci_hcd :02:00.0: Completing active URBs anyway. > >> [ 270.470161] xhci_hcd :02:00.0: HC died; cleaning up -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: VL805 USB 3.0 does not see connected devices (only on x86_64) (x86 is ok)
a262eb551300 320471228 S Ci:4:001:0 s a3 00 0001 0004 4 < a262eb551300 320471237 C Ci:4:001:0 0 4 = 03020100 a262eb551300 320471240 S Co:4:001:0 s 23 01 0010 0001 0 a262eb551300 320471242 C Co:4:001:0 0 0 a262eb551300 320471244 S Ci:4:001:0 s a3 00 0002 0004 4 < a262eb551300 320471245 C Ci:4:001:0 0 4 = a002 a262eb551300 320471246 S Ci:4:001:0 s a3 00 0003 0004 4 < a262eb551300 320471247 C Ci:4:001:0 0 4 = a002 a262eb551300 320471248 S Ci:4:001:0 s a3 00 0004 0004 4 < a262eb551300 320471250 C Ci:4:001:0 0 4 = a002 a2633302f840 320576056 S Ii:4:001:1 -115:2048 4 < a262eb5513c0 320576079 S Ci:4:001:0 s a3 00 0001 0004 4 < a262eb5513c0 320576084 C Ci:4:001:0 0 4 = 0302 a262eb5513c0 320576147 S Ci:4:001:0 s a3 00 0001 0004 4 < a262eb5513c0 320576152 C Ci:4:001:0 0 4 = 0302 a262eb5513c0 320576154 S Co:4:001:0 s 23 03 0004 0001 0 a262eb5513c0 320576157 C Co:4:001:0 0 0 a262eb5513c0 320636053 S Ci:4:001:0 s a3 00 0001 0004 4 < a262eb5513c0 320636071 C Ci:4:001:0 0 4 = 03021000 a262eb5513c0 320636074 S Co:4:001:0 s 23 01 0014 0001 0 a262eb5513c0 320636076 C Co:4:001:0 0 0 a262eb5513c0 320636077 S Co:4:001:0 s 23 01 001d 0001 0 a262eb5513c0 320636079 C Co:4:001:0 0 0 a262eb5513c0 320636080 S Co:4:001:0 s 23 01 0019 0001 0 a262eb5513c0 320636082 C Co:4:001:0 0 0 a262eb5513c0 320636083 S Co:4:001:0 s 23 01 0010 0001 0 a262eb5513c0 320636085 C Co:4:001:0 0 0 a262eb5513c0 320636085 S Ci:4:001:0 s a3 00 0001 0004 4 < a262eb5513c0 320636087 C Ci:4:001:0 0 4 = 0302 a262eb5513c0 320716069 S Ci:4:002:0 s 80 06 0100 0008 8 < a262eb5513c0 320716157 C Ci:4:002:0 0 8 = 12010003 0009 a262eb5513c0 320716178 S Ci:4:002:0 s 80 06 0100 0012 18 < a262eb5513c0 320716228 C Ci:4:002:0 0 18 = 12010003 0009 51095616 10010102 0301 a262eb5513c0 320716250 S Ci:4:002:0 s 80 06 0f00 0005 5 < a262eb5513c0 320716304 C Ci:4:002:0 0 5 = 050f1600 02 a262eb5513c0 320716324 S Ci:4:002:0 s 80 06 0f00 0016 22 < a262eb5513c0 320716381 C Ci:4:002:0 0 22 = 050f1600 02071002 0200 0a100300 0e00020a ff07 a262eb5513c0 320716405 S Ci:4:002:0 s 80 06 0200 0009 9 < a262eb5513c0 320716455 C Ci:4:002:0 0 9 = 09022c00 01010080 70 a262eb5513c0 320716476 S Ci:4:002:0 s 80 06 0200 002c 44 < a262eb5513c0 320716532 C Ci:4:002:0 0 44 = 09022c00 01010080 70090400 00020806 5705 81020004 0006300e 0007 a262eb551480 320716555 S Ci:4:002:0 s 80 06 0300 00ff 255 < a262eb551480 320716621 C Ci:4:002:0 0 4 = 04030904 a262eb551480 320716630 S Ci:4:002:0 s 80 06 0302 0409 00ff 255 < a262eb551480 320716669 C Ci:4:002:0 0 30 = 1e034400 54002000 55006c00 74006900 6d006100 74006500 20004700 3200 a262eb551480 320716693 S Ci:4:002:0 s 80 06 0301 0409 00ff 255 < a262eb551480 320716767 C Ci:4:002:0 0 18 = 12034b00 69006e00 67007300 74006f00 6e00 a262eb551480 320716791 S Ci:4:002:0 s 80 06 0303 0409 00ff 255 < a262eb551480 320716826 C Ci:4:002:0 0 50 = 32033000 30003100 38004600 33004400 39003700 31003600 33004200 42003700 a262eb551540 320717121 S Co:4:002:0 s 00 09 0001 0 a262eb551540 320717156 C Co:4:002:0 0 0 a262eb5516c0 321724063 S Ci:4:002:0 s a1 fe 0001 1 < a262eb5516c0 321724113 C Ci:4:002:0 0 1 = 00 a262eb5516c0 321724426 S Bo:4:002:2 -115 31 = 55534243 0100 2400 8612 0024 00 a262eb5516c0 321724447 C Bo:4:002:2 0 31 > a262eb551cc0 321724453 S Bi:4:002:1 -115 36 < a262eb551cc0 321724488 C Bi:4:002:1 0 36 = 0081 1f00 4b696e67 73746f6e 44542055 6c74696d 61746520 47322020 a262eb5516c0 321724496 S Bi:4:002:1 -115 13 < a262eb5516c0 321724534 C Bi:4:002:1 0 13 = 55534253 0100 00 a262eb5516c0 321724682 S Bo:4:002:2 -115 31 = 55534243 0200 0600 00 a262eb5516c0 321724792 C Bo:4:002:2 0 31 > a262eb5516c0 321724862 S Bi:4:002:1 -115 13 < a262eb5516c0 321724907 C Bi:4:002:1 0 13 = 55534253 0200 00 a262eb5516c0 321724991 S Bo:4:002:2 -115 31 = 55534243 0300 0800 8a25 00 a262eb5516c0 321725003 C Bo:4:002:2 0 31 > a26333ac69c0 321725011 S Bi:4:002:1 -115 8 < a26333ac69c0 321725050 C Bi:4:002:1 0 8 = 01dd7fff 0200 a262eb5516c0 321725079 S Bi:4:002:1 -115 13 < a262eb5516c0 321725092 C Bi:4:002:1 0 13 = 55534253 0300 00 a262eb5516c0 321725154 S Bo:4:002:2 -115 31 = 55534243 0400 c000 861a 003f00c0 00 a262eb5516c0 321725167 C Bo:4:002:2 0 31 > a26333a3df00 321725175 S Bi:4:002:1 -115 192 < a26333a3df00 321725214 C Bi:4:002:1 -121 36 = 2300 051ef000 0200 a262eb5516c0 321725262 S Bi:4:0
[PATCH] usb: dwc3: ep0: Fix the possible missed request for handling delay STATUS phase
When handing the SETUP packet by composite_setup(), we will release the dwc->lock. If we get the 'USB_GADGET_DELAYED_STATUS' result from setup function, which means we need to delay handling the STATUS phase. But during the lock release period, maybe the request for handling delay STATUS phase has been queued into list before we set 'dwc->delayed_status' flag or entering 'EP0_STATUS_PHASE' phase, then we will miss the chance to handle the STATUS phase. Thus we should check if the request for delay STATUS phase has been enqueued when entering 'EP0_STATUS_PHASE' phase in dwc3_ep0_xfernotready(), if so, we should handle it. Signed-off-by: Baolin Wang --- drivers/usb/dwc3/ep0.c | 14 ++ 1 file changed, 14 insertions(+) diff --git a/drivers/usb/dwc3/ep0.c b/drivers/usb/dwc3/ep0.c index 9bb1f85..e689ced 100644 --- a/drivers/usb/dwc3/ep0.c +++ b/drivers/usb/dwc3/ep0.c @@ -1123,7 +1123,21 @@ static void dwc3_ep0_xfernotready(struct dwc3 *dwc, dwc->ep0state = EP0_STATUS_PHASE; if (dwc->delayed_status) { + struct dwc3_ep *dep = dwc->eps[0]; + WARN_ON_ONCE(event->endpoint_number != 1); + /* +* We should handle the delay STATUS phase here if the +* request for handling delay STATUS has been queued +* into the list. +*/ + if (!list_empty(&dep->pending_list)) { + dwc->delayed_status = false; + usb_gadget_set_state(&dwc->gadget, +USB_STATE_CONFIGURED); + dwc3_ep0_do_control_status(dwc, event); + } + return; } -- 1.7.9.5 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html