Subject: Re: port-i386/2109: ultra14f.c byte-read of board ID fails on 34f (mine at least)
To: None <mhw@netris.org, gnats-bugs@NetBSD.ORG>
From: Mike Long <mike.long@analog.com>
List: netbsd-bugs
Date: 02/22/1996 15:19:28
>Date: Thu, 22 Feb 1996 07:16:56 -0500 (EST)
>From: mhw@netris.org

>>Description:
>Recent changes to ultra14f.c cause it to read the board ID and
>configuration using byte-reads instead of word-reads, perhaps because
>this was necessary for someone else.  On my 34f (VLB), the byte-reads
>don't yield a valid board ID, and the board is not recognized.

What do they yield?  Do you get something semi-recognizable, or do you
just get 0xFFFF?

>>Fix:
>The following patch causes the driver to first attempt byte-read, and
>then use word-read if that fails.

This patch will hose my BT445C, as described in my previous PR
(port-i386/2051) on this topic.  Any word-length I/O read of port
0x334 (the BT445C's base address) locks it up solidly.  A better
solution to your problem is to return to always using word-length
reads.

I reported the lockup to Buslogic and they sent me more recent BIOS
and firmware ROMs for my 445C.  I haven't installed them yet, because
the current rev of the ultra14f driver doesn't use word-length reads.
The ROM versions on my BT445C now are BIOS 4.83, firmware 4.21.  The
ones Buslogic sent me are BIOS 4.92E, firmware 4.25.  I will install
the new ROMs and see if my 445C can tolerate a word-length read of its
base address.
-- 
Mike Long <mike.long@analog.com>     <URL:http://www.shore.net/~mikel>
VLSI Design Engineer         finger mikel@shore.net for PGP public key
Analog Devices, CPD Division          CCBF225E7D3F7ECB2C8F7ABB15D9BE7B
Norwood, MA 02062 USA       (eq (opinion 'ADI) (opinion 'mike)) -> nil