Subject: Re: color lkm load panic
To: Michael G. Schabert <mikeride@prez.buf.servtech.com>
From: Paul Goyette <paul@whooppee.com>
List: port-mac68k
Date: 07/16/1997 18:46:33
Frankly, I don't know if it would break or not on the 840AV - this is the
first I've heard of these "special" NuBus cards!

I'd be rather surprised if the RAM card worked under NetBSD unless someone
has made a patch to map the slot space - I haven't noticed any such code
in the "official" distribution.

Anyway, the only thing that might screw things up using my (soon-to-be-
released) slot manager would be the card's 8 byte record in PRAM.  The
slot manager probes all possible address spaces looking for cards, and
updates all slots' PRAM records.  Since the RAM card would most likely not
be mapped by the kernel (happens at bus-space probe time, long before the
LKM would get loaded), the slot manager would assume that the card had
been removed and reset the PRAM record for it.  (A side effect of this is
that using the slot manager under NetBSD will also reset the PRAM record
for "slot 0" - the internal video pseudo-slot.)

Finally, the slot manager I'm working on won't be enough by itself for
anything to work.  It will simply provide a documented method for
accessing any arbitrary NuBus card.  Someone will still have to write a
NetBSD driver to do such mundae things as load the driver code from the
card, interpret NetBSD I/O requests, and pass them along to the card's
driver in an appropriate format.  So, except for the probing and the PRAM,
my LKM won't screw around with any cards that don't have an additional
layer of driver software.  Fortunately for some of us, Taras Ivanenko has
already written that additional layer for display cards, at least enough
for making it possible to run X in color (my primary goal).

(I've cross-posted your question and this response to port-mac68k since
there's apparently quite a bit of interest...)

On Wed, 16 Jul 1997, Michael G. Schabert wrote:

> >I'm currently working on putting together an LKM to use the _entire_ MacOS
> >slot manager (not just emulate it, as the current LKM does, but actually
> >use nearly all of the ROM-resident routines).  This, coupled together with
> >a few more routines to emulate MacOS ROM A-traps (like, _GetHandle and
> >_SwapMMUMode) will let us use nearly any Nubus board.
> >
> >I'm still some time away from finishing the work, and so far I only have a
> >Mac IIci to verify ROM addresses from, but I expect to have an alpha ready
> >for testing in a few weeks.
> 
> 
> Would this break under a Mac Quadra 840AV? I know that the 840 has a
> special NUBUS that enables a burst-mode DMA that no other Mac uses. This
> was why a company made NuBus RAM cards for the 840 only, that could each
> increase your RAM by 256MB (total 768 on the cards + the 128 motherboard).
> If this access method would break your system, would it only affect us if
> we had a NuBus card, or would even just sensing for one screw it all up?
> 
> Just a thought
> Mike
> 
> Bikers don't *DO* taglines.
> 
> 
> 

-----------------------------------------------------------------------------
| Paul Goyette       | PGP Public Key fingerprint:  | E-mail addresses:     |
| Network Consultant |     0E 40 D2 FC 2A 13 74 A0  |  paul@whooppee.com    |
| and kernel hacker  |     E4 69 D5 BE 65 E4 56 C6  |  paul_goyette@ins.com |
-----------------------------------------------------------------------------