Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 29 Sep 1997 13:56:34 -0700
From:      Julian Elischer <julian@whistle.com>
To:        MetcalJM@utrc.utc.com
Cc:        gibbs@FreeBSD.ORG, questions@FreeBSD.ORG
Subject:   Re: Q: Good learning documents for SCSI device drivers
Message-ID:  <34301602.167EB0E7@whistle.com>
References:  <95A2D2968BD9D011A38B00A0C95727DB27AB03@express2.res.utc.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi,
 I wrote most of hte present SCSI system for FreeBSD, however it's
been several years since I did that, and I've been working on other
things. Thw adapters I wrote drivers fro were all "intelligent" 
adapters so I never really got into the "NEXUS" stuff.

Basically the nexus is a particular pairing of a client and a requestor,
for an operation.. I never got much more into it than that..

I can suggest you visit the following ftp site:

ftp://ftp.symbios.com/pub/standards/io/
where you will find the SCSI standard and many ther related things.

While I can give comments on how the present SCSI system is 
written, that will soon be a thing of the past.

The present SCSI system was good for its day, but time has marched
on and Justin (CC'd) is writing a new system based on the SCSI-CAM
standard. This should allow us to meke better use of
3rd party CAM modules.

Never-teh-less, if you have specific questions about the
UPPER layers of the current SCSI system, feel free
to ask (I may not know the answer however). 
There was a massive set of changes that went into it a couple of
years ago that obfuscated a lot of what's going on behind MACROs 
which I was not happy with, and some of the structures changed
function with time, and are there-for misleadingly named.

I started several times on documents on how it fitted together but
never got past the introduction.


MetcalJM@utrc.utc.com wrote:
> 
> Hello,
> 
> I am writing to ask if anyone can point me to some good learning
> documents for learning the basics of the SCSI subsystem.  I have
> an open problem with the gnats database
> 
> http://www.freebsd.org/cgi/query-pr.cgi?pr=4498
> 
> where my Iomega Zip 100 SCSI drive atached to my ProAudioStudio
> SCSI adapter is having data corruption problems.  I have written
> to both the FreeBSD and LINUX authors of the ncr5830 code and
> have received no replies.  I understand since few people actually
> using FreeBSD use such hardware, I am probably on my own for a
> fix.  All I'm asking is some direction in finding good books
> to learn from in order to solve the problem myself.  I have
> never written any kind of device driver, much less a driver
> for a SCSI device.  I have fairly good C programming skills
> (ie, I can understand the logic flow of the ncr5830.c kernel
> code and understand the definitions and usage syntax of the data
> structures).  But the code is otherwise meaningless to me
> since I have no idea about how the code interacts with the
> hardware (eg. what's "establising a nexus" mean?).  I'm sure
> there are plenty of great books out there where a motivated
> person like myself can learn what he needs to know.
> 
> I hope some kind soul can give me some focus.  Understand
> that I would need the basics, yet I would also need enough practical
> focus, from whatever sources are suggested, to actually trouble-shoot
> and hack into some real code.  Ideally, literature that might cover
> the ncr5830 would be great!! I understand this to be a well documented
> and understood device.
> 
> Thanks in advance for any help!!
> 
> JM
> -----------
> 
> > Jeffrey M. Metcalf
> > Assistant Computer Systems Support Engineer
> > United Technologies Research Center
> > metcaljm@utrc.utc.com
> > (860) 610-7576
> >
> >



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?34301602.167EB0E7>