Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 11 Nov 96 13:54:49 MET
From:      Rob Schofield <rschof@mccomm.nl>
To:        Harlan.Stenn@pfcs.com
Cc:        freebsd-hardware@freebsd.org
Subject:   Re: After changing to an AHA2940 I can't boot the kernel.
Message-ID:  <199611111354.OAA00202@mccomm.nl>
In-Reply-To: <6755.847706992@mumps.pfcs.com>; from "Harlan Stenn" at Nov 11, 96 5:09 am

next in thread | previous in thread | raw e-mail | index | archive | help
Harlan Sez:

> (I really hate PC hardware)

;^D You and half the planet...
 
> OK, I upgraded my system.  The old config was:
> 
>       486/DX2-66, EISA, AHA1740, NEC2000 clone, 16550 SIO card, video
                          ^^^^^^^
 
> The new config:
> 
>       OPTi PCI P90, AHA2940, same NE2000 clone, SIO, and video cards.
                      ^^^^^^^
                      Ooops, I can see this coming...
 
> The new config *seems* to work OK (I can boot the DOS partition).  I

To be honest, you can't just "transplant" the kernel you had in the
old system, because there are significant device differences.

> The 2940 correctly sees all of my SCSI devices.

It will do, and it will even operate under DOS (as you note above, as
Adaptec cards all come up as a 1540 in standard/ISA mode), but...
 
> When I try to boot FreeBSD-2.1.5 I get *maybe* couple of seconds of the
> "spinner" and then the system just stops.  Sometimes I get the
> "text=xxx" prompt and a couple of seconds of "spinner", sometimes I
> don't even get the "text=xxx" stuff.

The spinner is stopping when the driver goes over into EISA Enhanced
mode from 1540 standard ISA.
The AHA 2940 does *not emulate* the AHA 1740 in enhanced mode. It uses 
a different mailbox scheme and other stuff. You cannot assume that 
enhanced mode drivers for the 1740 will work with the 2940, as it is also a
different bus architecture! When the driver tries to go into EISA enhanced
mode, there's no hardware there to support it...

The 2740 EISA board *also* does not emulate the 1740 in enhanced mode,
which gives no simple software upgrade even if you'd stuck with EISA.
For the 2940 (PCI) architecture, there isn't much in common.
You really have to change the driver, and in this case with PCI
architecture you'll have to move drivers anyway.
 
 Hmm... This is all very well, but what do you have to do to get off
 the ground? Well, since you can boot DOS from the Hard disk/DOS
 slice, then the controller IS functional, all you need to do is
 change your BSD kernel to use a different device driver for the new
 disk controller card.

 You should be able to boot from the install floppy and use the -c
 (change) option from the boot: prompt. This will allow you to disable
 the 1740 driver and select the 2940 driver. When you're booted, you
 can get to your kernel config file, edit it to put in the correct
 device driver for the 2940 and do a re-build/re-boot of the kernel.

> If I plug the SCSI disk cable from the "new" configuration into a box
> containing the "old" motherboard and the 1740, everything works just
> fine.

That's right, because the driver installed in the kernel is working
with the correct disk controller hardware.
 
> Suggestions on how I can get this beast working again would be most
> appreciated!

Hope this helps - I had the same agony with the upgrade path between
controller cards a while ago now, and in the end I had to spend about
an hour on the phone to Adaptec to an engineer to discover the
compatibility path between various different driver cards. It turns
out that they made a design decision to spilt away from the old
1540/1740 architecture in order to get better performance out of the
2740 EISA card. This just means you have to upgrade your drivers and
whizzo! you're in business.

Rob
--
Witticisms are hard to define on Monday mornings...

schofiel@xs4all.nl       http://www.xs4all.nl/~schofiel
rschof@mccomm.nl



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199611111354.OAA00202>