Have you compiled javax.usb with the 2.6.8.1 kernel headers?  Right now 
there are #defines that make the JNI work with 2.4 or 2.6, depending on 
what you compile it with.  The javax-usb-ri-linux JNI makefile uses the 
CINCLUDES variable, so if you set it to the location of the 2.6.8.1 kernel 
header files, it should pick up the right values.  For example if you have 
the kernel source at /usr/src/linux-2.6.8.1 (and are using bash shell):

export CINCLUDES=-I/usr/src/linux-2.6.8.1/include
ant clean jars

does that work?

On Thu, 9 Sep 2004, Susheel Yadav wrote:

>Hi,
>I am trying to get my Microtek Scanmaker 5600 working
>with linux. I am using kernel 2.6.8.1 and CVS version
>of javax.usb.
>
>Everything seems ok till I submit the scan request.
>Here is the relevant section of the UsbSnoopy logs:
>
>63540 ms]  >>>  URB 323 going down  >>> 
>-- URB_FUNCTION_VENDOR_DEVICE:
>  TransferFlags          = 00000001
>(USBD_TRANSFER_DIRECTION_IN, ~USBD_SHORT_TRANSFER_OK)
>  TransferBufferLength = 00000001
>  TransferBuffer       = ff44c5d8
>  TransferBufferMDL    = 00000000
>  UrbLink                 = 00000000
>  RequestTypeReservedBits = 000000c0
>  Request                 = 00000026
>  Value                   = 00000000
>  Index                   = 0000ef10
>[63544 ms] UsbSnoop -
>MyInternalIOCTLCompletion(f891fdb0) : fido=00000000,
>Irp=fb7444c8, Context=82398c80, IRQL=2
>[63544 ms]  <<<  URB 323 coming back  <<< 
>-- URB_FUNCTION_CONTROL_TRANSFER:
>  PipeHandle           = fbb94820
>  TransferFlags        = 0000000b
>(USBD_TRANSFER_DIRECTION_IN, USBD_SHORT_TRANSFER_OK)
>  TransferBufferLength = 00000001
>  TransferBuffer       = ff44c5d8
>  TransferBufferMDL    = 822b8210
>    00000000: 00
>  UrbLink              = 00000000
>  SetupPacket          =
>    00000000: c0 26 00 00 10 ef 01 00
>[63544 ms] UsbSnoop - DispatchAny(f891e610) :
>IRP_MJ_INTERNAL_DEVICE_CONTROL
>[63544 ms] UsbSnoop -
>MyDispatchInternalIOCTL(f891fe80) : fdo=fc761030,
>Irp=fbb94008, IRQL=0
>[63547 ms]  >>>  URB 324 going down  >>> 
>-- URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER:
>  PipeHandle           = 820ef484 [endpoint
>0x00000081]
>  TransferFlags        = 00000002
>(USBD_TRANSFER_DIRECTION_OUT, USBD_SHORT_TRANSFER_OK)
>  TransferBufferLength = 0000ef00
>  TransferBuffer       = f52a9000
>  TransferBufferMDL    = 00000000
>    00000000: 00 00 00 00 00 00 00 00 00 00 00 00 00
>00 00 00
>    00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00
>00 00 00
>    00000020: 00 00 00 00 00 00 00 00 00 00 00 00 00
>00 00 00
>
>This is followed by a bunch of more 00s. In the logs,
>this is followed by a bunch of data. I am able to get
>the scacnner motor to move but all my attempts tot
>read the bulk data have failed. I claim the correct
>interface, open the correct pipe etc. I have tried
>opening the pipe for endpoint 0x81 and syncsubmit an
>IRP with buffers of various lengths in different ways
>- using a separate thread, or after sending  the c0 26
>00 00  request etc., but no matter what I send, I get
>the Invalid IRP message back.
>
>How is it that I am supposed to read the bulk data
>back from my scanner? The scanner has 2 IN endpoints.
>I feel very frustrated. Any help would be appreciated.
>I have already looked the apis for jsyncmanager, cm19
>etc., and tried the way they do it, but nothing has
>worked so far.
>
>JNI log says:
>
>LOG:[xfer](4)
>JavaxUsbDeviceProxy.c.Java_com_ibm_jusb_os_linux_JavaxUsb_nativeDeviceProxy[75]
>Got Request
>LOG:[xfer](5) JavaxUsbDeviceProxy.c.submitRequest[127]
>Submitting Request.
>LOG:[xfer](5) JavaxUsbDeviceProxy.c.submitRequest[131]
>Submitting Pipe Request.
>LOG:[xfer](4) JavaxUsbPipeRequest.c.pipe_request[63]
>Submitting URB
>LOG:[xfer](1) JavaxUsbPipeRequest.c.pipe_request[74]
>Could not submit URB (errno -22)
>LOG:[xfer](4)
>JavaxUsbDeviceProxy.c.Java_com_ibm_jusb_os_linux_JavaxUsb_nativeDeviceProxy[78]
>Completed Request
>Exception in thread "main"
>javax.usb.UsbPlatformException: Error submitting IRP :
>Invalid
>        at
>com.ibm.jusb.os.linux.JavaxUsb.errorToUsbException(JavaxUsb.java:88)
>        at
>com.ibm.jusb.os.linux.LinuxPipeRequest.completeUsbIrp(LinuxPipeRequest.java:84)
>        at
>com.ibm.jusb.os.linux.LinuxPipeRequest.setCompleted(LinuxPipeRequest.java:74)
>        at
>com.ibm.jusb.os.linux.JavaxUsb.nativeDeviceProxy(Native
>Method)
>        at
>com.ibm.jusb.os.linux.LinuxDeviceProxy$1.run(LinuxDeviceProxy.java:88)
>        at java.lang.Thread.run(Thread.java:534)
>
>
>
>Susheel
>
>
>       
>               
>__________________________________
>Do you Yahoo!?
>New and Improved Yahoo! Mail - 100MB free storage!
>http://promotions.yahoo.com/new_mail 
>
>
>-------------------------------------------------------
>This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
>Project Admins to receive an Apple iPod Mini FREE for your judgement on
>who ports your project to Linux PPC the best. Sponsored by IBM. 
>Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
>_______________________________________________
>javax-usb-devel mailing list
>[EMAIL PROTECTED]
>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: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM. 
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
_______________________________________________
javax-usb-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/javax-usb-devel

Reply via email to