Hi list, I'm adding support for isoc out traffic to the CRIS host usb driver. More specifically, I'm trying to make a couple of Philips DSS350/17 usb speakers to work. They worked fine on my Linux host machine (running a 2.2.19 kernel) which uses the same generic usb audio framework. My method of testing is simply to cat some .au file to /dev/audio. The kernel on my board is 2.4.7-ish, but the audio.c driver doesn't seem to have changed much lately, so I reckon it isn't too old or anything.
The thing that puzzles me is how iso_frame_desc is set up in usbout_start and usbout_prepare_desc. transfer_buffer_length is set to 50, and number_of_packets is 5. But iso_frame_desc[i].length is set to 8 for 0 <= i <= 4 (and iso_frame_desc[i].offset is i * 8), for a total of 5 * 8 = 40 bytes. 10 bytes unaccounted for if you ask me. Obviously I'm missing something in this equation, but I can't figure out what. I used the CATC USB Inspector to analyze the traffic from my host Linux machine, which uses the usb-uhci driver, and it does indeed send packets in 8 byte sized chunks. For completeness, here is the contents of /proc/bus/usb/devices on my target board: T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= -2 D: Ver= 1.00 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 0.00 S: Product=USB ETRAX 100LX Root Hub S: SerialNumber=ff C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=255ms T: Bus=01 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 2 Spd=12 MxCh= 0 D: Ver= 1.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=0471 ProdID=0101 Rev= 1.00 S: Product=USB Digital Speaker System C:* #Ifs= 3 Cfg#= 1 Atr=40 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 0 Cls=01(audio) Sub=01 Prot=00 Driver=audio I: If#= 1 Alt= 0 #EPs= 0 Cls=01(audio) Sub=02 Prot=00 Driver=audio I: If#= 1 Alt= 1 #EPs= 1 Cls=01(audio) Sub=02 Prot=00 Driver=audio E: Ad=04(O) Atr=09(Isoc) MxPS= 56 Ivl= 1ms I: If#= 1 Alt= 2 #EPs= 1 Cls=01(audio) Sub=02 Prot=00 Driver=audio E: Ad=04(O) Atr=09(Isoc) MxPS= 112 Ivl= 1ms I: If#= 1 Alt= 3 #EPs= 1 Cls=01(audio) Sub=02 Prot=00 Driver=audio E: Ad=04(O) Atr=09(Isoc) MxPS= 112 Ivl= 1ms I: If#= 1 Alt= 4 #EPs= 1 Cls=01(audio) Sub=02 Prot=00 Driver=audio E: Ad=04(O) Atr=09(Isoc) MxPS= 224 Ivl= 1ms I: If#= 1 Alt= 5 #EPs= 1 Cls=01(audio) Sub=02 Prot=00 Driver=audio E: Ad=04(O) Atr=09(Isoc) MxPS= 168 Ivl= 1ms I: If#= 1 Alt= 6 #EPs= 1 Cls=01(audio) Sub=02 Prot=00 Driver=audio E: Ad=04(O) Atr=09(Isoc) MxPS= 336 Ivl= 1ms I: If#= 2 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=(none) E: Ad=83(I) Atr=03(Int.) MxPS= 1 Ivl= 10ms Cheers, Orjan -- Orjan Friberg Axis Communications AB _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel