[sane-devel] MP730 driver broken since pixma-0.12.2

Wade Fitzpatrick wade.fitzpatrick at gmail.com
Sun Apr 19 03:49:33 UTC 2009


Woohoo! Partial success. Updates at
http://waddles.org/content/sane-canon-mp730-driver

Perhaps the discussion of sanei_usb belongs in a different thread :)

Cheers,
Wade.

2009/4/19 Nicolas Martin <nicolas.martin at freesurf.fr>

> 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.
>
> Nicolas
>
> Le dimanche 19 avril 2009 à 03:46 +1000, Wade Fitzpatrick a écrit :
> > The patch should apply to current if somebody wants to test it. I just
> > don't know how many scanners might be attached to Printer or Mass
> > Storage devices' interfaces so I deliberately left it simple, but the
> > extra debug info was certainly helpful.
> >
> > Glad to see somebody is still reading my post, anyway. Thanks.
> >
> > Wade.
> >
> > m. allan noah wrote:
> > > though i must chime in that wade's latest post is very interesting- it
> > > does appear that sanei_usb grabs the wrong interface. I believe Ilia
> > > had a complaint about this as well. Sounds like sanei_usb needs an
> > > overhaul after our next release.
> > >
> > > allan
> > >
> > > On Sat, Apr 18, 2009 at 12:57 PM, Nicolas Martin
> > > <nicolas.martin at freesurf.fr> wrote:
> > >
> > > > Wade,
> > > >
> > > > As far as I can see, you are experiencing a usb interrupt transfer
> > > > issue, same kind as happened to other people when running the pixma
> > > > backend on an ASUS router or also on MAC OS X.
> > > >
> > > > What is important to know is that the pixma backend - and this is due
> to
> > > > Canon's PIXMA devices - make use of both usb Bulk read/write
> transfers,
> > > > and also of usb Interrupt read transfers.
> > > >
> > > > It is compulsory that usb interrupt read transfers fully work to
> operate
> > > > the pixma backend, as the scanner (and more especially older PIXMA
> > > > devices, like MP730) uses those transfer to exchange :
> > > > - status information
> > > > - time request
> > > > - button scan information
> > > >
> > > > Today's PIXMA devices (that uses a generation 3 protocol) uses both,
> but
> > > > can work without interrupt read ; in this case, only button scan will
> be
> > > > disabled, but the scanner can be entirely driven with Bulk transfers.
> > > > This is not the case for MP730, a generation 2 protocol device, which
> > > > requires usb interrupt read transfers to be operated.
> > > >
> > > > There's a difference also between the usb lib used by Sane, and the
> one
> > > > used in the pixma Standalone driver. Sane uses libusb, based on ioctl
> > > > calls to the kernel to execute usb transfers, while standalone driver
> > > > uses usbdevfs.
> > > >
> > > > In order to help you and step further, could you tell us which Linux
> > > > distribution (and version) you are running ?
> > > >
> > > > $ uname -a
> > > >
> > > > As I told before, this kind of issue was due on MAC OS X to the
> darwin
> > > > libusb port, not handling timeouts in interrupt reads, and for the
> ASUS
> > > > router, use of a (very) old kernel 2.4.20 version, known to be buggy
> for
> > > > usb interrupt reads.
> > > >
> > > > Nicolas
> > > >
> > > >
> > > > Le samedi 18 avril 2009 à 09:01 +1000, Wade Fitzpatrick a écrit :
> > > >
> > > > > I have updated my findings at
> > > > > http://waddles.org/content/sane-canon-mp730-driver
> > > > >
> > > > > Can someone suggest the next place to start work?
> > > > >
> > > > > Thanks,
> > > > > Wade.
> > > > >
> > > > > 2009/4/4 Nicolas Martin <nicolas.martin at freesurf.fr>
> > > > >         Sorry, posted answer in wrong thread.
> > > > >
> > > > >         As far as I can see in the differences between older
> versions
> > > > >         of the
> > > > >         pixma standalone driver and today's, concerning usb
> exchanges
> > > > >         for MP730,
> > > > >         the older drivers did not use events polling whereas newer
> do
> > > > >         with usb
> > > > >         interrupt reads.
> > > > >
> > > > >         First, did you try to remove the PIXMA_CAP_EVENTS flag for
> the
> > > > >         pixma 730
> > > > >         declaration (at the botom of file pixma_mp730.c) and see
> how
> > > > >         it
> > > > >         behaves ?
> > > > >
> > > > >         I will also send you some modified files for the pixma
> backend
> > > > >         to
> > > > >         investigate why this usb low level error appears.
> > > > >
> > > > >         Nicolas
> > > > >
> > > > >         Le vendredi 03 avril 2009 à 03:14 +1100, Wade Fitzpatrick a
> > > > >         écrit :
> > > > >
> > > > >         > Can you take a look at the logs on
> > > > >         > http://waddles.org/content/sane-canon-mp730-driver and
> tell
> > > > >         me if you
> > > > >         > think I'm on the right track with the endpoints?
> > > > >         >
> > > > >         > I CBF re-installing Windows, but I did test a successful
> > > > >         scan with
> > > > >         > mp150-0.12.2 followed immediately by a try with
> pixma-0.15.0
> > > > >         but it
> > > > >         > failed so I doubt it has anything to do with power-saving
> > > > >         modes.
> > > > >         >
> > > > >         > Thanks,
> > > > >         > Wade.
> > > > >         >
> > > > >         > 2009/3/21 Nicolas Martin <nicolas.martin at freesurf.fr>
> > > > >         >         Seems confirmed that a usb low level error
> happens
> > > > >         on first
> > > > >         >         write
> > > > >         >         attempt:
> > > > >         >
> > > > >         >         [sanei_usb] sanei_usb_write_bulk: trying to write
> 10
> > > > >         bytes
> > > > >         >         [sanei_usb] 000 F3 20 00 00 00 00 00 00 0C
> > > > >         >         00                   . ........
> > > > >         >         USB error: error submitting URB: Device or
> resource
> > > > >         busy
> > > > >         >         [sanei_usb] sanei_usb_write_bulk: write failed:
> > > > >         Device or
> > > > >         >         resource busy
> > > > >         >         USB error: could not clear/halt ep 1: Device or
> > > > >         resource busy
> > > > >         >
> > > > >         >         [pixma] WARNING:pixma_write(): count(0) !=
> len(10)
> > > > >         >
> > > > >         >
> > > > >         >         I remember having seen this before for someone
> else,
> > > > >         this
> > > > >         >         happened when
> > > > >         >         the usb port was going to power saving (generally
> > > > >         after a few
> > > > >         >         seconds)
> > > > >         >
> > > > >         >         Could it be the case on system ?
> > > > >         >
> > > > >         >         Nicolas
> > > > >         >
> > > > >         >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > >
> > > > --
> > > > sane-devel mailing list: sane-devel at lists.alioth.debian.org
> > > > http://lists.alioth.debian.org/mailman/listinfo/sane-devel
> > > > Unsubscribe: Send mail with subject "unsubscribe your_password"
> > > >             to sane-devel-request at lists.alioth.debian.org
> > > >
> > > >
> > >
> > >
> > >
> > >
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/sane-devel/attachments/20090419/36354d3e/attachment-0001.htm>


More information about the sane-devel mailing list