Update: I reflashed the SCSI BIOS, see below
Recently I picked up a huge Compaq I/O card. It's a combo of three devices by the looks of it. (I will run a PCI sniffer later in this post). The GPU is an ATI Rage IIc PCI with a VGA output. There is an LSI 53C895 PCI-SCSI controller and an Intel SB82558B FastEthernet NIC.
The card also has a LOT of GPIOs: Four fan controllers, three temperature sensors, an unpopulated I2C connector and a NEC LCD controller... It's so big it has a handle on the side opposite to the bracket.
The back is mostly passives and some jellybean logic ICs. It's an 8 layer PCB, as indicated on the edge. There is no thieving visible, oddly enough. However the back of the Ultra 2 LVD SCSI connector has some amazing matched pairs maze.
The Compaq engineers designed a check in the card - it refuses to boot when inserted into an unsupported computer. Which sucks pretty much, as it would make a great addition to some build - 3 devices in one PCI slot, including a graphics card.
Searching the net I stumbled upon a Vogons thread describing someone with a similar card and a similar problem. Their card would not boot either unless inserted into a ProLiant.
They mentioned that reflashing the SCSI controller bios with a generic LSI version nearly worked for them
The SCSI BIOS has to be disassembled with all those Compaq proprietary features removed, but the easier way is just to replace it with a reference LSI SCSI BIOS. The latest I could find is v4.19, but it stores configuration data in NVRAM. Compaq engineers have designed a different NVRAM interface, so it doesn't work with the LSI BIOS. I have flashed the less functional v4.12 BIOS which doesn't store anything in NVRAM and it does work. I could boot to Windows XP and it picked up drivers just fine.
This gave me a hint that the problem might be lying in the SCSI bios. Having no flash programmer, I decided to simply remove the Flash chip...
...and the card booted just fine!
Probably as soon as I get my hands on a flash programmer, I'll flash the LSI bios version mentioned in the thread
In order to do that I have booted it in a Pentium-II MMX board I have lying around, since the card would not boot in my 486. The Pentium board has way more integrated peripherals (USB, IDE) on the PCI bus, so the results might be a bit blurry as it's hard to say what's integrated and what is not
PCI.EXE has found the following (part of the output related to the mobo chipset ommited):
Oddly enough there is a 21152AB chip on the board, but it's Intel branded - top right edge of the PCI connector. And the same case is with my quad Sun Microsystems NIC, that has a 21153-AC chip that is detected as DEC but branded Intel.
Having a programmer now, I decided to update the bios using the binaries from the Vogons thread.
The card works flawlessly
Unfortunately I couldnt play Quake due to lack of USB drivers for the test motherboard in Windows XP :(
That's all for now. Thanks for reading and feel free to check out other posts on my site