Re: Porting to my custom 030 board

Lawrence Manning <[email protected]> Wed, 1 Oct 2025 11:59:01 +0100
Newsgroups gmane.os.netbsd.ports.m68k
Message-ID <CAOO0NhuP7OTTSZF=4wCKnW_NXE9THj_KywH4mMtXXXgKjd0aGg@mail.gmail.com>
Hi Chris,

Thanks for the mail and your interest in my board, and desire to get
NetBSD working on it. I've had a very brief look at 11 but still can't
really figure out how to begin my own porting effort. Do you have a
set of changes which just add support for a new machine? Ideally
something m68k, but I might glean some knowledge looking at another
machine type.

FWIW my offer is still open, but I can gather from the lack of
interest that either not enough skilled people are interested in such
a board, or that they know it would be a reasonable amount of work
even for them?

Cheers,

Lawrence

On Wed, Oct 1, 2025 at 12:59=E2=80=AFAM Chris Hanson <cmhanson@eschatologis=
t.net> wrote:
>
> On Feb 25, 2025, at 2:49=E2=80=AFAM, Lawrence Manning <[email protected]=
> wrote:
> >
> > The amount
> > of repetition across sys/arch generally is surprising and
> > disapointing. Likewise the lack of a clear hierarchy from processor
> > architecture down to board or "computer type" is also surprising. I'm
> > sure it's all done for logical reasons, but the barrier is
> > surprisingly high, for me.
>
> To resurrect this old thread, I think what's making it a little more conf=
using than it needs to be is your expectation that there's a hierarchy from=
 processor architecture to machine. While it's unfortunate that they're mix=
ed together under sys/arch, in NetBSD the processor architecture and machin=
e are really fairly orthogonal: For the most part the code that's used for =
interfacing with a specific peripheral is the same across machines, and the=
 code that's used for dealing with specific processor architecture is also =
the same across machines, and in both cases they're at least partially if n=
ot mostly de-duplicated.
>
> There has also been a lot more work done in the past couple years, includ=
ing a bunch after your post, to further consolidate code including for the =
68K architecture. If you look now at the NetBSD 11 branch you should hopefu=
lly see a lot less duplication than in the NetBSD 10 branch, and less still=
 in trunk. Also, some of what looks like duplication may actually be indire=
ction, where there's a driver with a common name that handles the slight di=
fferences between machines that use the same peripherals, but mostly calls =
through to that peripheral's driver. (No doubt there's more deduplication t=
o be done in that area too.)
>
> For your specific board, you should be able to make use of mostly generic=
 drivers and mostly generic 68030 processor support; the contents of your s=
pecific sys/arch/maxi030 machine's directory should be almost as thin as th=
ey are for (say) sys/arch/virt68k, and should mostly involve what's needed =
to glue the busses together and declare the addresses of the peripherals.
>
>   -- Chris
>