Re: VL805 USB 3.0 does not see connected devices (only on x86_64) (x86 is ok)

2017-01-14 Thread c400
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
> 

Re: VL805 USB 3.0 does not see connected devices (only on x86_64) (x86 is ok)

2017-01-14 Thread Alan Stern
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)

2017-01-14 Thread 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 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 

[PATCH] usb: dwc3: ep0: Fix the possible missed request for handling delay STATUS phase

2017-01-14 Thread Baolin Wang
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(>pending_list)) {
+   dwc->delayed_status = false;
+   usb_gadget_set_state(>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