blob: a7e3658c3efebf1a2c73624c7a87a31746615e01 [file] [log] [blame]
Wolfgang Denk6cb142f2006-03-12 02:12:27 +01001#
2# (C) Copyright 2000-2002
3# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
4#
5# See file CREDITS for list of people who contributed to this
6# project.
7#
8# This program is free software; you can redistribute it and/or
9# modify it under the terms of the GNU General Public License as
10# published by the Free Software Foundation; either version 2 of
11# the License, or (at your option) any later version.
12#
13# This program is distributed in the hope that it will be useful,
14# but WITHOUT ANY WARRANTY; without even the implied warranty of
15# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16# GNU General Public License for more details.
17#
18# You should have received a copy of the GNU General Public License
19# along with this program; if not, write to the Free Software
20# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
21# MA 02111-1307 USA
22#
23
Mike Frysinger1ea6bcd2009-06-14 23:33:14 -040024CROSS_COMPILE ?= bfin-uclinux-
25
Mike Frysinger9171fc82008-03-30 15:46:13 -040026CONFIG_BFIN_CPU := $(strip $(subst ",,$(CONFIG_BFIN_CPU)))
27CONFIG_BFIN_BOOT_MODE := $(strip $(subst ",,$(CONFIG_BFIN_BOOT_MODE)))
Mike Frysinger67c28292008-10-06 04:42:33 -040028CONFIG_ENV_OFFSET := $(strip $(subst ",,$(CONFIG_ENV_OFFSET)))
29CONFIG_ENV_SIZE := $(strip $(subst ",,$(CONFIG_ENV_SIZE)))
Mike Frysinger9171fc82008-03-30 15:46:13 -040030
Mike Frysinger4148e022008-11-12 07:18:15 -050031PLATFORM_RELFLAGS += -ffixed-P5 -fomit-frame-pointer -mno-fdpic
Mike Frysinger00036132008-02-04 19:26:55 -050032PLATFORM_CPPFLAGS += -DCONFIG_BLACKFIN
Mike Frysinger0858b832008-02-04 19:26:55 -050033
Mike Frysinger6957a622008-10-24 18:18:16 -040034LDFLAGS += --gc-sections
35PLATFORM_RELFLAGS += -ffunction-sections -fdata-sections
36
Mike Frysingerf7ce12c2008-02-18 05:26:48 -050037ifneq (,$(CONFIG_BFIN_CPU))
38PLATFORM_RELFLAGS += -mcpu=$(CONFIG_BFIN_CPU)
39endif
40
Mike Frysinger3e883372009-06-15 00:25:19 -040041ifneq ($(CONFIG_BFIN_BOOT_MODE),BFIN_BOOT_BYPASS)
42ALL += $(obj)u-boot.ldr
43endif
44
Mike Frysinger0858b832008-02-04 19:26:55 -050045SYM_PREFIX = _
Mike Frysinger94a91e22008-02-04 19:26:57 -050046
Mike Frysinger02778f22009-04-24 23:39:41 -040047LDR_FLAGS-y :=
48LDR_FLAGS-$(CONFIG_BFIN_BOOTROM_USES_EVT1) += -J
49
Mike Frysinger746290d2008-08-07 18:55:30 -040050LDR_FLAGS += --bmode $(subst BFIN_BOOT_,,$(CONFIG_BFIN_BOOT_MODE))
Mike Frysinger94a91e22008-02-04 19:26:57 -050051LDR_FLAGS += --use-vmas
Mike Frysinger746290d2008-08-07 18:55:30 -040052LDR_FLAGS += --initcode $(obj)cpu/$(CPU)/initcode.o
Mike Frysinger67c28292008-10-06 04:42:33 -040053ifneq ($(CONFIG_BFIN_BOOT_MODE),BFIN_BOOT_UART)
54ifneq ($(ENV_IS_EMBEDDED_CUSTOM),ENV_IS_EMBEDDED_CUSTOM)
55LDR_FLAGS += --punchit $$(($(CONFIG_ENV_OFFSET))):$$(($(CONFIG_ENV_SIZE))):$(obj)env-ldr.o
56endif
57endif
Mike Frysingerf7ce12c2008-02-18 05:26:48 -050058ifneq (,$(findstring s,$(MAKEFLAGS)))
Mike Frysinger94a91e22008-02-04 19:26:57 -050059LDR_FLAGS += --quiet
60endif
Mike Frysinger02778f22009-04-24 23:39:41 -040061
62LDR_FLAGS += $(LDR_FLAGS-y)
Mike Frysinger9ff67e52009-06-14 06:29:07 -040063
64ifeq ($(wildcard $(TOPDIR)/board/$(BOARD)/u-boot.lds*),)
Mike Frysinger2ed08692009-08-22 19:50:22 -040065LDSCRIPT = $(obj)lib_$(ARCH)/u-boot.lds.S
Mike Frysinger9ff67e52009-06-14 06:29:07 -040066endif