[vortex] Tyan Thunder K7 S2462 Dual 3c59x

Bogdan Costescu bogdan.costescu@iwr.uni-heidelberg.de
Fri Jan 18 11:11:01 2002


On Wed, 16 Jan 2002, Donald Becker wrote:

> Since the driver doesn't know if the EEPROM uses 6 or 8 address bits, it
> determines the size by either trying to read a location and verifying
> the result, or sending out address bits and looking for the leading
> data marker bit.

Thank you for the explanation. It seems logical... but I don't really 
understand the code from vortex-diag which implements it, after an 
afternoon of comparing code and docs.

Firstly, for 905B, there are only 6 bits of address, so that's fine. For 
905C, there can be 2K, 4K and 16K chips (cf. docs), which means up to 10 
bits. However, page 81 of the 905C PDF says that bits 6 and 7 of the 
Command Reg are used for the command while higher order address bits are 
bits 8 to 11. There is also a paragraph just above the table that says 
something about legacy software functionality and some bit swapping: now I 
don't understand why they mean by this, as the "legacy" hardware didn't 
have more than 6 bits address space, so legacy software shouldn't be 
supposed to use more than 6 bits. If this table is correct, then the 
actual way of handling more than 6 bits in vortex-diag is incorrect, as 
the command should not be put as the 2 MSB, but always at bit 6 and 7.

Secondly, I don't understand the way of separating 6-bit and 8-bit ones 
(the "else" branch of the comparison with 0x5555). How can the second 
comparison (with 0xffff) tell this ?

> If the address size is incorrectly detected as 8 bits, the driver sends
> out 8 address bits and only the first six are used by the EEPROM.

OK, but if the detection mechanism is improved or the EEPROM size is 
somehow forced, data should be accesible (both read and write), right ?

-- 
Bogdan Costescu

IWR - Interdisziplinaeres Zentrum fuer Wissenschaftliches Rechnen
Universitaet Heidelberg, INF 368, D-69120 Heidelberg, GERMANY
Telephone: +49 6221 54 8869, Telefax: +49 6221 54 8868
E-mail: Bogdan.Costescu@IWR.Uni-Heidelberg.De