Re: [U-Boot] [PATCH] arm: rmobile: Support build with gcc-4.6 or later
Hi, Thnak you for your comment. 2012/7/6 Tetsuyuki Kobayashi : > Hello, Iwamatsu-san > > (2012/07/06 9:06), Nobuhiro Iwamatsu wrote: >> Latest rmobile code was tested by using old gcc (gcc-4.4). >> When we use gcc-4.6 (or later), the build is made, but does not work. >> This solves a problem not to work by add -march=armv5 to compiple option >> when we built in gcc-4.6 (or later). >> I tested by linaro's compiler version 2012.04-20120426. > > Yes. I know recent gcc causes problem because of unaligned access. > There are 2 different proposals, but neither accepted. > > [PATCH] arm: enable unaligned access on ARMv7 > http://lists.denx.de/pipermail/u-boot/2012-June/125754.html > > [PATCH] arm: armv7: add compile option -mno-unaligned-access if available > http://lists.denx.de/pipermail/u-boot/2012-July/127260.html > > This patch is the third one. > >> --- a/arch/arm/cpu/armv7/rmobile/lowlevel_init.S >> +++ b/arch/arm/cpu/armv7/rmobile/lowlevel_init.S >> @@ -49,8 +49,6 @@ wait_interrupt: >> str r2, [r1] >> >> wait_loop: >> - wfi >> - >> ldr r2, [r1, #0xC] >> str r2, [r1, #0x10] > > I know "wfi" instruction causes compile error in -march=armv5. > Without this, it works but not so good because 2nd CPU wastes cycles. > > I wonder, is there any cheat such as ".word 0x" (putting instruction code > directly) > or something. I see. I'll fix. Thanks, Nobuhiro -- Nobuhiro Iwamatsu ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] arm: rmobile: Support build with gcc-4.6 or later
Hello, Iwamatsu-san (2012/07/06 9:06), Nobuhiro Iwamatsu wrote: > Latest rmobile code was tested by using old gcc (gcc-4.4). > When we use gcc-4.6 (or later), the build is made, but does not work. > This solves a problem not to work by add -march=armv5 to compiple option > when we built in gcc-4.6 (or later). > I tested by linaro's compiler version 2012.04-20120426. Yes. I know recent gcc causes problem because of unaligned access. There are 2 different proposals, but neither accepted. [PATCH] arm: enable unaligned access on ARMv7 http://lists.denx.de/pipermail/u-boot/2012-June/125754.html [PATCH] arm: armv7: add compile option -mno-unaligned-access if available http://lists.denx.de/pipermail/u-boot/2012-July/127260.html This patch is the third one. > --- a/arch/arm/cpu/armv7/rmobile/lowlevel_init.S > +++ b/arch/arm/cpu/armv7/rmobile/lowlevel_init.S > @@ -49,8 +49,6 @@ wait_interrupt: > str r2, [r1] > > wait_loop: > - wfi > - > ldr r2, [r1, #0xC] > str r2, [r1, #0x10] I know "wfi" instruction causes compile error in -march=armv5. Without this, it works but not so good because 2nd CPU wastes cycles. I wonder, is there any cheat such as ".word 0x" (putting instruction code directly) or something. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] arm: rmobile: Support build with gcc-4.6 or later
Latest rmobile code was tested by using old gcc (gcc-4.4). When we use gcc-4.6 (or later), the build is made, but does not work. This solves a problem not to work by add -march=armv5 to compiple option when we built in gcc-4.6 (or later). I tested by linaro's compiler version 2012.04-20120426. Signed-off-by: Nobuhiro Iwamatsu --- arch/arm/cpu/armv7/rmobile/config.mk | 26 ++ arch/arm/cpu/armv7/rmobile/lowlevel_init.S |2 -- 2 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 arch/arm/cpu/armv7/rmobile/config.mk diff --git a/arch/arm/cpu/armv7/rmobile/config.mk b/arch/arm/cpu/armv7/rmobile/config.mk new file mode 100644 index 000..1da0227 --- /dev/null +++ b/arch/arm/cpu/armv7/rmobile/config.mk @@ -0,0 +1,26 @@ +# +# (C) Copyright 2002 +# Gary Jennejohn, DENX Software Engineering, +# +# See file CREDITS for list of people who contributed to this +# project. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2 of +# the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# +PLATFORM_RELFLAGS += -fno-common -ffixed-r8 -msoft-float + +# Make ARMv5 to allow more compilers to work, even though its v7a. +PLATFORM_CPPFLAGS += -march=armv5 diff --git a/arch/arm/cpu/armv7/rmobile/lowlevel_init.S b/arch/arm/cpu/armv7/rmobile/lowlevel_init.S index 4f2ed02..daf6659 100644 --- a/arch/arm/cpu/armv7/rmobile/lowlevel_init.S +++ b/arch/arm/cpu/armv7/rmobile/lowlevel_init.S @@ -49,8 +49,6 @@ wait_interrupt: str r2, [r1] wait_loop: - wfi - ldr r2, [r1, #0xC] str r2, [r1, #0x10] -- 1.7.10 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot