NetBSD-Ports archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

coldfire port

A question for the netbsd people --

I've been working on and off, along with some others, in
porting netbsd to the coldfire 54455 processor.

The coldfire family of processors started off life as a
Motorola design, and then that part of the company got
spun off as "Freescale Semiconductor".

The coldfire 54xx and 54xxx parts feature a mostly m68k-ish
instruction set, some have hardware floating point (different
than a 68881), and a completely new MMU.  Trap frames are
also different than the m68k family.

The question that I've been mulling over is where to cram
the coldfire specific pieces of the kernel tree.  We started
off work with the family being "m68k" (a la the way the
mvme68k port works), but some significant part of the work
isn't really m68k-ish.  Should there just be a separate "coldfire"
processor family, or just stuff it into "m68k/coldfire"?

There's some stuff that can be used directly from m68k, but
certainly not all.

There are similar thoughts about the assembly stubs in libc
and related places.  If I leave the port based on the m68k
family, I'm going to have to #ifdef basically all of these
assembly files.

The coldfire is like a m68k in terms of assembly instructions, and
general purpose registers, but most of the other really low-level stuff
(floating point, MMU) is different.  Does the instruction set
similarity with the m68k just cloud the issue that this is really a
different family of processors?

Opinions about this?


Home | Main Index | Thread Index | Old Index