RTEMS 4.6 and tools
corsepiu at faw.uni-ulm.de
Mon Jan 19 09:42:00 UTC 2004
On Mon, 2004-01-19 at 09:49, Thomas Rauscher wrote:
> > -----Original Message-----
> > From: Steven Johnson [mailto:sjohnson at neurizon.net]
> > Sent: Monday, January 19, 2004 8:56 AM
> > To: rtems-users at rtems.com
> > Subject: RTEMS 4.6 and tools
> > Hi,
> > Im trying to use RTEMS 4.6 currently with a target that will
> > run ARM and Thumb
> > code. This requires thumb-interworking. Unfortunaltey the
> > libraries and gcc for
> > rtmes as built are not enabled for arm-thumb interworking.
> > Is it possible, before release to have the tools rebuilt for arm with
> > --enable-interworking option, which will build all the
> > multilib libraries that
> > will allow arm and thumb code to co-exist. As it stands, the
> > thumb libraries
> > are unusable because memcpy is an arm function in the thumb
> > library, and cant be
> > linked to from thumb code.
> > Im going to re-build the tools at my end, I just thought i
> > would mention it so
> > that if the tools were going to be re-built in the future the
> > --enable-interworking option could be added to the arm target.
> The best way (AFAIK) is to edit gcc/config/t-arm-elf in gcc's source
> and comment in the required multilib options (e.g big/litte endian
> arm/thumb, non-interwork/interwork).
That's a hack.
A proper way is to extend the corresponding rtems files, I had mentioned
in my other posting (They had not been present when 4.5.0 was current).
> This way, you get all useful combinations for libgcc.a and newlib.
> memcpy.S however really needs to be patched (for interworking code
> as well as big-endian code). I'm just testing the
> neccessary changes.
It would be nice to have the corresponding patches.
> > BTW, has anyone tried building rtems on a arm-thumb target
> > before? I know the
> > assembly that has to change (in RTEMS) to eliminate the
> > inline ARM code, but are
> > there any other gotchas I should be aware of.
> Our company uses RTEMS 4.5 in ARM and THUMB code with enabled
> Unfortunately our ARM CPU support has been developed in parallel
> to the official one and is quite different.
Nevertheless, it would be nice to get the sources and have them
integrated into the official source-tree.
> However, I'd really like to have them in sync. Can anyone
> give me some contact addresses of the ARM maintainer(s)?
There is no formal arm-RTEMS maintainer. The arm-port is part of the
RTEMS source-tree and is maintained by the RTEMS-maintainers.
> Maybe there is a way to merge both CPU kits.
It'll probably require some work, but I would not expect this to be too difficult.
All that would be required is your gcc/newlib patches and the sources of
your additions to RTEMS + At least one BSP
I would recommend you to submit/release them as "change-request" through
RTEMS GNATS (cf. http://www.rtems.com). Interested parties (Probably me
;) ) can pick them up and integrate them into the official sources.
More information about the users