http://marc.theaimsgroup.com/?l=linux-usb-devel&m=107790500929613&w=2
Ok, thanks - this was doing the trick!
Looks good - it seems it's basically working. Not much detailed testing so far, but it passes test15. You said it should work for ISO-OUT, so I assume the ENOMEM-failure of test16 is within expectations?
Yes, especially if it goes with a KERN_DEBUG message saying there are no ISO-IN splits yet. It's essentially all coded, but microframe scheduling needs tweaks for the IN cases. I decided to force ENOMEM until that code is ready ... someone willing to play with the code could turn it on and shouldn't find it needs many changes.
I had some debugging on the ezusb, so at least I know it was actually receiving the iso-out data with correct crc. But I haven't checked for synchronisation and data correctness.
How would you test for ISO synchronization?
* test firmware personality
T: Bus=01 Lev=02 Prnt=02 Port=03 Cnt=01 Dev#= 4 Spd=12 MxCh= 0 D: Ver= 1.10 Cls=ff(vend.) Sub=00 Prot=ff MxPS=64 #Cfgs= 1 P: Vendor=fff0 ProdID=fff0 Rev= 0.01
Feel like using an "official" ID, by the way? I have a few IDs left I can hand out ...
S: Manufacturer=Martin Diehl S: Product=USB-Test S: SerialNumber=2004-03-02 C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=100mA I: If#= 0 Alt= 0 #EPs= 0 Cls=ff(vend.) Sub=00 Prot=00 Driver=usbtest I: If#= 0 Alt= 1 #EPs= 4 Cls=ff(vend.) Sub=01 Prot=00 Driver=usbtest E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=88(I) Atr=01(Isoc) MxPS= 512 Ivl=1ms E: Ad=08(O) Atr=01(Isoc) MxPS= 512 Ivl=1ms
Ah ... sneaky config! Does it work with MaxPS 1023, or with bigger intervals? The split transaction support needs to use a sixth microframe for transfers larger than about 940 bytes. I can't currently test those at 1 msec intervals.
- Dave
* ./testusb -a -g 8 -v 0
Does "-g 32" work too? If there were issues there I'd expect them to be with "test 10".
/proc/bus/usb/001/004 test 0, 0.000046 secs /proc/bus/usb/001/004 test 1, 1.000703 secs /proc/bus/usb/001/004 test 2, 1.000626 secs /proc/bus/usb/001/004 test 5, 6.784527 secs /proc/bus/usb/001/004 test 6, 6.687679 secs /proc/bus/usb/001/004 test 9, 3.558065 secs /proc/bus/usb/001/004 test 10, 1.502038 secs /proc/bus/usb/001/004 test 11, 4.030243 secs /proc/bus/usb/001/004 test 12, 4.032602 secs /proc/bus/usb/001/004 test 13, 9.206410 secs /proc/bus/usb/001/004 test 14, 4.012137 secs
That's handy: control out testing makes "usbtest" cover a lot more of the basic host and device functionality.
/proc/bus/usb/001/004 test 15, 8.008405 secs /proc/bus/usb/001/004 test 16 --> 12 (error 12)
Where presumably OHCI worked just fine; and UHCI, which I rarely test.
* corresponding syslog
usbtest 1-4.4:1.0: TEST 0: NOP usbtest 1-4.4:1.0: TEST 1: write 512 bytes 1000 times usbtest 1-4.4:1.0: TEST 2: read 512 bytes 1000 times usbtest 1-4.4:1.0: TEST 5: write 1000 sglists 8 entries of 512 bytes usbtest 1-4.4:1.0: TEST 6: read 1000 sglists 8 entries of 512 bytes usbtest 1-4.4:1.0: TEST 9: ch9 (subset) control tests, 1000 times usbtest 1-4.4:1.0: TEST 10: queue 8 control calls, 1000 times usbtest 1-4.4:1.0: TEST 11: unlink 1000 reads of 512 usbtest 1-4.4:1.0: TEST 12: unlink 1000 writes of 512 usbtest 1-4.4:1.0: TEST 13: set/clear 1000 halts usbtest 1-4.4:1.0: TEST 14: 1000 ep0out, 0..512 vary 0 usbtest 1-4.4:1.0: TEST 15: write 1000 iso, 8 entries of 512 bytes usbtest 1-4.4:1.0: ... iso period 1 frames, wMaxPacket 0200 usbtest 1-4.4:1.0: ... total 8000 msec (8000 packets) usbtest 1-4.4:1.0: TEST 16: read 1000 iso, 8 entries of 512 bytes usbtest 1-4.4:1.0: ... iso period 1 frames, wMaxPacket 0200 usbtest 1-4.4:1.0: ... total 8000 msec (8000 packets) usbtest 1-4.4:1.0: submit iso[0], error -12
------------------------------------------------------- SF.Net is sponsored by: Speed Start Your Linux Apps Now. Build and deploy apps & Web services for Linux with a free DVD software kit from IBM. Click Now! http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel