* [U-Boot] [PATCH v2] tegra: override compiler flags for cmd_nvedit
[not found] <1336162232-19714-1-git-send-email-amartin@nvidia.com>
@ 2012-05-14 20:25 ` Allen Martin
2012-05-14 23:14 ` [U-Boot] [PATCH] tegra: override compiler flags for low level init code Allen Martin
1 sibling, 0 replies; 7+ messages in thread
From: Allen Martin @ 2012-05-14 20:25 UTC (permalink / raw)
To: u-boot
Override -march setting for tegra to -march=armv4t for cmd_nvedit.c
The recent change to use -march=armv7-a for armv7 caused a regression
on tegra because tegra starts boot on a arm7tdmi processor before
transferring control to the cortex-a9. While still executing on the
arm7tdmi there is a call to getenv_ulong() that causes an illegal
instruction exception if cmd_nvedit is compiled for armv7.
Signed-off-by: Allen Martin <amartin@nvidia.com>
---
arch/arm/cpu/armv7/tegra2/config.mk | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/arch/arm/cpu/armv7/tegra2/config.mk b/arch/arm/cpu/armv7/tegra2/config.mk
index fe9ef5b..3f068dc 100644
--- a/arch/arm/cpu/armv7/tegra2/config.mk
+++ b/arch/arm/cpu/armv7/tegra2/config.mk
@@ -24,10 +24,11 @@
# MA 02111-1307 USA
#
-# Tegra has an ARMv4T CPU which runs board_init_f(), so we must build this
-# file with compatible flags
+# Tegra has an ARMv4T CPU which runs board_init_f(), so we must build these
+# files with compatible flags
ifdef CONFIG_TEGRA2
CFLAGS_arch/arm/lib/board.o += -march=armv4t
+CFLAGS_common/cmd_nvedit.o += -march=armv4t
endif
USE_PRIVATE_LIBGCC = yes
--
1.7.9.5
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] tegra: override compiler flags for low level init code
[not found] <1336162232-19714-1-git-send-email-amartin@nvidia.com>
2012-05-14 20:25 ` [U-Boot] [PATCH v2] tegra: override compiler flags for cmd_nvedit Allen Martin
@ 2012-05-14 23:14 ` Allen Martin
2012-05-14 23:23 ` Stephen Warren
1 sibling, 1 reply; 7+ messages in thread
From: Allen Martin @ 2012-05-14 23:14 UTC (permalink / raw)
To: u-boot
Override -march setting for tegra to -march=armv4t for files that are
necessary for low level init on tegra.
The recent change to use -march=armv7-a for armv7 caused a regression
on tegra because tegra starts boot on a arm7tdmi processor before
transferring control to the cortex-a9. While still executing on the
arm7tdmi there are calls to getenv_ulong() and memset() that cause an
illegal instruction exception if compiled for armv7.
Signed-off-by: Allen Martin <amartin@nvidia.com>
---
arch/arm/cpu/armv7/tegra2/config.mk | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/arch/arm/cpu/armv7/tegra2/config.mk b/arch/arm/cpu/armv7/tegra2/config.mk
index fe9ef5b..4dd8cb8 100644
--- a/arch/arm/cpu/armv7/tegra2/config.mk
+++ b/arch/arm/cpu/armv7/tegra2/config.mk
@@ -24,10 +24,13 @@
# MA 02111-1307 USA
#
-# Tegra has an ARMv4T CPU which runs board_init_f(), so we must build this
-# file with compatible flags
+# Tegra has an ARMv4T CPU which runs board_init_f(), so we must build these
+# files with compatible flags
ifdef CONFIG_TEGRA2
CFLAGS_arch/arm/lib/board.o += -march=armv4t
+CFLAGS_arch/arm/lib/memset.o += -march=armv4t
+CFLAGS_lib/string.o += -march=armv4t
+CFLAGS_common/cmd_nvedit.o += -march=armv4t
endif
USE_PRIVATE_LIBGCC = yes
--
1.7.9.5
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] tegra: override compiler flags for low level init code
2012-05-14 23:14 ` [U-Boot] [PATCH] tegra: override compiler flags for low level init code Allen Martin
@ 2012-05-14 23:23 ` Stephen Warren
2012-06-04 17:54 ` Allen Martin
0 siblings, 1 reply; 7+ messages in thread
From: Stephen Warren @ 2012-05-14 23:23 UTC (permalink / raw)
To: u-boot
On 05/14/2012 05:14 PM, Allen Martin wrote:
> Override -march setting for tegra to -march=armv4t for files that are
> necessary for low level init on tegra.
>
> The recent change to use -march=armv7-a for armv7 caused a regression
> on tegra because tegra starts boot on a arm7tdmi processor before
> transferring control to the cortex-a9. While still executing on the
> arm7tdmi there are calls to getenv_ulong() and memset() that cause an
> illegal instruction exception if compiled for armv7.
>
> Signed-off-by: Allen Martin <amartin@nvidia.com>
Tested-by: Stephen Warren <swarren@wwwdotorg.org>
(This seems to be necessary to use gcc-4.6.1, but not gcc-4.5.3. The
Whistler patches I just sent were tested with this fix in place)
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] tegra: override compiler flags for low level init code
2012-05-14 23:23 ` Stephen Warren
@ 2012-06-04 17:54 ` Allen Martin
2012-06-04 18:00 ` Stephen Warren
0 siblings, 1 reply; 7+ messages in thread
From: Allen Martin @ 2012-06-04 17:54 UTC (permalink / raw)
To: u-boot
On Mon, May 14, 2012 at 04:23:33PM -0700, Stephen Warren wrote:
> On 05/14/2012 05:14 PM, Allen Martin wrote:
> > Override -march setting for tegra to -march=armv4t for files that are
> > necessary for low level init on tegra.
> >
> > The recent change to use -march=armv7-a for armv7 caused a regression
> > on tegra because tegra starts boot on a arm7tdmi processor before
> > transferring control to the cortex-a9. While still executing on the
> > arm7tdmi there are calls to getenv_ulong() and memset() that cause an
> > illegal instruction exception if compiled for armv7.
> >
> > Signed-off-by: Allen Martin <amartin@nvidia.com>
>
> Tested-by: Stephen Warren <swarren@wwwdotorg.org>
>
> (This seems to be necessary to use gcc-4.6.1, but not gcc-4.5.3. The
> Whistler patches I just sent were tested with this fix in place)
Hi Tom, could you pick this up in u-boot-tegra? Without it tegra is
currently broken in both u-boot-tegra and u-boot gits depending on the
compiler you use.
-Allen
--
nvpublic
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] tegra: override compiler flags for low level init code
2012-06-04 17:54 ` Allen Martin
@ 2012-06-04 18:00 ` Stephen Warren
2012-06-04 18:06 ` Allen Martin
0 siblings, 1 reply; 7+ messages in thread
From: Stephen Warren @ 2012-06-04 18:00 UTC (permalink / raw)
To: u-boot
On 06/04/2012 11:54 AM, Allen Martin wrote:
> On Mon, May 14, 2012 at 04:23:33PM -0700, Stephen Warren wrote:
>> On 05/14/2012 05:14 PM, Allen Martin wrote:
>>> Override -march setting for tegra to -march=armv4t for files that are
>>> necessary for low level init on tegra.
>>>
>>> The recent change to use -march=armv7-a for armv7 caused a regression
>>> on tegra because tegra starts boot on a arm7tdmi processor before
>>> transferring control to the cortex-a9. While still executing on the
>>> arm7tdmi there are calls to getenv_ulong() and memset() that cause an
>>> illegal instruction exception if compiled for armv7.
>>>
>>> Signed-off-by: Allen Martin <amartin@nvidia.com>
>>
>> Tested-by: Stephen Warren <swarren@wwwdotorg.org>
>>
>> (This seems to be necessary to use gcc-4.6.1, but not gcc-4.5.3. The
>> Whistler patches I just sent were tested with this fix in place)
>
> Hi Tom, could you pick this up in u-boot-tegra? Without it tegra is
> currently broken in both u-boot-tegra and u-boot gits depending on the
> compiler you use.
It's been there for a while, I believe, at least in u-boot-tegra/master.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] tegra: override compiler flags for low level init code
2012-06-04 18:00 ` Stephen Warren
@ 2012-06-04 18:06 ` Allen Martin
2012-06-04 18:10 ` Tom Warren
0 siblings, 1 reply; 7+ messages in thread
From: Allen Martin @ 2012-06-04 18:06 UTC (permalink / raw)
To: u-boot
On Mon, Jun 04, 2012 at 11:00:35AM -0700, Stephen Warren wrote:
> On 06/04/2012 11:54 AM, Allen Martin wrote:
> > Hi Tom, could you pick this up in u-boot-tegra? Without it tegra is
> > currently broken in both u-boot-tegra and u-boot gits depending on the
> > compiler you use.
>
> It's been there for a while, I believe, at least in u-boot-tegra/master.
Ah you're right sorry, my remote was stale. What's the next merge
window to get this into u-boot/master? I imagine other people must be
running into this too.
-Allen
--
nvpublic
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] tegra: override compiler flags for low level init code
2012-06-04 18:06 ` Allen Martin
@ 2012-06-04 18:10 ` Tom Warren
0 siblings, 0 replies; 7+ messages in thread
From: Tom Warren @ 2012-06-04 18:10 UTC (permalink / raw)
To: u-boot
Allen,
> -----Original Message-----
> From: Allen Martin [mailto:amartin at nvidia.com]
> Sent: Monday, June 04, 2012 11:06 AM
> To: Stephen Warren
> Cc: Tom Warren; vapier at gentoo.org; wd at denx.de; u-boot at lists.denx.de
> Subject: Re: [PATCH] tegra: override compiler flags for low level init code
>
> On Mon, Jun 04, 2012 at 11:00:35AM -0700, Stephen Warren wrote:
> > On 06/04/2012 11:54 AM, Allen Martin wrote:
> > > Hi Tom, could you pick this up in u-boot-tegra? Without it tegra is
> > > currently broken in both u-boot-tegra and u-boot gits depending on
> > > the compiler you use.
> >
> > It's been there for a while, I believe, at least in u-boot-tegra/master.
>
> Ah you're right sorry, my remote was stale. What's the next merge window to
> get this into u-boot/master? I imagine other people must be running into
> this too.
Sorry, not sure. Adding Wolfgang and Albert - it really depends on them. The pull request that contains this patch went out on Thursday.
Tom
>
> -Allen
> --
> nvpublic
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2012-06-04 18:10 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1336162232-19714-1-git-send-email-amartin@nvidia.com>
2012-05-14 20:25 ` [U-Boot] [PATCH v2] tegra: override compiler flags for cmd_nvedit Allen Martin
2012-05-14 23:14 ` [U-Boot] [PATCH] tegra: override compiler flags for low level init code Allen Martin
2012-05-14 23:23 ` Stephen Warren
2012-06-04 17:54 ` Allen Martin
2012-06-04 18:00 ` Stephen Warren
2012-06-04 18:06 ` Allen Martin
2012-06-04 18:10 ` Tom Warren
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox