Subject: Re: KA6x0 support
To: None <port-vax@NetBSD.ORG>
From: Ty Sarna <tsarna@endicor.com>
List: port-vax
Date: 06/18/1998 18:26:30
In article <9806181536.AA04264@blackwidow.SOML.CWRU.Edu>,
Michael Sokolov <msokolov@blackwidow.SOML.CWRU.Edu> wrote:
>    The problem you are going to run into is not with addresses, but with
> NetBSD's code (mis)organization. In any BSD-style OS all devices have to be
[...]
> BabyVAX would be a much better term), but this mechanism also makes no
> provision for supporting non-Q-bus devices on Q-bus CPUs. When you say that
> you will make the SHAC and SGEC drivers "just another pair of drivers",
> what bus are you going to attach them to logically? vsbus? In this case

To any busses they need attachments, I presume.  NetBSD is designed to
easily support drivers that can attach to multiple busses.  A quick
search turned up one with attachments to busses as diverse as VME, ISA,
ISA Plug'n'Pray, PCI, and TurboChannel (and others, but using a
different mechanism)

> you'd have a lot of fun explaining to the NetBSD code that a VAX may have
> both a uba (Q-bus) and a vsbus. Invent yet another "virtual bus"? In this

Why? Many machines that NetBSD runs on have multiple real busses
(Including virtual busses, all of them have more than one), some with
complex hierarchies of busses that can change and rearrange from model
to model, machine to machine.  On the i386, you can have PCI, EISA, and
ISA, for "real" busses, and one kernel can easily support whichever
combination happen to be on the particular machine it's running on, in
whatever hierarchy (is ISA or EISA a primary bus, or is it attached via
a device on the PCI bus, etc).  You can even have PCI busses attached to PCI
busses. 

Look at NetBSD/alpha for even more complex examples.

Heck, using config and the bus_{mem,dma} stuff, you could even attach
busses on remote machines and use peripherals (even DMA
peripherals) on them as if they were local (but slower, of course!),
with a little work.

>    I'm faced with such problems all the time. My solution is to use my
> imagination. First to imagine what does a CPU look like without having any

That's one of your problems, and that's one reason why people ignore
you.  You criticise things based on your imagination of what they are,
rather than the facts.  You've constantly complained about the NetBSD
config mechanism, and here you are demonstrating that you don't know the
first thing about it.  You don't bother to do any research at all, you
just decided that since it wasn't what you were used to, you'll just
imagine it's something awful and complain about it. 

You go around badmouthing NetBSD here and on other lists, based on your
imaginzation of what NetBSD is, when that's usually wildly at odds with
the facts. Maybe we should go around telling people you're a shoplifter,
or a child molester, or whatever we imagine you _might_ be, without
doing any research.