Subject: Re: Sun compatability...
To: der Mouse <mouse@Collatz.McRCIM.McGill.EDU>
From: Jason Thorpe <thorpej@nas.nasa.gov>
List: port-sun3
Date: 01/13/1996 15:13:40
On Sat, 13 Jan 1996 15:51:14 -0500 
 der Mouse <mouse@Collatz.McRCIM.McGill.EDU> wrote:

 > Last I recall hearing, the sun3x kernel architecture (the -3/80 being
 > the only example I know of) was not supported.  Fuzzy memory says the
 > reasons are hardware ugliness, lack of docs, and lack of time/effort.

I got a chance to peer inside of a sun3x last weekend.  It's amazing how 
much that sucker looks like an SS1 motherboard, though with a much better 
CPU (*ahem* :-).

It has esp SCSI, an apparently different from 3/60 p4 connector for the 
framefuffer, Intel floppy controller, etc.

Since it does have a 68030, it will require a completely different pmap.  
Also, not sure how DVMA might be handled on a sun3x.

I've been thinking of how one might deal with the pmap issue.  The sun3 
would have to start using the `mmutyp' global like the other m68k ports 
do.  This would enable libkvm to deal with the differences (providing we 
adopt Leo Weppleman's libkvm enhancements, which I think we ought to 
:-).  Early on, in pmap_bootstrap(), the kernel would decide which type 
of MMU is present in the system: Sun or Motorola.  The exported 
functionality of the pmap module (i.e. what the MI VM system uses) would 
be accessed through trampoline functions.  The trampoline functions would 
in turn call the "real" routine based on MMU type.  I figure the neatest 
way to do this would be to have the startup code set up a pointer to the 
correct pmap ops switch, and have the trampolines just jump though 
function pointers.

Also, there's whether or not the sun3x boots with the MMU enabled.  If 
not, it would probably require some changes to the boot code, which uses 
DVMA, if I'm not mistaken.

Anynow, it's tricky, but I don't think it's impossible.  Whomever pulled 
it off would definitely get a cookie for effort (gonna have to put some 
serious thought into that code...)  Heck, doing it right would definitely 
be an achievement...

 > I too would love to see NetBSD/sun3x work; we have a semi-orphan -3/80
 > at work that would benefit from a real OS.  I think I even once offered
 > to test stuff for someone, but (as I expected) it wasn't to the point
 > where such offers were useful yet.

Well, I'd like to see it run, too.  JT Conklin has a 3/80, as does a 
friend of mine in Portland, OR.

Ciao.

--------------------------------------------------------------------------
Jason R. Thorpe                                       thorpej@nas.nasa.gov
NASA Ames Research Center                               Home: 408.866.1912
NAS: M/S 258-6                                          Work: 415.604.0935
Moffett Field, CA 94035                                Pager: 415.428.6939