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