Subject: Re: dev/ofw/ofdisk.c
To: Frank Wille <frank@phoenix.owl.de>
From: Tim Rightnour <root@garbled.net>
List: port-ofppc
Date: 10/15/2007 12:34:08
On 15-Oct-2007 Frank Wille wrote:
> Tim Rightnour wrote:
> But it should really be merged back as soon as possible. The current source
> in ofppc is useless.

Yes.. We are cleaning up a few things on the ports we have working, and just
trying to make sure our last few ducks are in a row.  Mostly our efforts right
now are just concentrated on making sure the SMP on macppc is up to snuff, and
that we won't have to rototill anything in the PIC structure to make it perform.

> You can use me any time for Pegasos2 and Efika. I will also get a PowerMac
> this week (to have a OFW machine which really works with NetBSD ;).

I have come into posession of a Pegasos2 recently, and have just started to
hook it up today.  I'll be sending you another email off-list about this.

>> 2) We should be using the RTAS/OFW/whatever at all times to *find*

> I can only agree, and I guess nobody here will disagree.
> 
> I worked on the PCI-bridge code for the Pegasos2 yesterday, and while
> implementing direct access to the Marvell registers, like the OpenBSD port
> did, I realized that it makes no sense. The code would be plain ugly, and the
> Marvell would need to be mapped at a different location than the io or mem
> space of the bridge.
> 
> I really would like a PCI-config method like Jochen has done! What do you
> think about it?

I don't have an issue with that code at all, though I haven't tried it yet
obviously.  One of the design elements in ppcoea-rennovation is that we provide
standard routines for talking to pci/isa/etc, but we also allow the port to
easily override each one of those routines if that port has a better way to do
it, or must do it in another way.  Prep does this for certain bridge types, 
and macppc pretty much overrides them all.  It's relatively trivial to just
override one or two routines.

I really want to get ofppc fixed up.  Originally, I did not want to base it on
the Pegasos, because, IMHO, the Pegasos is a bit wierd, whereas the older IBM
CHRP based machines seem to be more of a formal standard machine.  I wanted to
design around those, and handle the Pegasos as an egde case.  However, I don't
have a CHRP RS6k, and I do have a Pegasos, so I may have to rewire some stuff
at a later date when the IBM box magically drops into my lap.

(When I say wierd, I mean in the fact that formally, a CHRP machine is supposed
to have an OpenPIC and a cascaded i8259, and a few other things like that.  The
Pegasos is a legitamate CHRP compliant system, of course)

---
Tim Rightnour <root@garbled.net>
NetBSD: Free multi-architecture OS http://www.netbsd.org/
Genecys: Open Source 3D MMORPG: http://www.genecys.org/