Wolfgang Denk | 6cb142f | 2006-03-12 02:12:27 +0100 | [diff] [blame] | 1 | # |
| 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 Frysinger | 1ea6bcd | 2009-06-14 23:33:14 -0400 | [diff] [blame] | 24 | CROSS_COMPILE ?= bfin-uclinux- |
| 25 | |
Mike Frysinger | 262ae0a | 2009-09-03 23:12:47 -0400 | [diff] [blame] | 26 | STANDALONE_LOAD_ADDR = 0x1000 |
| 27 | |
Mike Frysinger | 9171fc8 | 2008-03-30 15:46:13 -0400 | [diff] [blame] | 28 | CONFIG_BFIN_CPU := $(strip $(subst ",,$(CONFIG_BFIN_CPU))) |
| 29 | CONFIG_BFIN_BOOT_MODE := $(strip $(subst ",,$(CONFIG_BFIN_BOOT_MODE))) |
Mike Frysinger | 67c2829 | 2008-10-06 04:42:33 -0400 | [diff] [blame] | 30 | CONFIG_ENV_OFFSET := $(strip $(subst ",,$(CONFIG_ENV_OFFSET))) |
| 31 | CONFIG_ENV_SIZE := $(strip $(subst ",,$(CONFIG_ENV_SIZE))) |
Mike Frysinger | 9171fc8 | 2008-03-30 15:46:13 -0400 | [diff] [blame] | 32 | |
Robin Getz | c4db335 | 2009-08-17 15:23:02 +0000 | [diff] [blame] | 33 | PLATFORM_RELFLAGS += -ffixed-P3 -fomit-frame-pointer -mno-fdpic |
Mike Frysinger | 0003613 | 2008-02-04 19:26:55 -0500 | [diff] [blame] | 34 | PLATFORM_CPPFLAGS += -DCONFIG_BLACKFIN |
Mike Frysinger | 0858b83 | 2008-02-04 19:26:55 -0500 | [diff] [blame] | 35 | |
Mike Frysinger | 6957a62 | 2008-10-24 18:18:16 -0400 | [diff] [blame] | 36 | LDFLAGS += --gc-sections |
| 37 | PLATFORM_RELFLAGS += -ffunction-sections -fdata-sections |
| 38 | |
Mike Frysinger | f7ce12c | 2008-02-18 05:26:48 -0500 | [diff] [blame] | 39 | ifneq (,$(CONFIG_BFIN_CPU)) |
| 40 | PLATFORM_RELFLAGS += -mcpu=$(CONFIG_BFIN_CPU) |
| 41 | endif |
| 42 | |
Mike Frysinger | 3e88337 | 2009-06-15 00:25:19 -0400 | [diff] [blame] | 43 | ifneq ($(CONFIG_BFIN_BOOT_MODE),BFIN_BOOT_BYPASS) |
| 44 | ALL += $(obj)u-boot.ldr |
| 45 | endif |
Mike Frysinger | 76d8218 | 2009-07-21 22:17:36 -0400 | [diff] [blame] | 46 | ifeq ($(CONFIG_ENV_IS_EMBEDDED_IN_LDR),y) |
| 47 | CREATE_LDR_ENV = $(obj)tools/envcrc --binary > $(obj)env-ldr.o |
| 48 | else |
| 49 | CREATE_LDR_ENV = |
| 50 | endif |
Mike Frysinger | 3e88337 | 2009-06-15 00:25:19 -0400 | [diff] [blame] | 51 | |
Mike Frysinger | 0858b83 | 2008-02-04 19:26:55 -0500 | [diff] [blame] | 52 | SYM_PREFIX = _ |
Mike Frysinger | 94a91e2 | 2008-02-04 19:26:57 -0500 | [diff] [blame] | 53 | |
Mike Frysinger | 02778f2 | 2009-04-24 23:39:41 -0400 | [diff] [blame] | 54 | LDR_FLAGS-y := |
| 55 | LDR_FLAGS-$(CONFIG_BFIN_BOOTROM_USES_EVT1) += -J |
| 56 | |
Mike Frysinger | 746290d | 2008-08-07 18:55:30 -0400 | [diff] [blame] | 57 | LDR_FLAGS += --bmode $(subst BFIN_BOOT_,,$(CONFIG_BFIN_BOOT_MODE)) |
Mike Frysinger | 94a91e2 | 2008-02-04 19:26:57 -0500 | [diff] [blame] | 58 | LDR_FLAGS += --use-vmas |
Mike Frysinger | 746290d | 2008-08-07 18:55:30 -0400 | [diff] [blame] | 59 | LDR_FLAGS += --initcode $(obj)cpu/$(CPU)/initcode.o |
Mike Frysinger | 67c2829 | 2008-10-06 04:42:33 -0400 | [diff] [blame] | 60 | ifneq ($(CONFIG_BFIN_BOOT_MODE),BFIN_BOOT_UART) |
Mike Frysinger | 76d8218 | 2009-07-21 22:17:36 -0400 | [diff] [blame] | 61 | LDR_FLAGS-$(CONFIG_ENV_IS_EMBEDDED_IN_LDR) += \ |
| 62 | --punchit $$(($(CONFIG_ENV_OFFSET))):$$(($(CONFIG_ENV_SIZE))):$(obj)env-ldr.o |
Mike Frysinger | 67c2829 | 2008-10-06 04:42:33 -0400 | [diff] [blame] | 63 | endif |
Mike Frysinger | f7ce12c | 2008-02-18 05:26:48 -0500 | [diff] [blame] | 64 | ifneq (,$(findstring s,$(MAKEFLAGS))) |
Mike Frysinger | 94a91e2 | 2008-02-04 19:26:57 -0500 | [diff] [blame] | 65 | LDR_FLAGS += --quiet |
| 66 | endif |
Mike Frysinger | 02778f2 | 2009-04-24 23:39:41 -0400 | [diff] [blame] | 67 | |
| 68 | LDR_FLAGS += $(LDR_FLAGS-y) |
Mike Frysinger | 9ff67e5 | 2009-06-14 06:29:07 -0400 | [diff] [blame] | 69 | |
| 70 | ifeq ($(wildcard $(TOPDIR)/board/$(BOARD)/u-boot.lds*),) |
Mike Frysinger | 2ed0869 | 2009-08-22 19:50:22 -0400 | [diff] [blame] | 71 | LDSCRIPT = $(obj)lib_$(ARCH)/u-boot.lds.S |
Mike Frysinger | 9ff67e5 | 2009-06-14 06:29:07 -0400 | [diff] [blame] | 72 | endif |