Just tested Wade's patch on the pixma backend, looks fine to me AFAIK: [sanei_usb] sanei_usb_open: address: 7 transfertype: 2 [sanei_usb] sanei_usb_open: found bulk-out endpoint (address 0x07) [sanei_usb] sanei_usb_open: endpoint nr: 1 [sanei_usb] sanei_usb_open: direction: 128 [sanei_usb] sanei_usb_open: address: 8 transfertype: 2 [sanei_usb] sanei_usb_open: found bulk-in endpoint (address 0x08) [sanei_usb] sanei_usb_open: endpoint nr: 2 [sanei_usb] sanei_usb_open: direction: 128 [sanei_usb] sanei_usb_open: address: 9 transfertype: 3 [sanei_usb] sanei_usb_open: found interrupt-in endpoint (address 0x09) [sanei_usb] sanei_usb_open: configuration nr: 0 [sanei_usb] sanei_usb_open: interface nr: 1 [sanei_usb] sanei_usb_open: alt_setting nr: 0 [sanei_usb] sanei_usb_open: skipping Printer interface [sanei_usb] sanei_usb_open: configuration nr: 0 [sanei_usb] sanei_usb_open: interface nr: 2 [sanei_usb] sanei_usb_open: alt_setting nr: 0 [sanei_usb] sanei_usb_open: skipping Mass Storage interface [sanei_usb] sanei_usb_open: opened usb device `libusb:001:004' (*dn=0)
Nicolas Le samedi 18 avril 2009 ? 15:55 -0400, m. allan noah a ?crit : > On Sat, Apr 18, 2009 at 3:29 PM, Nicolas Martin > <nicolas.martin at freesurf.fr> wrote: > > Maybe there's some relation with the endpoint, but remember that all > > PIXMA devices have also different endpoints for storage, printer and > > scanner, and there's no issue so far with messing those devices. > > So this requires anyway deeper analysis, but filtering out usb classes > > in sanei_usb is a good precaution. > > > > BTW, we really read your posts and try to figure out where there's > > something wrong, but as you can understand, this usb issue is not > > trivial. > > Well, the patch certainly looks sane (sorry, had to say it :), but I > worry there may be some stupid device that uses the usb mass storage > protocol to control the scanner. So it cannot go in one day before > code freeze. > > A more generic solution would address the bigger problem of a device > with multiple 'vendor-specific' interfaces, or a device that uses > multiple endpoints of the same type. In the end, I think sanei_usb > needs to give more control to the backend about selecting all these > things. While we are at it, we should drop the kernel scanner module > support, since most of the platforms that use it have libusb/openusb > now. In fact, I wonder if we could just make a wrapper around > libusb... > > allan