Subject: Re: NetBSD/mac68k on PowerBook 190: ADB Problem
To: Burkhard Schmidt <520059549844-0001@t-online.de>
From: Bob Nestor <rnestor@home.org>
List: port-mac68k
Date: 01/20/2002 12:47:00
On 1/20/02 10:11 AM, Burkhard Schmidt (520059549844-0001@t-online.de)
wrote:
>It seems that this is an ADB problem. The NetBSD_ROM application states
>the following, among many other:
>
>Basic hardware required for NetBSD/mac68k is present, but the following
> things might be problems that need to be considered:
> ADB interrupt address is required
> PM ADB interrupt address is required
>
>I'd be very glad if someone could advise me how to solve this problem.
Years ago NetBSD/mac68k was built using some of the ROM routines, and
various models of the Mac had different entry point addresses for those
routines. These are stored in tables in the kernel. The old NetBSD_ROM
utility was written back then to try and figure out what the necessary
addresses would be for a model of the Mac that it was run on. These were
then added into the kernel tables and a new kernel was generated.
Unfortunately there are some Macs that require ROM patches which affect
the routines we needed to use and ROM patches are loaded as INITs (or
some such thing) by MacOS (System). Since NetBSD doesn't rely on MacOS
once it is up and running this ROM patch scheme made it nearly impossible
to support some of these Macs.
About that time there was an effort under way to eliminate the need for
the ROM routines and provide our own code to handle the ADB. When the
bugs were finally worked on on this scheme it became the standard method
of ADB support for both the GENERIC and GENERICSBC kernels. All releases
since 1.3 have used this scheme as I recall.
So the answer to your question is that the missing addresses that
NetBSD_ROM is complaining about are not used by the kernel you are
running. You obviously have uncovered a problem in the ADB/PM_ADB
handling in the current code though. If you'd like to try an older style
kernel using the onboard ROM routines someone could try building it but
you'd hove to provide the addresses NetBSD_ROM found when it probed your
hardware. If it didn't find a valid address that could be a problem.
The utility never was very robust and does have some problems identifying
some things.
At one time the NetBSD_ROM utility used to ask you people to send the
output to me so I include them in the kernel tables, but the e-mail
address it used is no longer valid. But if you send me the output I'll
see what I can do to get you a kernel built.
-bob