On Saturday 12 November 2005 10:49, Alan Stern wrote: > On Sat, 12 Nov 2005, Oliver Neukum wrote: > > > Am Freitag, 11. November 2005 22:56 schrieb Alan Stern: > > > It looks like the problem is in mts_command_done. It doesn't expect to > > > deal with an sg list containing only one element. > > > > OK, you are right. I am rewriting it to use usbcore's sg primitives. > > Expect a patch tomorrow. > > That won't be entirely straightforward. The sg library in usbcore expects > to run in process context, but the microtek driver needs to use it in > interrupt context. > > Some time back Pete Z. posted an update for the sg routines to make them > work in interrupt context. I don't have a pointer to it, but maybe you > can get it from Pete. It will involve more work than just changing the > driver, though. > > For now, you might instead try making a simple adjustment to > mts_command_done. It could be enough to change > > context->srb->use_sg ? mts_do_sg : mts_data_done); > > to > > context->srb->use_sg > 1 ? mts_do_sg : mts_data_done); > > Alan Stern >
I was redoing the kernel cause found IOMMU support disabled my agp when booted up. SO, tried the above idea and works! Scanner was recognized and XSane found scanner. Was able to actually scan a document. Did it on both 2.6.14 & 2.6.13 kernel. The only thing could tell that was different was that the one did on 2.6.14 was lighter and looked better. Don't know why, maybe if rescanned again on both it would show it was somewhat random and due to Sane. Anyway. When recompile the kernel on 2.6.14 did get these errors (but didn't stop it from working): drivers/usb/image/microtek.c: In function `mts_debug_dump': drivers/usb/image/microtek.c:217: warning: cast from pointer to integer of different size drivers/usb/image/microtek.c: In function `mts_int_submit_urb': drivers/usb/image/microtek.c:376: warning: cast from pointer to integer of different size drivers/usb/image/microtek.c:376: warning: cast from pointer to integer of different size drivers/usb/image/microtek.c: In function `mts_transfer_cleanup': drivers/usb/image/microtek.c:402: warning: cast from pointer to integer of different size drivers/usb/image/microtek.c:402: warning: cast from pointer to integer of different size drivers/usb/image/microtek.c: In function `mts_transfer_done': drivers/usb/image/microtek.c:411: warning: cast from pointer to integer of different size drivers/usb/image/microtek.c:411: warning: cast from pointer to integer of different size drivers/usb/image/microtek.c: In function `mts_get_status': drivers/usb/image/microtek.c:425: warning: cast from pointer to integer of different size drivers/usb/image/microtek.c:425: warning: cast from pointer to integer of different size drivers/usb/image/microtek.c: In function `mts_data_done': drivers/usb/image/microtek.c:438: warning: cast from pointer to integer of different size drivers/usb/image/microtek.c:438: warning: cast from pointer to integer of different size drivers/usb/image/microtek.c: In function `mts_command_done': drivers/usb/image/microtek.c:455: warning: cast from pointer to integer of different size drivers/usb/image/microtek.c:455: warning: cast from pointer to integer of different size drivers/usb/image/microtek.c: In function `mts_do_sg': drivers/usb/image/microtek.c:496: warning: cast from pointer to integer of different size drivers/usb/image/microtek.c:496: warning: cast from pointer to integer of different size drivers/usb/image/microtek.c: In function `mts_usb_probe': drivers/usb/image/microtek.c:715: warning: cast from pointer to integer of different size Just thought would let you know. Regards, Dave ------------------------------------------------------- SF.Net email is sponsored by: Tame your development challenges with Apache's Geronimo App Server. Download it for free - -and be entered to win a 42" plasma tv or your very own Sony(tm)PSP. Click here to play: http://sourceforge.net/geronimo.php _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel