Hi Sarah,I am here with another issue with xhci driver(or speed of host machine) I am not sure.
I am testing ISOC IN with testusb test 16. My usb device gadget has following configuration: maxpacket size = 1024 maxburst size = 9 mult = 3 binterval = 1 So, basically I am trying to transfer 3 * 9 * 1024 = 27 KBytes/125 us. As a usb host machine I use Fedora 17 with kernel 3.5.4. I run following command at host PC. ./testusb -a -c 1000 -t 16 -s 55296 -g 1Now what I see, that some time host is not sending correct seq number in the ACK token. See attached snapshot. For the second burst host sends ACK with sequence number 9 which is correct and device responds with 9 packets of 1024 bytes. Now device was expecting ACK with seq number 18. But, it sends ACK with seq no '0', which is not expected.
However, most of the time host does send correct seq number. In the dmesg I see, lot of[ 307.554169] xhci_hcd 0000:30:00.0: WARN: HC couldn't access mem fast enough
My embedded evaluation board has PCIe host too. So I used same PCIetoUSb3.0 host (which I used with test PC) with my eval board and used it as a host. Ran same test and I do not see any such error here. It runs perfectly. But, here I have kernel version 2.6.37
So my question is : 1. Is is possible that kernel version 3.5.4 has a bug but 2.6.37 does not? or2. My Test PC is slower than my embedded eval board? However, it seems least likely..my host PC is Pentium(R) Dual Core E5400 @ 2.70 GHz and eval board is CortexA9 Dual Core @ 600MHz
Regards Pratyush
Attachment:
issue_with_fedora17_host.png
Description: PNG image