On May 1, 2004, at 3:37 PM, Klaus Dittrich wrote: > Klaus Dittrich wrote: > >> abel deuring wrote: >> >>> sorry Klaus, I should have had a closer look into your other mail >>> containing the debug output. >>> >>> abel deuring wrote: >>> >>>> Klaus Dittrich wrote: >>> >>> >>> [...] >>> >>>>> Starting with backend-1.0.13 the sanei_scsi layer has changed >>>>> and therefore I assume a bug in the scsi status handling, because >>>>> expect_ack() has not changed since sane-backends-1.0.12. >>>>> >>>>> Maybe one of the sanei_scsi developers can help here ? >>>> >>>> >>>> T >>>> >>>> As far as I can see, the only changes in sanei_scsi.c after the >>>> release of sane-backends-1.0.12 affecting Linux are indentation >>>> fixes and similar "formal" modifications. But the "real" code is >>>> the same. So I don't think that your problems are related to >>>> sanei_scsi.c. Anyway, could you send me the log output from trying >>>> a scan with the backend version 1.0.12 and a newer version, while >>>> SANEI_DEBUG_EPSON and SANE_DEBUG_SANEI_SCSI are set to 255? >>> >>> >>> >>> the last lines from your debug data: >>> >>> dev_max(currently)=6 max_active_device=4 (origin 1) >>> def_reserved_size=32768 >>> >>> device=sg3 scsi2 chan=0 id=5 lun=0 em=0 sg_tablesize=96 excl=1 >>> FD(1): timeout=120000ms bufflen=131072 (res)sgat=4 low_dma=0 >>> cmd_q=1 f_packid=0 k_orphan=0 closed=0 >>> rb>> rcv: id=28 blen=1 dur=3ms sgat=0 op=0x08 >>> [sanei_scsi] sanei_scsi_req_wait: read 64 bytes >>> [sanei_scsi] sanei_scsi_req_wait: SCSI command complained: Success >>> [sanei_scsi] sense buffer: f0 00 05 00 00 00 00 00 00 00 00 00 00 00 >>> 00 00 >>> [sanei_scsi] target status: 02 host status: 0000 driver status: 0008 >>> [sanei_scsi] sanei_scsi_req_wait: SG driver returned resid 1 >>> [sanei_scsi] NOTE: This value may be bogus >>> >>> That's the relevant part of the debug data you've sent: It simply >>> tells us that the scanner returned the status CHECK CONDITION for >>> the last command; The sense data means "illegal request". This >>> generally means that the SCSI command sent to the device contained >>> some error. Within sanei_scsi.c, that's "perfectly normal": This >>> library does not issue any SCSI commands by itself during a scan, it >>> only "forwards" commands issued by a backend to the kernel. So I >>> assume that some change in the Epson backend caused the error. >>> >>> Abel >>> >>> >> Thanks for your answer. I will try some more experiments. May be >> there is more >> code sent to the scanner than necessary in the case of ADF usage. >> With USB and linux-2.6.6-rc3 I get this .. >> >> kernel: usbfs: USBDEVFS_BULK failed dev 11 ep 0x81 len 1 ret -110 >> >> error each time I use the ADF. Using flatbed works. >> >> -- >> Klaus > > Seems feed() in epson.c is not needed at all. > I made it return SANE_STATUS_GOOD immediately and ADF scanning still > works. > Karl Heinz it seems the LOAD PAPER (0x19) from EPSON's > 12_3065_esci_revl.pdf > has other purposes. Do other scanners with ADF need this?
Yes, that's the reason it's there :-) It looks like I have to blacklist some scanners (e.g. the 1640) so that this command is not used. Karl Heinz
