Sorry for the delay! I was caught up in some other work. The problem is, you MUST accept short packets for Isochronous transfers. The kernel is rejecting the buffer as invalid because you've set the no-short-packet flag for an Isochronous transfer.
This behavior isn't technically part of the USB spec (as far as I know) but the Linux subsystem disallows it. But when you think about it you really do NOT want to disallow short packets for Iso transfers, as if you do, you'll be getting a whole lot of errors/exceptions instead of actual data. Is there a specific reason you wanted to disallow short packets? You could just leave it at its default, which is to allow short packets. On Thu, 12 May 2005, Charles Chen wrote: >Dan, >Thanks very much for the long and detailed instructions. Thanks to it, I >successfully rebuilt the kernel 2.6.11. And the debug code you put into >devio.c is working. >With the new built kernel, the problem with get ISO data from a microphone >that connected to iMic USB is gone, so it seemed that the kernel 2.6.5 >caused this problem. I can retrieve data from the microphone, but there is >still other things do not work right. The sampling frequency is not correct. >The following info of iMic shows that the endpoint I am accessing has a >sample freq range from 6400 to 48000, and I just got the lowest sample freq. >Now I try to set the sample frequency to 44100, the CD standard. I read the >spec about audio class usb, and realize that I need to send an audio class >request. I created a usbControlIrp, as >usbControlIrp = pipe.createUsbControlIrp(bmRequestType=00100010B, >bRequest=SET_CUR=ox01, wValue=ENDPOINT_SAMPLING_FREQ_CONTROL=0x0100, >wIndex=epAddress=0x84) >byte[] data = new byte[3] and set value to 44100 >usbControlIrp.setData(data); >usbControlIrp.setAcceptShortPacket(false); >usbPipe.syncSubmit(usbControlIrp); > >It failed, and the log info in messages are: >May 12 21:30:13 localhost kernel: JAVAX.USB DEBUG: starting type switch >uurb.type 0x0 >My 12 21:30:13 localhost kernel: JAVAX.USB DEBUG: Enter >USBDEVFS_URB_TYPE_ISO >May 12 21:30:13 localhost kernel: JAVAX.USB DEBUG: Leave >USBDEVFS_URB_TYPE_ISO totlen 3 >May 12 21:30:13 localhost kernel: drivers/usb/core/urb.c: BOGUS urb flags, 3 >--> 2 >M 12 21:30:13 localhost kernel: JAVAX.USB DEBUG: error in usb_submit_urb err >-22 > >I cannot figure out what that means, but I am sure I don't know how to send >a audio class request. Please help. > >Charles > > Interface Descriptor: > bLength 9 > bDescriptorType 4 > bInterfaceNumber 2 > bAlternateSetting 2 > bNumEndpoints 1 > bInterfaceClass 1 Audio > bInterfaceSubClass 2 Streaming > bInterfaceProtocol 0 > iInterface 0 > AudioControl Interface Descriptor: > bLength 7 > bDescriptorType 36 > bDescriptorSubtype 1 (AS_GENERAL) > bTerminalLink 13 > bDelay 0 frames > wFormatTag 1 PCM > AudioControl Interface Descriptor: > bLength 14 > bDescriptorType 36 > bDescriptorSubtype 2 (FORMAT_TYPE) > bFormatType 1 (FORMAT_TYPE_I) > bNrChannels 1 > bSubframeSize 2 > bBitResolution 16 > bSamFreqType 0 Continuous > tLowerSamFreq 6400 > tUpperSamFreq 48000 > Endpoint Descriptor: > bLength 9 > bDescriptorType 5 > bEndpointAddress 0x84 EP 4 IN > bmAttributes 9 > Transfer Type Isochronous > Synch Type Adaptive > Usage Type Data > wMaxPacketSize 0x0064 bytes 100 once > bInterval 1 > bRefresh 0 > bSynchAddress 0 > AudioControl Endpoint Descriptor: > bLength 7 > bDescriptorType 37 > bDescriptorSubtype 1 (EP_GENERAL) > bmAttributes 0x01 > Sampling Frequency > bLockDelayUnits 2 Decoded PCM samples > wLockDelay 1 Decoded PCM samples > >_________________________________________________________________ >FREE pop-up blocking with the new MSN Toolbar – get it now! >http://toolbar.msn.click-url.com/go/onm00200415ave/direct/01/ > > > >------------------------------------------------------- >This SF.Net email is sponsored by Oracle Space Sweepstakes >Want to be the first software developer in space? >Enter now for the Oracle Space Sweepstakes! >http://ads.osdn.com/?ad_id=7393&alloc_id=16281&op=click >_______________________________________________ >javax-usb-devel mailing list >javax-usb-devel@lists.sourceforge.net >https://lists.sourceforge.net/lists/listinfo/javax-usb-devel > -- Dan Streetman [EMAIL PROTECTED] --------------------- 186,272 miles per second: It isn't just a good idea, it's the law! ------------------------------------------------------- This SF.Net email is sponsored by Oracle Space Sweepstakes Want to be the first software developer in space? Enter now for the Oracle Space Sweepstakes! http://ads.osdn.com/?ad_idt12&alloc_id344&op=click _______________________________________________ javax-usb-devel mailing list javax-usb-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/javax-usb-devel