Re: [PATCH] Ext.BIOS Translation for AHA-1542

Andries.Brouwer@cwi.nl
Sat, 10 Jul 1999 04:32:26 +0200 (MET DST)


> Linux-2.2.10 does not correctly identify the Extended BIOS Translation
> from the Adaptec AHA1542-CF bios.

> - if(mbenable_result[1] & 0x03) retval = BIOS_TRANSLATION_25563;
> + if((mbenable_result[0] & 0x08) && (mbenable_result[1] & 0x03))
> + retval = BIOS_TRANSLATION_25563;

Interesting. As far as I know, the possible values of the pair
(mbenable_result[0], mbenable_result[1])
(the two bytes resulting from the CMD_EXTBIOS command; the name is misleading)
are (0,0), (0,2), (8,1) and (8,2) on a AHA1542CF (or AHA1542CP).

We want BIOS_TRANSLATION_25563 if and only if mbenable_result[0] equals 8.
So, I think the patch is correct (but needlessly complicated)
for AHA1542CF. Why do you test `(mbenable_result[1] & 0x03)' ?

Does anyone know whether other values than the four values mentioned
can occur? Does anyone know the meaning of the second byte?
I find that it depends on the three settings
a) Extended BIOS translation for DOS drives > 1 GByte
b) Scan SCSIs
c) BIOS support for more than 2 drives
and equals 2 when at least one of b) and c) are enabled.

Last year Nick Andrew compared AHA1542CF with AHA1542CP
and reported that the second byte equals 2 on a AHA1542CP
when a big disk is present. Nick - do you recall your precise setup?
Did you have a single disk? And what is `big'?
Did you try to vary b) and c) ?
I find (0,2) also on AHA1542CF where you only got it on AHA1542CP.

Andries

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/