mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-09-28 07:30:26 +09:00
1551df35f2
When we tell the compiler to optimize for ARMv7 (and ARMv6 for that matter) it assumes a default of SCTRL.A being cleared and unaligned accesses being allowed and fast at the hardware level. We set this bit and must pass along -mno-unaligned-access so that the compiler will still breakdown accesses and not trigger a data abort. To better help understand the requirements of the project with respect to unaligned memory access, the Documentation/unaligned-memory-access.txt file has been added as doc/README.unaligned-memory-access.txt and is taken from the v3.14-rc1 tag of the kernel. Cc: Albert ARIBAUD <albert.u.boot@aribaud.net> Cc: Mans Rullgard <mans@mansr.com> Signed-off-by: Tom Rini <trini@ti.com>
29 lines
819 B
Makefile
29 lines
819 B
Makefile
#
|
|
# (C) Copyright 2002
|
|
# Gary Jennejohn, DENX Software Engineering, <garyj@denx.de>
|
|
#
|
|
# SPDX-License-Identifier: GPL-2.0+
|
|
#
|
|
|
|
# If armv7-a is not supported by GCC fall-back to armv5, which is
|
|
# supported by more tool-chains
|
|
PF_CPPFLAGS_ARMV7 := $(call cc-option, -march=armv7-a, -march=armv5)
|
|
PLATFORM_CPPFLAGS += $(PF_CPPFLAGS_ARMV7)
|
|
|
|
# On supported platforms we set the bit which causes us to trap on unaligned
|
|
# memory access. This is the opposite of what the compiler expects to be
|
|
# the default so we must pass in -mno-unaligned-access so that it is aware
|
|
# of our decision.
|
|
PF_NO_UNALIGNED := $(call cc-option, -mno-unaligned-access,)
|
|
PLATFORM_CPPFLAGS += $(PF_NO_UNALIGNED)
|
|
|
|
ifneq ($(CONFIG_IMX_CONFIG),)
|
|
ifdef CONFIG_SPL
|
|
ifdef CONFIG_SPL_BUILD
|
|
ALL-y += $(OBJTREE)/SPL
|
|
endif
|
|
else
|
|
ALL-y += u-boot.imx
|
|
endif
|
|
endif
|