[U-Boot-Users] PLATFORM_CPPFLAGS for CPU=pxa and ixp

Wolfgang Gartz Wolfgang.Gartz at aastra.com
Sat Oct 6 19:42:30 CEST 2007


Hello all,

I'm using U-Boot-1.2.0 on a board from Phytec with PXA270 processor
(ARCH=arm, CPU=pxa, board=pcm027).
During compilation with gcc-4.1.2, I get one compiler warning for
each source file, for instance:
asm.S:0: warning: target CPU does not support interworking
cmp.c:0: warning: target CPU does not support interworking
...
It seems for me, the compiler thinks that the actual cpu is not able
to mix original 32 bit ARM code with 16 bit thumb code.
Currently compiler flags for CPU=pxa (in cpu/pxa/config.mk) are:
PLATFORM_CPPFLAGS += -march=armv5 -mtune=xscale .
When I change it to
PLATFORM_CPPFLAGS += -march=armv5te -mtune=xscale
all of this warnings disappear.

The manual says, all generations of XScale processors comply with
the "armv5te" architecture.

For comparison I have looked in another XScale cpu/ixp/config.mk:
PLATFORM_CPPFLAGS +=
                  -mbig-endian -march=armv5te -mtune=strongarm1100
Here we have "-march=armv5te".
I don't have a IXP cpu, but from theory: is it better to set
"-mtune=xscale" here to for the CPU=ixp :
PLATFORM_CPPFLAGS += -mbig-endian -march=armv5te -mtune=xscale
because Strongarm1100 was the predecessor of XScale ?

There are no changes of PLATFORM_CPPFLAGS for CPU=pxa and ixp
between U-Boot-1.2.0 and U-Boot-1.3.0-rc2.

Therefore my question: are there special reasons to use
-march=armv5           for pxa   and
-mtune=strongarm1100   for ixp   ?

Kind regards
Wolfgang Gartz

Development engineer
Aastra DeTeWe GmbH
Zeughofstr. 1
D-10997 Berlin






More information about the U-Boot mailing list