[sane-devel] Buslogic problems with 2.4 kernel and sane

Bruce Forsberg forsberg@tns.net
Tue, 02 Apr 2002 21:09:11 -0800


This is an informational message and does not require a reply.
It is being sent so that others that have this problem will not
spend forever troubleshooting it but can find it with a search
of this mail list.

I use a BusLogic BT 545C ISA SCSI card to hook up a UMAX-1200C
scanner. With SUSE 7.1 (kernel 2.4.2 SMP) I have two problems with
this setup when using sane/xsane.

1) At various times the scan will abort almost after it has started
leaving only a few number of lines.

[umax] umax_reader_process: buffer of 121896 bytes read; 124166313 bytes
to go
[umax] umax_queue_read_image_data_req for buffer[0]
[sanei_scsi] scsi_req_enter: entered 0x409ea008
[sanei_scsi] sanei_scsi.issue: 0x409ea008
[sanei_scsi] scsi_req_enter: queue_used: 2, queue_max: 2
[umax] umax_queue_read_image_data_req: id for buffer[0] is 0x409ea008
[umax] umax_reader_process: read image data queued for buffer[0]
[umax] umax_wait_queued_image_data for buffer[1] (id=0x40a2c008)
[sanei_scsi] sanei_scsi_req_wait: waiting for 0x40a2c008
[sanei_scsi] sanei_scsi.issue: 0x40a2c008
[umax] sane_read: read 4096 bytes
[umax] sane_read: read 4096 bytes
[umax] sane_read: read -1 bytes
[umax] sane_read: EAGAIN
[sanei_scsi] sanei_scsi.issue: 0x409ea008
[sanei_scsi] sanei_scsi_req_wait: read 64 bytes
[sanei_scsi] sanei_scsi_req_wait: SCSI command complained: Success
[sanei_scsi] sense buffer: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00
[sanei_scsi] target status: 00 host status: 0007 driver status: 0027
[umax] umax_wait_queued_image_data: wait returned status Error during
device I/O
[umax] ERROR: umax_reader_process: unable to get image data from
scanner!
[umax] reader_process: freeing SCSI buffer[1]  


2) If scanning in 8 bit mode RGB and width * height of chip is an odd
value then the scan will not finish. Several lines at the end of the
scan will be missing.

[umax] umax_reader_process: buffer of 121896 bytes read; 76185 bytes to
go
[umax] umax_queue_read_image_data_req for buffer[0]
[sanei_scsi] scsi_req_enter: entered 0x409ea008
[sanei_scsi] sanei_scsi.issue: 0x409ea008
[sanei_scsi] scsi_req_enter: queue_used: 1, queue_max: 2
[umax] umax_queue_read_image_data_req: id for buffer[0] is 0x409ea008
[umax] umax_reader_process: read image data queued for buffer[0]
[umax] umax_wait_queued_image_data for buffer[0] (id=0x409ea008)
[sanei_scsi] sanei_scsi_req_wait: waiting for 0x409ea008
[sanei_scsi] sanei_scsi.issue: 0x409ea008
[umax] sane_read: read 4096 bytes
[umax] sane_read: read 4096 bytes
[umax] sane_read: read -1 bytes
[umax] sane_read: EAGAIN
[sanei_scsi] sanei_scsi_req_wait: read 64 bytes
[sanei_scsi] sanei_scsi_req_wait: SCSI command complained: Success
[sanei_scsi] sense buffer: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00
[sanei_scsi] target status: 00 host status: 0007 driver status: 0027
[umax] umax_wait_queued_image_data: wait returned status Error during
device I/O
[umax] ERROR: umax_reader_process: unable to get image data from
scanner!  


In order to fix number 1, I have to set "option scsi-maxqueue 1". In
order
to fix number 2 I have to make sure that width * height is an even value
or
use 10 bit mode.

I have tested various configurations and have observed the following:

USED NON SMP KERNEL
  Same problems as above
USED ADAPTEC PCI 2940
  Both problems 1 and 2 gone. No problems
USED 2.2.20 SMP KERNEL
  Both problems 1 and 2 gone. No problems
USED 2.4.18 SMP KERNEL
   Same problems as above


It is clear from the above data that there is a problem with the device
driver in 2.4 kernels for BusLogic SCSI cards. I have emailed the
original
author with the data above but since BusLogic cards are not that popular
I don't know if it will ever be fixed.

Bruce Forsberg