New (old) scanner

Kevin Buettner kev@primenet.com
Tue, 6 Mar 2001 18:42:03 -0700


On Mar 5,  3:18pm, Robert N. Eaton wrote:

> This week-end I noticed Fry's had an add for a Umax, Astra 1220S scsi
> scanner at $49.95, with card and cable.  I contacted Sane at
> www.mostang.com and searched the info.  They state that this model is
> supported without qualification.
> 
> I bought the scanner and installed the card (no name or brand that I
> could discover, has only an external port, no facilities for internal
> cables) and it works fine in Win95.
> 
> I added scsi support to my kernel, and the boot log shows scsi - OK,
> instead of scsi - SKIP.

Look in /var/log/messages (or some other suitable log file) and see if
the Linux kernel has recognized the card.  E.g.  on one of my
machines, I see messages like this (time stamps deleted):

    (scsi0) <Adaptec AIC-7890/1 Ultra2 SCSI host adapter> found at PCI 2/10/0 
    (scsi0) Wide Channel, SCSI ID=7, 32/255 SCBs 
    (scsi0) Downloading sequencer code... 396 instructions downloaded 
    (scsi1) <Adaptec AIC-7880 Ultra SCSI host adapter> found at PCI 2/14/0 
    (scsi1) Wide Channel, SCSI ID=7, 16/255 SCBs 
    (scsi1) Warning - detected auto-termination 
    (scsi1) Please verify driver detected settings are correct. 
    (scsi1) If not, then please properly set the device termination 
    (scsi1) in the Adaptec SCSI BIOS by hitting CTRL-A when prompted 
    (scsi1) during machine bootup. 
    (scsi1) Cables present (Int-50 NO, Int-68 NO, Ext-68 NO) 
    (scsi1) Downloading sequencer code... 423 instructions downloaded 
    scsi0 : Adaptec AHA274x/284x/294x (EISA/VLB/PCI-Fast SCSI) 5.1.28/3.2.4 
	    <Adaptec AIC-7890/1 Ultra2 SCSI host adapter> 
    scsi1 : Adaptec AHA274x/284x/294x (EISA/VLB/PCI-Fast SCSI) 5.1.28/3.2.4 
	    <Adaptec AIC-7880 Ultra SCSI host adapter> 
    scsi : 2 hosts. 

If you don't see some sort of message indicating that the controller
has been recognized, you should take a look at the kernel config and
see if you've enabled the low level driver for your device.  If you're
trying to dynamically load it via a kernel module, then your should
check /etc/modules.conf (or perhaps /etc/conf.modules which is the
old way of specifying this file) to make sure that it lists the SCSI
device to load.  (I'm not sure what this should look like though.
I have my SCSI device drivers compiled into the kernel.)

The other way to check to see if the kernel knows about your device
is to take a look at /proc/scsi.  E.g, on one of my machines, I see:

    [root@ocotillo kev]# ls -l /proc/scsi
    total 0
    dr-xr-xr-x    2 root     root            0 Mar  6 18:29 aic7xxx
    -rw-r--r--    1 root     root            0 Mar  6 18:29 scsi
    [root@ocotillo kev]# ls -l /proc/scsi/aic7xxx/
    total 0
    -rw-r--r--    1 root     root            0 Mar  6 18:30 0
    -rw-r--r--    1 root     root            0 Mar  6 18:30 1
    [root@ocotillo kev]# cat /proc/scsi/aic7xxx/0
    Adaptec AIC7xxx driver version: 5.1.28/3.2.4
    Compile Options:
      TCQ Enabled By Default : Enabled
      AIC7XXX_PROC_STATS     : Enabled
      AIC7XXX_RESET_DELAY    : 5

    Adapter Configuration:
	       SCSI Adapter: Adaptec AIC-7890/1 Ultra2 SCSI host adapter
			       Ultra-2 LVD/SE Wide Controller at PCI 2/10/0
	PCI MMAPed I/O Base: 0xfafff000
     Adapter SEEPROM Config: SEEPROM found and used.
	  Adaptec SCSI BIOS: Enabled
			IRQ: 18
		       SCBs: Active 0, Max Active 16,
			     Allocated 30, HW 32, Page 255
		 Interrupts: 3193752
	  BIOS Control Word: 0x18a6
       Adapter Control Word: 0x1c5d
       Extended Translation: Enabled
    Disconnect Enable Flags: 0xffff
	 Ultra Enable Flags: 0x0000
     Tag Queue Enable Flags: 0x0003
    Ordered Queue Tag Flags: 0x0003
    Default Tag Queue Depth: 8
	Tagged Queue By Device array for aic7xxx host instance 0:
	  {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}
	Actual queue depth per device for aic7xxx host instance 0:
	  {8,8,1,1,1,1,1,1,1,1,1,1,1,1,1,1}

    Statistics:

    (scsi0:0:0:0)
      Device using Wide/Sync transfers at 80.0 MByte/sec, offset 31
      Transinfo settings: current(10/31/1/0), goal(10/127/1/0), user(10/127/1/0)
      Total transfers 2096981 (1181841 reads and 915140 writes)
		 < 2K      2K+     4K+     8K+    16K+    32K+    64K+   128K+
       Reads: 1093869   15588   21182   16957    8553   15930    9762       0
      Writes:  587447  122013   34568   14186    8612   11733  136581       0


    (scsi0:0:1:0)
      Device using Wide/Sync transfers at 80.0 MByte/sec, offset 31
      Transinfo settings: current(10/31/1/0), goal(10/127/1/0), user(10/127/1/0)
      Total transfers 1097667 (803114 reads and 294553 writes)
		 < 2K      2K+     4K+     8K+    16K+    32K+    64K+   128K+
       Reads:  664345    9200   36507   30406   18769   20384   23503       0
      Writes:  106106   24306   17178   11733   21970   42863   70397       0


You should look for something similar on your machine.  If you don't
see a likely looking controller in /proc/scsi, then you need to make
sure that you have the driver enabled.

Other random thoughts:

- You'll need to make sure you have generic SCSI support enabled in
  the kernel.

- Running ``scanimage --verbose --list-devices'' is a good place to
  start.

- You may need to do some additional sane configuration.  I seem to
  recall having to do this when I used SCSI as well as later on when
  I switched over to USB.

- Doing a ``tail -f /var/log/messages'' in an xterm while you're playing
  around with your SANE configs and running ``scanimage --list-devices''
  may yield some valuable clues.