[1401] in linux-scsi channel archive
Re: ncr53c8xx problem with a CLARiiON disk array.
daemon@ATHENA.MIT.EDU (Gerard Roudier)
Fri Feb 7 15:47:04 1997
Date: Fri, 7 Feb 1997 21:42:24 +0000 (GMT)
From: Gerard Roudier <groudier@club-internet.fr>
To: Richard Waltham <dormouse@farsrobt.demon.co.uk>
cc: linux-scsi@vger.rutgers.edu
In-Reply-To: <199702070120.BAA01804@farsrobt.demon.co.uk>
On Fri, 7 Feb 1997, Richard Waltham wrote:
> How about the DIF bit in the STEST2 register. (bit 5) This needs setting to
> interface to differential drivers correctly.
>
> It would be useful to sense this automatically during booting and SYMBIOS
> cards use GPIO3 to sense single or differential cards. GPIO3 is low
> for differential cards. Unfortunately at least one other manufacturer
> (Tekram) uses the same pin for some other function so this rules out
> automatic sensing of differential mode.
We can do something that seems safe enough to ensure SYMBIOS-like GPIO3
wiring, for example:
- save initial value of STEST2 register
- save initial value of GPCNTL
If BIOS setting was bit5(STEST2) set and bit3(GPREG) not writeable,
then if bit3(GPREG) not set, assume differential and preserve bit5
of STEST2.
But Tekram initial GPCNTL is 0x9 and it is in fact not safe enough.
Or, we can base decision only on initial value of STEST2, but we can
get side effects with incorrect initial settings ...
In my opinion,
all vendor-specific stuff must be disabled by default, unless
the driver is able to probe it safely. Unfortunately, that seems not
possible (at least for the moment).
A compile option is not safe too, being given that it could make the
driver broken for not enough compatible boards.
I would prefer a boot setup command option.
The latest revision (1.17) of the driver supports controller LED
attached to GPIO0.
It can be enabled by a CONFIG_EXPERIMENTAL option or enabled/disabled by
the boot command line for all attached boards.
The driver checks that initial setting of GPCNTL allows write to GPIO0.
That works only when BIOS is present and fortunately detects Tekram
difference (Initial value of GPCNTL is 0x9 for Tekram boards).
If somebody knows which GPIO pin is used by Tekram boards for LED, I am
interested in this info.
I am not satisfied about the current check of GPIO0_FETCHN for LED
support, but I donnot find better.
> May be another compile time option? There may be problems though if there
> is more than one 53c8xx host adaptor and they are a mixture of single ended
> and differential.
For the moment, the boot setup command allows to set driver options, so
for all installed NCR boards.
A boot setup per controller will help. I will add this in a future
version of the driver.
Send ideas.
Gerard.