I've also tested scanning on:
# scanimage -L
device `xerox_mfp:libusb:000:002' is a Samsung M2070 Series multi-function
peripheral
with kernel diff:
https://marc.info/?l=openbsd-bugs&m=160991986510827&w=2
and it works. Is there anything else I can help with to get your diff
commited to CVS?
On Wed, Jan 13, 2021 at 08:03:07PM +0000, Mikolaj Kucharski wrote:
> Marcus,
>
> On Sat, Jan 09, 2021 at 11:55:38PM +0000, Mikolaj Kucharski wrote:
> > Marcus,
> >
> > I was suspecting there is more than one issue, but didn't manage to dive
> > into it. With your last kernel diff:
> >
> > https://marc.info/?l=openbsd-bugs&m=160991986510827&w=2
> >
> > and below sane-backends diff makes my Canon MG3250 USB scanner work
> > consistenly.
> >
> > This is awesome, thank you Marcus!
> >
> > I'll be testing more over next coming days, but so far this looks good.
>
> I did few scans and printing over last days and kernel diff + sane
> backends diff together work very reliably. No issues so far encountered.
>
>
> > Small comment below about the sane backends diff.
> >
> >
> > On Sat, Jan 09, 2021 at 11:12:56PM +0100, Marcus Glocker wrote:
> > >
> > > Hello Mikolaj,
> > >
> > > I think you're mixing up two different issues now.
> > >
> > > The first issue is with our ugen(4) implementation, where the DATA
> > > toggle gets out of sync with xhci(4), and therefore after the first
> > > successful data exchange, all following will fail, until you
> > > detach/attach the device which will reset the DATA toggle again.
> > >
> > > The second issue seems to be a bug in the sane-backends software. I
> > > had a problem related to that with my PIXMA scanner as well. It could
> > > be the same issue you're seeing. I've opened an issue upstream for
> > > that:
> > >
> > > https://gitlab.com/sane-project/backends/-/issues/412
> > >
> > > In the meantime I've also provided a patch upstream for the issue.
> > > They are currently checking whether it's the right fix to do. Can you
> > > try this patch with our sane-backends port as well, and see whether if
> > > fixes your issue?
> > >
> > >
> > > Index: graphics/sane-backends/Makefile
> > > ===================================================================
> > > RCS file: /cvs/ports/graphics/sane-backends/Makefile,v
> > > retrieving revision 1.95
> > > diff -u -p -u -p -r1.95 Makefile
> > > --- graphics/sane-backends/Makefile 20 Dec 2020 09:56:36 -0000
> > > 1.95
> > > +++ graphics/sane-backends/Makefile 9 Jan 2021 22:07:38 -0000
> > > @@ -5,7 +5,7 @@ BROKEN-alpha= ICE hp5590.c:1141: error:
> > > COMMENT= API for accessing scanners, backends
> > >
> > > DISTNAME= sane-backends-1.0.31
> > > -REVISION= 1
> > > +REVISION= 2
> > >
> > > SHARED_LIBS += sane 2.1 # unknown
> > >
> > > Index: graphics/sane-backends/patches/patch-backend_pixma_pixma_io_sanei_c
> > > ===================================================================
> > > RCS file:
> > > graphics/sane-backends/patches/patch-backend_pixma_pixma_io_sanei_c
> > > diff -N
> > > graphics/sane-backends/patches/patch-backend_pixma_pixma_io_sanei_c
> > > --- /dev/null 1 Jan 1970 00:00:00 -0000
> > > +++ graphics/sane-backends/patches/patch-backend_pixma_pixma_io_sanei_c
> > > 9 Jan 2021 22:07:38 -0000
> > > @@ -0,0 +1,15 @@
> > > +$OpenBSD$
> > > +
> >
> > Could it make sense to add
> > https://gitlab.com/sane-project/backends/-/issues/412
> > as a comment to this diff?
> >
> >
> > > +Index: backend/pixma/pixma_io_sanei.c
> > > +--- backend/pixma/pixma_io_sanei.c.orig Sun Aug 23 13:59:20 2020
> > > ++++ backend/pixma/pixma_io_sanei.c Tue Jan 5 15:30:06 2021
> > > +@@ -538,8 +538,7 @@ pixma_wait_interrupt (pixma_io_t * io, void *buf,
> > > unsi
> > > + #endif
> > > + error = map_error (sanei_usb_read_int (io->dev, buf, &count));
> > > + }
> > > +- if (error == PIXMA_EIO ||
> > > +- (io->interface == INT_BJNP && error == PIXMA_EOF)) /* EOF is
> > > a bjnp timeout error! */
> > > ++ if (error == PIXMA_EIO || error == PIXMA_EOF)
> > > + error = PIXMA_ETIMEDOUT; /* FIXME: SANE doesn't have ETIMEDOUT!!
> > > */
> > > + if (error == 0)
> > > + error = count;
--
Regards,
Mikolaj