linux-mips-fnet
[Top] [All Lists]

Re: SCSI & style of life

To: linux-mips@fnet.fr
Subject: Re: SCSI & style of life
From: Drew Eckhardt <drew@poohsticks.org>
Date: Tue, 21 Nov 1995 16:51:40 -0700
In-reply-to: Your message of "Tue, 21 Nov 1995 23:36:29 +0100." <951121233631.ZM7814@pag>
In message <951121233631.ZM7814@pag>, pab@RMnet.IT writes:
>X-Warning: this a message readable at multiple levels. Which ones, is 
>left to the reader. As hint, the number of two is given.
>
>So i recalled that somebody said that the controller is 
>actually an NCRsomenumber, and i started giving a look to some Drew's 
>code. Gee^3! there are _data structeres_ here! (hope they make sense, 
>anyway :). So i can be quite confident that some kind of scsi code will 
>be present in our project, someday.

I deleted the original message, otherwise I would have probably 
said something relevant sooner.  Anyways, we have Linux drivers for both
the NCR53c406a, and AMD53C974.  Both of these combine a NCR53c94 or
NCR53cf94 core (this is the closest valid match for the NCR59c94
mentioned) with on-chip buffers ('406a) or bus-mastering DMA engine (
AMD53C974); change the DMA part, and you're in business.

The NCR53c406a driver doesn't do disconnect/reconnect, and lacks the
framework needed to support multiple outstanding commands.  You
_really_ want those if you're using tape drives and sometimes CD ROMs.
Adding them is non-trivial.

The AMD53C974 does these things, and is derrived from my NCR5380
driver; which is among the most stable of the dumb-board drivers under
Linux (provided you don't try and use some off-chip handshaking
hardware which was barely documented, or the slave DMA that my
hardware didn't implement).  Ie, a few tweaks and we should have 
SCSI working, with good performance, and so-so CPU loading.

There aren't any endian assumptions in the 5380 code or SCSI code in
general (the 68K people are doing fine with it), so you should be
happy on a Big or Little endian MIPS.  

Does some one have a spare one of these machines?

<Prev in Thread] Current Thread [Next in Thread>