SCSI scanner, sym/ncr driver, pt(4)
olli at lurza.secnetix.de
Wed Jan 25 00:51:32 PST 2006
I'm running FreeBSD 6-stable. Recently I have connected
an old SCSI scanner (EPSON GT-9000 a.k.a. ES-1200C) to
an even older NCR810 host adapter. It works fine with
SANE from the ports collection, after tweaking the config
a little bit. However, I have a few questions.
First I noticed that the NCR810 host adapter seems to be
supported both by ncr(4) and sym(4). I was unable to find
any documentation about the advantages of each. The man
pages don't mention when to prefer one over the other.
I tried sym(4) first because it seems to be newer, and
it works fine. But I wonder if the ncr(4) driver offered
any advantages. I mean, there must be a reason it is
still in the source tree and not declared obsolete.
By the way, these are the sym(4) probe messages:
sym0: <810> port 0xec00-0xecff mem 0xe6403000-0xe64030ff irq 11 at device 20.0 on pci0
sym0: No NVRAM, ID 7, Fast-10, SE, parity checking
I assume that ncr(4) is also giant-locked, right?
The second question is probably a SANE issue, not a FreeBSD
one, but I'll mention it to the experts here anyway. :-)
The scanner is probed and attached to the pt(4) driver:
pt0 at sym0 bus 0 target 4 lun 0
pt0: <EPSON SC ANNER GT-9000 1.11> Fixed Processor SCSI-CCS device
pt0: 3.300MB/s transfers
However, the SANE back-end driver (man pages sane-epson(5)
and sane-sscsi(5)) doesn't want to use /dev/pt0. When I
try to access it, I get "invalid argument". The device
node does exist, of course. But when I tell SANE to use
the pass device, it works.
The problem with that is that the number of the pass
device is not always the same. It can be /dev/pass0 or
/dev/pass1, depending on whether the scanner was on
during boot, or switched on later and detected by re-
scanning the SCSI bus. That's somewhat annoying, because
I have to change the device setting all the time.
My guess is that accessing the scanner through the pt0
device requires special API support in the SANE driver,
while using the pass device does not. Is that right?
Thanks in advance for any hints and insights!
PS: No need for Cc, I read the freebsd-scsi list.
Oliver Fromme, secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing
Dienstleistungen mit Schwerpunkt FreeBSD: http://www.secnetix.de/bsd
Any opinions expressed in this message may be personal to the author
and may not necessarily reflect the opinions of secnetix in any way.
"C++ is the only current language making COBOL look good."
-- Bertrand Meyer
More information about the freebsd-scsi