Date: Wed, 18 May 2016 10:32:17 -0500 From: Karl Denninger <karl@denninger.net> To: freebsd-usb@freebsd.org Subject: Re: Oddity with ugen Message-ID: <af57a994-2e7a-c0d0-1d84-a333c2b2096b@denninger.net> In-Reply-To: <46bd6efe-5335-f659-0b07-5107b0e9a326@selasky.org> References: <b24c5a9a-cb18-c014-75ab-9b923853a70c@denninger.net> <46bd6efe-5335-f659-0b07-5107b0e9a326@selasky.org>
index | next in thread | previous in thread | raw e-mail
[-- Attachment #1 --]
On 5/18/2016 02:51, Hans Petter Selasky wrote:
> On 05/17/16 18:53, Karl Denninger wrote:
>> If this is a condition of some sort in the device or driver I've not
>> been able to figure out what it is, or how to force it to clear -- or to
>> prove whether it's in the device or the ugen driver.
>>
>> Any ideas?
>
> Hi,
>
> The most easy way to know this for sure, is to check the real data
> traffic using usbdump:
>
> usbdump -i usbusX -f Y -s 65536 -vvv
>
> My guess is there is some data toggle issue, and that the USB stack
> tries to clear some error using a clear-stall command, which possibly
> your device does not handle properly.
>
> --HPS
Well that doesn't help me... from what I can determine the device thinks
its sending it, well, at least usbdump thinks the device is sending it.
(bunch of ordinary stuff elided)
10:20:15.826093 usbus0.5 SUBM-INTR-EP=00000002,SPD=LOW,NFR=1,SLEN=4,IVAL=10
frame[0] WRITE 2 bytes
0000 06 43 -- -- -- -- -- -- -- -- -- -- -- -- -- -- |.C |
flags 0x11 <FORCE_SHORT_XFER|PROXY_BUFFER|0>
status 0xc0023
<OPEN|TRANSFERRING|STARTED|CAN_CANCEL_IMMED|DOING_CALLBACK|0>
10:20:15.833049 usbus0.5
DONE-INTR-EP=00000002,SPD=LOW,NFR=1,SLEN=0,IVAL=10,ERR=0
frame[0] WRITE 2 bytes
flags 0x11 <FORCE_SHORT_XFER|PROXY_BUFFER|0>
status 0xc0021 <OPEN|STARTED|CAN_CANCEL_IMMED|DOING_CALLBACK|0>
10:20:17.183085 usbus0.5
DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=4,IVAL=0,ERR=0
frame[0] READ 1 bytes
0000 55 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- |U |
flags 0x12 <SHORT_XFER_OK|PROXY_BUFFER|0>
status 0xc1021
<OPEN|STARTED|SHORT_XFER_OK|CAN_CANCEL_IMMED|DOING_CALLBACK|0>
10:20:17.183127 usbus0.5 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=0
frame[0] READ 8 bytes
flags 0x12 <SHORT_XFER_OK|PROXY_BUFFER|0>
status 0xc1023
<OPEN|TRANSFERRING|STARTED|SHORT_XFER_OK|CAN_CANCEL_IMMED|DOING_CALLBACK|0>
Up to here all is ok.
10:20:17.342824 usbus0.5 SUBM-INTR-EP=00000002,SPD=LOW,NFR=1,SLEN=4,IVAL=10
frame[0] WRITE 2 bytes
0000 04 4A -- -- -- -- -- -- -- -- -- -- -- -- -- -- |.J |
flags 0x11 <FORCE_SHORT_XFER|PROXY_BUFFER|0>
status 0xc0023
<OPEN|TRANSFERRING|STARTED|CAN_CANCEL_IMMED|DOING_CALLBACK|0>
10:20:17.353046 usbus0.5
DONE-INTR-EP=00000002,SPD=LOW,NFR=1,SLEN=0,IVAL=10,ERR=0
frame[0] WRITE 2 bytes
flags 0x11 <FORCE_SHORT_XFER|PROXY_BUFFER|0>
status 0xc0021 <OPEN|STARTED|CAN_CANCEL_IMMED|DOING_CALLBACK|0>
10:20:20.183068 usbus0.5
DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=4,IVAL=0,ERR=0
frame[0] READ 4 bytes
0000 5A 02 00 4A -- -- -- -- -- -- -- -- -- -- -- -- |Z..J |
flags 0x12 <SHORT_XFER_OK|PROXY_BUFFER|0>
status 0xc1021
<OPEN|STARTED|SHORT_XFER_OK|CAN_CANCEL_IMMED|DOING_CALLBACK|0>
10:20:20.183113 usbus0.5 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=0
frame[0] READ 8 bytes
flags 0x12 <SHORT_XFER_OK|PROXY_BUFFER|0>
status 0xc1023
<OPEN|TRANSFERRING|STARTED|SHORT_XFER_OK|CAN_CANCEL_IMMED|DOING_CALLBACK|0>
This is ok; we got the "echo" back (which we usually don't, but we did,
and it's all right that we did.)
10:20:20.367909 usbus0.5 SUBM-INTR-EP=00000002,SPD=LOW,NFR=1,SLEN=4,IVAL=10
frame[0] WRITE 2 bytes
0000 06 43 -- -- -- -- -- -- -- -- -- -- -- -- -- -- |.C |
flags 0x11 <FORCE_SHORT_XFER|PROXY_BUFFER|0>
status 0xc0023
<OPEN|TRANSFERRING|STARTED|CAN_CANCEL_IMMED|DOING_CALLBACK|0>
10:20:20.373052 usbus0.5
DONE-INTR-EP=00000002,SPD=LOW,NFR=1,SLEN=0,IVAL=10,ERR=0
frame[0] WRITE 2 bytes
flags 0x11 <FORCE_SHORT_XFER|PROXY_BUFFER|0>
status 0xc0021 <OPEN|STARTED|CAN_CANCEL_IMMED|DOING_CALLBACK|0>
Sent the next command..... and....
10:20:21.733059 usbus0.5
DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=4,IVAL=0,ERR=0
frame[0] READ 4 bytes
0000 5A 02 00 4A -- -- -- -- -- -- -- -- -- -- -- -- |Z..J |
flags 0x12 <SHORT_XFER_OK|PROXY_BUFFER|0>
status 0xc1021
<OPEN|STARTED|SHORT_XFER_OK|CAN_CANCEL_IMMED|DOING_CALLBACK|0>
10:20:21.733103 usbus0.5 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=0
frame[0] READ 8 bytes
flags 0x12 <SHORT_XFER_OK|PROXY_BUFFER|0>
status 0xc1023
<OPEN|TRANSFERRING|STARTED|SHORT_XFER_OK|CAN_CANCEL_IMMED|DOING_CALLBACK|0>
I got the old one back (instead of either a "55", which is an "ack; you
may proceed with the next request" or the echo of what I sent which also
implies a clear interface once I've processed it.)
10:20:22.353058 usbus0.5
DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=4,IVAL=0,ERR=0
frame[0] READ 4 bytes
0000 5A 02 00 4A -- -- -- -- -- -- -- -- -- -- -- -- |Z..J |
flags 0x12 <SHORT_XFER_OK|PROXY_BUFFER|0>
status 0xc1021
<OPEN|STARTED|SHORT_XFER_OK|CAN_CANCEL_IMMED|DOING_CALLBACK|0>
10:20:22.353102 usbus0.5 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=0
frame[0] READ 8 bytes
flags 0x12 <SHORT_XFER_OK|PROXY_BUFFER|0>
status 0xc1023
<OPEN|TRANSFERRING|STARTED|SHORT_XFER_OK|CAN_CANCEL_IMMED|DOING_CALLBACK|0>
10:20:24.063055 usbus0.5
DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=4,IVAL=0,ERR=0
frame[0] READ 4 bytes
0000 5A 02 00 4A -- -- -- -- -- -- -- -- -- -- -- -- |Z..J |
flags 0x12 <SHORT_XFER_OK|PROXY_BUFFER|0>
status 0xc1021
<OPEN|STARTED|SHORT_XFER_OK|CAN_CANCEL_IMMED|DOING_CALLBACK|0>
10:20:24.063085 usbus0.5 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=0
frame[0] READ 8 bytes
flags 0x12 <SHORT_XFER_OK|PROXY_BUFFER|0>
status 0xc1023
<OPEN|TRANSFERRING|STARTED|SHORT_XFER_OK|CAN_CANCEL_IMMED|DOING_CALLBACK|0>
And then I get a bunch of repeats on ~2 second intervals even though I
haven't sent anything else...
If I'm reading this correctly usbdump is showing me exactly what the
device is sending; that is, there is no "driver" involved here (just bus
traffic) -- correct?
If so that looks like a device bug (and a nasty one that I may have all
sorts of fun trying to work around.)
--
Karl Denninger
karl@denninger.net <mailto:karl@denninger.net>
/The Market Ticker/
/[S/MIME encrypted email preferred]/
[-- Attachment #2 --]
0 *H
010
`He 0 *H
_0[0C)0
*H
010 UUS10UFlorida10U Niceville10U
Cuda Systems LLC10UCuda Systems LLC CA1"0 *H
Cuda Systems LLC CA0
150421022159Z
200419022159Z0Z10 UUS10UFlorida10U
Cuda Systems LLC10UKarl Denninger (OCSP)0"0
*H
0
X@vkY
Tq/vE]5#֯MX\8LJ/V?5Da+
sJc*/r{ȼnS+ w")ąZ^DtdCOZ ~7Q '@a#ijc۴oZdB&!Ӝ-< ?HN5y
5}F|ef"Vلio74zn">a1qWuɖbFeGE&3(KhixG3!#e_XƬϜ/,$+;4y'Bz<qT9_?rRUpn5
Jn&Rx/p Jyel*pN8/#9u/YPEC)TY>~/˘N[vyiDKˉ,^" ?$T8 v&K%z8C @?K{9f`+@,|Mbia 007++0)0'+0http://cudasystems.net:88880 U0 0 `HB0U0, `HB
OpenSSL Generated Certificate0U-h\Ff Y0U#0$q}ݽʒm50U0karl@denninger.net0
*H
Owbabɺx&Uk[(Oj!%p MQ0I!#QH}.>~2&D}<wm_>V6v]f>=Nn+8;q wfΰ/RLyUG#b}n!Dր_up|_ǰc/%ۥ
nN8:d;-UJd/m1~VނיnN I˾$tF1&}|?q?\đXԑ&\4V<lKۮ3%Am_(q-(cAeGX)f}-˥6cv~Kg8m~v;|9:-iAPқ6ېn-.)<[$KJtt/L4ᖣ^Cmu4vb{+BG$M0c\[MR|0FԸP&78"4p#}DZ9;V9#>Sw"[UP7100010 UUS10UFlorida10U Niceville10U
Cuda Systems LLC10UCuda Systems LLC CA1"0 *H
Cuda Systems LLC CA)0
`He M0 *H
1 *H
0 *H
1
160518153217Z0O *H
1B@iz'*u&aFv PVcMIq4B
teS!0l *H
1_0]0 `He*0 `He0
*H
0*H
0
*H
@0+0
*H
(0 +710010 UUS10UFlorida10U Niceville10U
Cuda Systems LLC10UCuda Systems LLC CA1"0 *H
Cuda Systems LLC CA)0*H
1010 UUS10UFlorida10U Niceville10U
Cuda Systems LLC10UCuda Systems LLC CA1"0 *H
Cuda Systems LLC CA)0
*H
0teNHKC'jhu4pAÙ瞴 3@0+,/=&A6.4AH2tmGexEzB-iBR<k;rkp|NhzIQXZk65 }M ]}HXfi^IhSSyķMicTX٪$#5p0K*)
ID2Nc? Dr꜒/xX9ڃE2'LfMxm=v,\lez%aG୭3{>7^J`v>MtFrra} 1ejr@B3 x$
z
v-2<uAg }NjQO
z#4VV9IVTyfЗ6Յ(v?.vcox QץcD,0\/uffD
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?af57a994-2e7a-c0d0-1d84-a333c2b2096b>
