Subject: Driver for DKB Ferret SCSI-II card
To: None <amiga@NetBSD.ORG, email@example.com>
From: ENV_REALNAME <firstname.lastname@example.org>
Date: 10/13/1995 12:21:50
I'm writing to the list in the hopes that SOMEONE will take
pity on me and help me with my dilemma. You see, a long time
ago, I was a happy 1200 owner running LINUX. Then I got the
wild notion to replace my IDE drive with a huge (1.2 gig) SCSI-II
Now I'm UNIXless.
Apparently, no driver exists for my particular configuration.
This strikes me as a bit odd, since I'm sure I'm not the only
person on the planet who owns this card (...or am I?). Anyway,
before I get down on my knees and grovel, here's my setup:
A1200, DKB Cobra accelerator with 68030@50MHz w/MMU, 25MHz FPU,
2 Megs CHIP, 8 Megs 70ns FAST ram. And the DKB Ferret SCSI-II
expansion card for the cobra board.
Now for the grovelling part: No one I know around here owns an
amiga, so I have no way whatsoever to do this even if I wanted to,
because I'd need a system with a running kernel in order to recompile.
So, here's the thing: I'd DESPERATELY like someone to attempt to
write a driver for this beast, so I can get some flavor of UNIX up
and running. Daniel Widenfalk in the NetBSD camp had said he'd do
it, but I haven't heard from him in almost 3 months, and he seems to
I can supply whoever wants to try this with the specs on the card's/
chips' behavior. In fact, it's included at the end of this missive.
I realize I'm asking someone to ddo a kernel recompile without actually
having access to the hardware to test the code. For your trouble, I'd
be willing to, say, send you the money to buy the 12-pack of beer I'd
buy you if you lived down the street from me. I'm just a poor college
studentt/amiga user who really misses his UNIX setup, and would be
forever grateful to whosoever would be willing to take this task on.
You can have my firstborn. I promise. :)
Please reply if you're interested!
mark C. Langston
BEGIN BOARD SPECS:
>From email@example.com Wed, 9 Aug 95 21:35:53
with BSMTP id 9033; Wed, 09 Aug 95 21:29:22 CDT
(UCLA/Mail V1.500 M-JNET8108-8108-70); Wed, 09 Aug 95 21:23:09 CST
<01HTVVQNM1Y88Y5QQC@ecl.psu.edu>; Wed, 9 Aug 1995 22:22:32 EDT
Date: Wed, 09 Aug 1995 22:22:32 -0400 (EDT)
Subject: Re: FAS246
Content-type: TEXT/PLAIN; CHARSET=US-ASCII
DKB Ferret Hardware Description
Uses FAS246 (pretty much identical to FAS216, NCR53C94, and others. a
couple extra registers, but they can be safely ignored)
The FAS246 requires DMA. The Ferret, however, uses PIO in the form of
pseudo-DMA transfers (in other words, the SCSI chip can't tell it from real
DMA). The mode that's used is the alternate DMA mode - using this mode
ensures that we can safely transfer 8 bytes after seeing DREQ go active.
(Don't try using the 'normal' mode; it won't work at all).
The SCSI stuff starts at offset $10000 from the start of autoconfig (all
offsets henceforth will be relative to that autoconfig+$10000 base).
The FAS is address at 0, with each 8-bit register (there are no 16-bit
registers) located at 0, 4, 8, 12, ...
The pseuod-DMA access location is at offset $80. This can be addressed as a
16-bit word or a 32-bit longword (longword accesses are broken down by
hardware into 2 16-bit accesses). Note that during DMA usage, *no* FAS
registers can be accessed! (Register accesses look like DMA cycles). That
implies that in your interrupt handler, you must check the control register
interrupt-pending bit (described below) *before* accessing any FAS registers.
The control register (not part of the FAS, but the Ferret) is a byte
register at offset $100:
Bit 6 Master interupt enable
Bit 5 Power down control (POD on Fas246) - always set to zero
Bits 4-0 reserved (unused)
Bit 7 DREQ status.
Bit 6 Interupt pending
NOTE: Bits 6 isleared on reads.
Interrupt level 2 is used.
This is the bare bones. If you need more help I can give you some code
snippets from the AmigaOS driver. I could also give you source to the Amax
driver (which is really simple, almost brain-dead :))