Subject: proposed change to sys/dev/isa/ultra14f.c
To: None <port-i386@NetBSD.ORG>
From: Mike Long <mike.long@analog.com>
List: port-i386
Date: 02/06/1996 11:26:20
I would like owners of Ultrastor 14f and 34f (heck, 24f too) cards to
try out this patch, and let me know if it works.  This change lets me
boot a GENERICOTHER kernel with my BT445C at 0x334 (bt1).  Without it,
my system hangs when this line of code is executed.

Basically, I broke the 16-bit I/O read that hangs my system into two
8-bit I/O reads.  Hopefully Ultrastor designed their hardware to
support this.

I have informed Buslogic of my troubles, and they are sending me new
BIOS and firmware ROMs.  I'll see if those eliminate the problem, as
well.  The BIOS and firmware now on my 445C are 4.83 and 4.21,
respectively.

The only other alternative, if this doesn't work, is to eliminate
support for Buslogic cards at 0x334 or Ultrastor cards at 0x330.

Comments?

*** /sys/dev/isa/ultra14f.c.orig        Thu Dec 28 07:24:57 1995
--- /sys/dev/isa/ultra14f.c     Tue Feb  6 01:01:39 1996
***************
*** 917,921 ****
                return ENXIO;
  
!       model = htons(inw(iobase + U14_ID));
        if ((model & 0xfff0) != 0x5640)
                return ENXIO;
--- 917,922 ----
                return ENXIO;
  
!       model = (inb(iobase + U14_ID + 1) << 8)
!               | inb(iobase + U14_ID);
        if ((model & 0xfff0) != 0x5640)
                return ENXIO;


-- 
Mike Long <mike.long@analog.com>           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