[Debian-coldfire-devel] Current Status?

Carsten Schlote c.schlote at konzeptpark.de
Tue Sep 25 20:59:22 UTC 2007


HI Wouter,

> -----Original Message-----
> From: Wouter Verhelst [mailto:wouter at debian.org] 
> Sent: Tuesday, September 25, 2007 8:17 PM
> To: Carsten Schlote
> Cc: debian-coldfire-devel at lists.alioth.debian.org
> Subject: Re: [Debian-coldfire-devel] Current Status?
> 
> Yes, that's what I've been using for now.

I'm using ptxdist for my other projects. So I started with some port of
the ltib affords to ptxdist. It's pretty much straight forward.

> Note that there are also some bugs in ltib; e.g., I still 
> haven't been able to create a native compiler; it doesn't 
> even build if I try to include a compiler in my ltib image.

I'm also working on some m68k port for the ptxdist based OSELAS
Toolchains. I get the compiler compiled. I'm at glibc right now... The
m68k/Coldfire code is poorly maintained, so some work is required at
this point. 

> Having precompiled coldfire-specific packages isn't hard, 
> indeed; in fact, I could theoretically set that up tomorrow. 
> It's just that that's not what I've been aiming for.

Fine. I never built a rpm or dpkg upto day nor maintained a debian
mirror. So you might help me to get all these dpks compiled :-) 

> > If the is project is still active,
> 
> We are, to some extent. I'm the only person who's been 
> working on this so far, and I've slowly come to the 
> conclusion that all this currently is a bit out of my league 
> -- at least the things I've been trying to do:
> modify the toolchain to no longer emit instructions that 
> aren't supported by the coldfire, while at the same time 
> being able to run on classic m68k machines, too.

Isn't there a working cross compiler for v4e cores? This should be ok
for the beginning. To compile a native gcc, we first need a working
glibc port, or use the glibc stuff from the cross compilers sysroot dir.

> 
> That's a bit harder than it sounds: first, there's one 
> instruction that exists on coldfire but not on m68k; second, 
> there are some instructions that behave slightly different 
> (so far I've found FMOVEM and incrementing or decrementing 
> addressing modes in byte context on register A7)

There are existing ports for v4e at CodeSourcery. I presume that this
compiler works ok for v4e targets. So why not using their patches?

> > I'd like to contribute over time:
> > * Basic kernels for MCF 547x/548x/5445x CPUs
> >   It should be possible to pass platform Ids to the kernel 
> init, so that
> >   a single image might fit the handfull of MMU enabled 
> Coldfire boards.
> > * A generic M68k GCC compiler targeted to Coldfire code generation.
> > * Updates for glibc and native linux threading stuff
> 
> That'd be cool. There's already someone working on adding TLS 
> support to glibc; you might want to coordinate with him.

Do you know who? I'd like to mail this person. Maybe some efforts can be
shared.

> As for the kernel: it was previously suggested that we write 
> some emulation layer for the missing opcodes on coldfire, so 
> that we could start using coldfire processors "right away". I 
> didn't do that, because I know even less about kernel 
> internals and opcode emulation than I do about compilers and 
> toolchains; but it'd be cool if someone (you, if you want to) 
> were to help there. After fighting with gcc on my own for so 
> long, I think I can now safely say that modifying the kernel 
> will be far easier for someone familiar with it.

Yes, that's possible. I wrote some FPU/Instruction emulation on Amiga
years ago for m68060. But such an emulation would consume noteable
amounts of your CPU time - It's slow and not worth any effort. We need
pure v4e/v4m code for performance.

You should give the CodeSourcery cross gcc a try. It uses glibc 2.5 and
a gcc 4.1.x. 

> What's in subversion. I know, that isn't much, and what's 
> there is incomplete and already outdated; but I had to do 
> this in my spare time, and for now I've been mostly pouring 
> over documentation, really.

So to conclude: We need a working and more or less up-to-date port of
glibc to v4e or some generic runs on all Coldfire mode. But as Linux is
only useful with MMU, we can savely assume v4 code and should optimize
for these targets.

With such a glibc we can setup a cross gcc. And finally create a native
compiler with this cross compiler. You will a cross compiler most time
(faster on modern PCs). But a host native gcc is some kind of must to
provide a distro.
 
> It'd be cool if there were at least one other person to 
> bounce ideas off of, but I haven't even had that.

Tell me more ;-)


Carsten


____________
Virus checked by G DATA AntiVirusKit
Version: AVKA 17.429 from 19.09.2007



More information about the Debian-coldfire-devel mailing list