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

Wade Fitzpatrick wade.fitzpatrick at gmail.com
Tue Apr 21 18:07:55 UTC 2009


And now consistent success. See
http://waddles.org/content/sane-canon-mp730-driver#5 UPDATE 5.

Unfortunately the patch needs more work and I don't think I'm going to have
time to get it ready for the 1.0.20 release next week unless Nicolas whips
up something.

Anyway, at least we know where the problems are now.

Cheers,
Wade.

2009/4/19 Wade Fitzpatrick <wade.fitzpatrick at gmail.com>

> 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/20090422/b38ebf96/attachment-0001.htm>


More information about the sane-devel mailing list