Commit a0b14c3f0a94ecb4d8210a249d25fdf37185f39b

Authored by Masahiro Yamada
Committed by Tom Rini
1 parent 4a20df395d

nand-spl: Use scripts/Makefile.build

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>

Showing 13 changed files with 2 additions and 112 deletions Inline Diff

1 # 1 #
2 # (C) Copyright 2000-2013 2 # (C) Copyright 2000-2013
3 # Wolfgang Denk, DENX Software Engineering, wd@denx.de. 3 # Wolfgang Denk, DENX Software Engineering, wd@denx.de.
4 # 4 #
5 # SPDX-License-Identifier: GPL-2.0+ 5 # SPDX-License-Identifier: GPL-2.0+
6 # 6 #
7 7
8 VERSION = 2014 8 VERSION = 2014
9 PATCHLEVEL = 01 9 PATCHLEVEL = 01
10 SUBLEVEL = 10 SUBLEVEL =
11 EXTRAVERSION = 11 EXTRAVERSION =
12 ifneq "$(SUBLEVEL)" "" 12 ifneq "$(SUBLEVEL)" ""
13 U_BOOT_VERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION) 13 U_BOOT_VERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
14 else 14 else
15 U_BOOT_VERSION = $(VERSION).$(PATCHLEVEL)$(EXTRAVERSION) 15 U_BOOT_VERSION = $(VERSION).$(PATCHLEVEL)$(EXTRAVERSION)
16 endif 16 endif
17 TIMESTAMP_FILE = $(obj)include/generated/timestamp_autogenerated.h 17 TIMESTAMP_FILE = $(obj)include/generated/timestamp_autogenerated.h
18 VERSION_FILE = $(obj)include/generated/version_autogenerated.h 18 VERSION_FILE = $(obj)include/generated/version_autogenerated.h
19 19
20 HOSTARCH := $(shell uname -m | \ 20 HOSTARCH := $(shell uname -m | \
21 sed -e s/i.86/x86/ \ 21 sed -e s/i.86/x86/ \
22 -e s/sun4u/sparc64/ \ 22 -e s/sun4u/sparc64/ \
23 -e s/arm.*/arm/ \ 23 -e s/arm.*/arm/ \
24 -e s/sa110/arm/ \ 24 -e s/sa110/arm/ \
25 -e s/ppc64/powerpc/ \ 25 -e s/ppc64/powerpc/ \
26 -e s/ppc/powerpc/ \ 26 -e s/ppc/powerpc/ \
27 -e s/macppc/powerpc/\ 27 -e s/macppc/powerpc/\
28 -e s/sh.*/sh/) 28 -e s/sh.*/sh/)
29 29
30 HOSTOS := $(shell uname -s | tr '[:upper:]' '[:lower:]' | \ 30 HOSTOS := $(shell uname -s | tr '[:upper:]' '[:lower:]' | \
31 sed -e 's/\(cygwin\).*/cygwin/') 31 sed -e 's/\(cygwin\).*/cygwin/')
32 32
33 export HOSTARCH HOSTOS 33 export HOSTARCH HOSTOS
34 34
35 # Deal with colliding definitions from tcsh etc. 35 # Deal with colliding definitions from tcsh etc.
36 VENDOR= 36 VENDOR=
37 37
38 ######################################################################### 38 #########################################################################
39 # Allow for silent builds 39 # Allow for silent builds
40 ifeq (,$(findstring s,$(MAKEFLAGS))) 40 ifeq (,$(findstring s,$(MAKEFLAGS)))
41 XECHO = echo 41 XECHO = echo
42 else 42 else
43 XECHO = : 43 XECHO = :
44 endif 44 endif
45 45
46 ######################################################################### 46 #########################################################################
47 # 47 #
48 # U-boot build supports generating object files in a separate external 48 # U-boot build supports generating object files in a separate external
49 # directory. Two use cases are supported: 49 # directory. Two use cases are supported:
50 # 50 #
51 # 1) Add O= to the make command line 51 # 1) Add O= to the make command line
52 # 'make O=/tmp/build all' 52 # 'make O=/tmp/build all'
53 # 53 #
54 # 2) Set environment variable BUILD_DIR to point to the desired location 54 # 2) Set environment variable BUILD_DIR to point to the desired location
55 # 'export BUILD_DIR=/tmp/build' 55 # 'export BUILD_DIR=/tmp/build'
56 # 'make' 56 # 'make'
57 # 57 #
58 # The second approach can also be used with a MAKEALL script 58 # The second approach can also be used with a MAKEALL script
59 # 'export BUILD_DIR=/tmp/build' 59 # 'export BUILD_DIR=/tmp/build'
60 # './MAKEALL' 60 # './MAKEALL'
61 # 61 #
62 # Command line 'O=' setting overrides BUILD_DIR environment variable. 62 # Command line 'O=' setting overrides BUILD_DIR environment variable.
63 # 63 #
64 # When none of the above methods is used the local build is performed and 64 # When none of the above methods is used the local build is performed and
65 # the object files are placed in the source directory. 65 # the object files are placed in the source directory.
66 # 66 #
67 67
68 ifeq ("$(origin O)", "command line") 68 ifeq ("$(origin O)", "command line")
69 BUILD_DIR := $(O) 69 BUILD_DIR := $(O)
70 endif 70 endif
71 71
72 # Call a source code checker (by default, "sparse") as part of the 72 # Call a source code checker (by default, "sparse") as part of the
73 # C compilation. 73 # C compilation.
74 # 74 #
75 # Use 'make C=1' to enable checking of re-compiled files. 75 # Use 'make C=1' to enable checking of re-compiled files.
76 # 76 #
77 # See the linux kernel file "Documentation/sparse.txt" for more details, 77 # See the linux kernel file "Documentation/sparse.txt" for more details,
78 # including where to get the "sparse" utility. 78 # including where to get the "sparse" utility.
79 79
80 ifdef C 80 ifdef C
81 ifeq ("$(origin C)", "command line") 81 ifeq ("$(origin C)", "command line")
82 CHECKSRC := $(C) 82 CHECKSRC := $(C)
83 endif 83 endif
84 endif 84 endif
85 ifndef CHECKSRC 85 ifndef CHECKSRC
86 CHECKSRC = 0 86 CHECKSRC = 0
87 endif 87 endif
88 export CHECKSRC 88 export CHECKSRC
89 89
90 ifneq ($(BUILD_DIR),) 90 ifneq ($(BUILD_DIR),)
91 saved-output := $(BUILD_DIR) 91 saved-output := $(BUILD_DIR)
92 92
93 # Attempt to create a output directory. 93 # Attempt to create a output directory.
94 $(shell [ -d ${BUILD_DIR} ] || mkdir -p ${BUILD_DIR}) 94 $(shell [ -d ${BUILD_DIR} ] || mkdir -p ${BUILD_DIR})
95 95
96 # Verify if it was successful. 96 # Verify if it was successful.
97 BUILD_DIR := $(shell cd $(BUILD_DIR) && /bin/pwd) 97 BUILD_DIR := $(shell cd $(BUILD_DIR) && /bin/pwd)
98 $(if $(BUILD_DIR),,$(error output directory "$(saved-output)" does not exist)) 98 $(if $(BUILD_DIR),,$(error output directory "$(saved-output)" does not exist))
99 endif # ifneq ($(BUILD_DIR),) 99 endif # ifneq ($(BUILD_DIR),)
100 100
101 OBJTREE := $(if $(BUILD_DIR),$(BUILD_DIR),$(CURDIR)) 101 OBJTREE := $(if $(BUILD_DIR),$(BUILD_DIR),$(CURDIR))
102 SPLTREE := $(OBJTREE)/spl 102 SPLTREE := $(OBJTREE)/spl
103 TPLTREE := $(OBJTREE)/tpl 103 TPLTREE := $(OBJTREE)/tpl
104 SRCTREE := $(CURDIR) 104 SRCTREE := $(CURDIR)
105 TOPDIR := $(SRCTREE) 105 TOPDIR := $(SRCTREE)
106 LNDIR := $(OBJTREE) 106 LNDIR := $(OBJTREE)
107 export TOPDIR SRCTREE OBJTREE SPLTREE TPLTREE 107 export TOPDIR SRCTREE OBJTREE SPLTREE TPLTREE
108 108
109 MKCONFIG := $(SRCTREE)/mkconfig 109 MKCONFIG := $(SRCTREE)/mkconfig
110 export MKCONFIG 110 export MKCONFIG
111 111
112 # $(obj) and (src) are defined in config.mk but here in main Makefile 112 # $(obj) and (src) are defined in config.mk but here in main Makefile
113 # we also need them before config.mk is included which is the case for 113 # we also need them before config.mk is included which is the case for
114 # some targets like unconfig, clean, clobber, distclean, etc. 114 # some targets like unconfig, clean, clobber, distclean, etc.
115 ifneq ($(OBJTREE),$(SRCTREE)) 115 ifneq ($(OBJTREE),$(SRCTREE))
116 obj := $(OBJTREE)/ 116 obj := $(OBJTREE)/
117 src := $(SRCTREE)/ 117 src := $(SRCTREE)/
118 else 118 else
119 obj := 119 obj :=
120 src := 120 src :=
121 endif 121 endif
122 export obj src 122 export obj src
123 123
124 # Make sure CDPATH settings don't interfere 124 # Make sure CDPATH settings don't interfere
125 unexport CDPATH 125 unexport CDPATH
126 126
127 ######################################################################### 127 #########################################################################
128 128
129 build := -f $(TOPDIR)/scripts/Makefile.build -C 129 build := -f $(TOPDIR)/scripts/Makefile.build -C
130 130
131 # The "tools" are needed early, so put this first 131 # The "tools" are needed early, so put this first
132 # Don't include stuff already done in $(LIBS) 132 # Don't include stuff already done in $(LIBS)
133 # The "examples" conditionally depend on U-Boot (say, when USE_PRIVATE_LIBGCC 133 # The "examples" conditionally depend on U-Boot (say, when USE_PRIVATE_LIBGCC
134 # is "yes"), so compile examples after U-Boot is compiled. 134 # is "yes"), so compile examples after U-Boot is compiled.
135 SUBDIR_TOOLS = tools 135 SUBDIR_TOOLS = tools
136 SUBDIRS = $(SUBDIR_TOOLS) 136 SUBDIRS = $(SUBDIR_TOOLS)
137 137
138 .PHONY : $(SUBDIRS) $(VERSION_FILE) $(TIMESTAMP_FILE) 138 .PHONY : $(SUBDIRS) $(VERSION_FILE) $(TIMESTAMP_FILE)
139 139
140 ifeq ($(obj)include/config.mk,$(wildcard $(obj)include/config.mk)) 140 ifeq ($(obj)include/config.mk,$(wildcard $(obj)include/config.mk))
141 141
142 # Include autoconf.mk before config.mk so that the config options are available 142 # Include autoconf.mk before config.mk so that the config options are available
143 # to all top level build files. We need the dummy all: target to prevent the 143 # to all top level build files. We need the dummy all: target to prevent the
144 # dependency target in autoconf.mk.dep from being the default. 144 # dependency target in autoconf.mk.dep from being the default.
145 all: 145 all:
146 sinclude $(obj)include/autoconf.mk.dep 146 sinclude $(obj)include/autoconf.mk.dep
147 sinclude $(obj)include/autoconf.mk 147 sinclude $(obj)include/autoconf.mk
148 148
149 SUBDIR_EXAMPLES-y := examples/standalone 149 SUBDIR_EXAMPLES-y := examples/standalone
150 SUBDIR_EXAMPLES-$(CONFIG_API) += examples/api 150 SUBDIR_EXAMPLES-$(CONFIG_API) += examples/api
151 ifndef CONFIG_SANDBOX 151 ifndef CONFIG_SANDBOX
152 SUBDIRS += $(SUBDIR_EXAMPLES-y) 152 SUBDIRS += $(SUBDIR_EXAMPLES-y)
153 endif 153 endif
154 154
155 # load ARCH, BOARD, and CPU configuration 155 # load ARCH, BOARD, and CPU configuration
156 include $(obj)include/config.mk 156 include $(obj)include/config.mk
157 export ARCH CPU BOARD VENDOR SOC 157 export ARCH CPU BOARD VENDOR SOC
158 158
159 # set default to nothing for native builds 159 # set default to nothing for native builds
160 ifeq ($(HOSTARCH),$(ARCH)) 160 ifeq ($(HOSTARCH),$(ARCH))
161 CROSS_COMPILE ?= 161 CROSS_COMPILE ?=
162 endif 162 endif
163 163
164 # load other configuration 164 # load other configuration
165 include $(TOPDIR)/config.mk 165 include $(TOPDIR)/config.mk
166 166
167 # Targets which don't build the source code 167 # Targets which don't build the source code
168 NON_BUILD_TARGETS = backup clean clobber distclean mrproper tidy unconfig 168 NON_BUILD_TARGETS = backup clean clobber distclean mrproper tidy unconfig
169 169
170 # Only do the generic board check when actually building, not configuring 170 # Only do the generic board check when actually building, not configuring
171 ifeq ($(filter $(NON_BUILD_TARGETS),$(MAKECMDGOALS)),) 171 ifeq ($(filter $(NON_BUILD_TARGETS),$(MAKECMDGOALS)),)
172 ifeq ($(findstring _config,$(MAKECMDGOALS)),) 172 ifeq ($(findstring _config,$(MAKECMDGOALS)),)
173 $(CHECK_GENERIC_BOARD) 173 $(CHECK_GENERIC_BOARD)
174 endif 174 endif
175 endif 175 endif
176 176
177 # If board code explicitly specified LDSCRIPT or CONFIG_SYS_LDSCRIPT, use 177 # If board code explicitly specified LDSCRIPT or CONFIG_SYS_LDSCRIPT, use
178 # that (or fail if absent). Otherwise, search for a linker script in a 178 # that (or fail if absent). Otherwise, search for a linker script in a
179 # standard location. 179 # standard location.
180 180
181 LDSCRIPT_MAKEFILE_DIR = $(dir $(LDSCRIPT)) 181 LDSCRIPT_MAKEFILE_DIR = $(dir $(LDSCRIPT))
182 182
183 ifndef LDSCRIPT 183 ifndef LDSCRIPT
184 #LDSCRIPT := $(TOPDIR)/board/$(BOARDDIR)/u-boot.lds.debug 184 #LDSCRIPT := $(TOPDIR)/board/$(BOARDDIR)/u-boot.lds.debug
185 ifdef CONFIG_SYS_LDSCRIPT 185 ifdef CONFIG_SYS_LDSCRIPT
186 # need to strip off double quotes 186 # need to strip off double quotes
187 LDSCRIPT := $(CONFIG_SYS_LDSCRIPT:"%"=%) 187 LDSCRIPT := $(CONFIG_SYS_LDSCRIPT:"%"=%)
188 endif 188 endif
189 endif 189 endif
190 190
191 # If there is no specified link script, we look in a number of places for it 191 # If there is no specified link script, we look in a number of places for it
192 ifndef LDSCRIPT 192 ifndef LDSCRIPT
193 ifeq ($(CONFIG_NAND_U_BOOT),y) 193 ifeq ($(CONFIG_NAND_U_BOOT),y)
194 LDSCRIPT := $(TOPDIR)/board/$(BOARDDIR)/u-boot-nand.lds 194 LDSCRIPT := $(TOPDIR)/board/$(BOARDDIR)/u-boot-nand.lds
195 ifeq ($(wildcard $(LDSCRIPT)),) 195 ifeq ($(wildcard $(LDSCRIPT)),)
196 LDSCRIPT := $(TOPDIR)/$(CPUDIR)/u-boot-nand.lds 196 LDSCRIPT := $(TOPDIR)/$(CPUDIR)/u-boot-nand.lds
197 endif 197 endif
198 endif 198 endif
199 ifeq ($(wildcard $(LDSCRIPT)),) 199 ifeq ($(wildcard $(LDSCRIPT)),)
200 LDSCRIPT := $(TOPDIR)/board/$(BOARDDIR)/u-boot.lds 200 LDSCRIPT := $(TOPDIR)/board/$(BOARDDIR)/u-boot.lds
201 endif 201 endif
202 ifeq ($(wildcard $(LDSCRIPT)),) 202 ifeq ($(wildcard $(LDSCRIPT)),)
203 LDSCRIPT := $(TOPDIR)/$(CPUDIR)/u-boot.lds 203 LDSCRIPT := $(TOPDIR)/$(CPUDIR)/u-boot.lds
204 endif 204 endif
205 ifeq ($(wildcard $(LDSCRIPT)),) 205 ifeq ($(wildcard $(LDSCRIPT)),)
206 LDSCRIPT := $(TOPDIR)/arch/$(ARCH)/cpu/u-boot.lds 206 LDSCRIPT := $(TOPDIR)/arch/$(ARCH)/cpu/u-boot.lds
207 # We don't expect a Makefile here 207 # We don't expect a Makefile here
208 LDSCRIPT_MAKEFILE_DIR = 208 LDSCRIPT_MAKEFILE_DIR =
209 endif 209 endif
210 ifeq ($(wildcard $(LDSCRIPT)),) 210 ifeq ($(wildcard $(LDSCRIPT)),)
211 $(error could not find linker script) 211 $(error could not find linker script)
212 endif 212 endif
213 endif 213 endif
214 214
215 ######################################################################### 215 #########################################################################
216 # U-Boot objects....order is important (i.e. start must be first) 216 # U-Boot objects....order is important (i.e. start must be first)
217 217
218 head-y := $(CPUDIR)/start.o 218 head-y := $(CPUDIR)/start.o
219 head-$(CONFIG_4xx) += arch/powerpc/cpu/ppc4xx/resetvec.o 219 head-$(CONFIG_4xx) += arch/powerpc/cpu/ppc4xx/resetvec.o
220 head-$(CONFIG_MPC85xx) += arch/powerpc/cpu/mpc85xx/resetvec.o 220 head-$(CONFIG_MPC85xx) += arch/powerpc/cpu/mpc85xx/resetvec.o
221 221
222 OBJS := $(addprefix $(obj),$(head-y)) 222 OBJS := $(addprefix $(obj),$(head-y))
223 223
224 HAVE_VENDOR_COMMON_LIB = $(if $(wildcard board/$(VENDOR)/common/Makefile),y,n) 224 HAVE_VENDOR_COMMON_LIB = $(if $(wildcard board/$(VENDOR)/common/Makefile),y,n)
225 225
226 LIBS-y += lib/ 226 LIBS-y += lib/
227 LIBS-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/ 227 LIBS-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/
228 LIBS-y += $(CPUDIR)/ 228 LIBS-y += $(CPUDIR)/
229 ifdef SOC 229 ifdef SOC
230 LIBS-y += $(CPUDIR)/$(SOC)/ 230 LIBS-y += $(CPUDIR)/$(SOC)/
231 endif 231 endif
232 LIBS-$(CONFIG_IXP4XX_NPE) += drivers/net/npe/ 232 LIBS-$(CONFIG_IXP4XX_NPE) += drivers/net/npe/
233 LIBS-$(CONFIG_OF_EMBED) += dts/ 233 LIBS-$(CONFIG_OF_EMBED) += dts/
234 LIBS-y += arch/$(ARCH)/lib/ 234 LIBS-y += arch/$(ARCH)/lib/
235 LIBS-y += fs/ 235 LIBS-y += fs/
236 LIBS-y += net/ 236 LIBS-y += net/
237 LIBS-y += disk/ 237 LIBS-y += disk/
238 LIBS-y += drivers/ 238 LIBS-y += drivers/
239 LIBS-y += drivers/dma/ 239 LIBS-y += drivers/dma/
240 LIBS-y += drivers/gpio/ 240 LIBS-y += drivers/gpio/
241 LIBS-y += drivers/i2c/ 241 LIBS-y += drivers/i2c/
242 LIBS-y += drivers/input/ 242 LIBS-y += drivers/input/
243 LIBS-y += drivers/mmc/ 243 LIBS-y += drivers/mmc/
244 LIBS-y += drivers/mtd/ 244 LIBS-y += drivers/mtd/
245 LIBS-$(CONFIG_CMD_NAND) += drivers/mtd/nand/ 245 LIBS-$(CONFIG_CMD_NAND) += drivers/mtd/nand/
246 LIBS-y += drivers/mtd/onenand/ 246 LIBS-y += drivers/mtd/onenand/
247 LIBS-$(CONFIG_CMD_UBI) += drivers/mtd/ubi/ 247 LIBS-$(CONFIG_CMD_UBI) += drivers/mtd/ubi/
248 LIBS-y += drivers/mtd/spi/ 248 LIBS-y += drivers/mtd/spi/
249 LIBS-y += drivers/net/ 249 LIBS-y += drivers/net/
250 LIBS-y += drivers/net/phy/ 250 LIBS-y += drivers/net/phy/
251 LIBS-y += drivers/pci/ 251 LIBS-y += drivers/pci/
252 LIBS-y += drivers/power/ \ 252 LIBS-y += drivers/power/ \
253 drivers/power/fuel_gauge/ \ 253 drivers/power/fuel_gauge/ \
254 drivers/power/mfd/ \ 254 drivers/power/mfd/ \
255 drivers/power/pmic/ \ 255 drivers/power/pmic/ \
256 drivers/power/battery/ 256 drivers/power/battery/
257 LIBS-y += drivers/spi/ 257 LIBS-y += drivers/spi/
258 LIBS-$(CONFIG_FMAN_ENET) += drivers/net/fm/ 258 LIBS-$(CONFIG_FMAN_ENET) += drivers/net/fm/
259 LIBS-$(CONFIG_SYS_FSL_DDR) += drivers/ddr/fsl/ 259 LIBS-$(CONFIG_SYS_FSL_DDR) += drivers/ddr/fsl/
260 LIBS-y += drivers/serial/ 260 LIBS-y += drivers/serial/
261 LIBS-y += drivers/usb/eth/ 261 LIBS-y += drivers/usb/eth/
262 LIBS-y += drivers/usb/gadget/ 262 LIBS-y += drivers/usb/gadget/
263 LIBS-y += drivers/usb/host/ 263 LIBS-y += drivers/usb/host/
264 LIBS-y += drivers/usb/musb/ 264 LIBS-y += drivers/usb/musb/
265 LIBS-y += drivers/usb/musb-new/ 265 LIBS-y += drivers/usb/musb-new/
266 LIBS-y += drivers/usb/phy/ 266 LIBS-y += drivers/usb/phy/
267 LIBS-y += drivers/usb/ulpi/ 267 LIBS-y += drivers/usb/ulpi/
268 LIBS-y += common/ 268 LIBS-y += common/
269 LIBS-y += lib/libfdt/ 269 LIBS-y += lib/libfdt/
270 LIBS-$(CONFIG_API) += api/ 270 LIBS-$(CONFIG_API) += api/
271 LIBS-$(CONFIG_HAS_POST) += post/ 271 LIBS-$(CONFIG_HAS_POST) += post/
272 LIBS-y += test/ 272 LIBS-y += test/
273 273
274 ifneq (,$(filter $(SOC), mx25 mx27 mx5 mx6 mx31 mx35 mxs vf610)) 274 ifneq (,$(filter $(SOC), mx25 mx27 mx5 mx6 mx31 mx35 mxs vf610))
275 LIBS-y += arch/$(ARCH)/imx-common/ 275 LIBS-y += arch/$(ARCH)/imx-common/
276 endif 276 endif
277 277
278 LIBS-$(CONFIG_ARM) += arch/arm/cpu/ 278 LIBS-$(CONFIG_ARM) += arch/arm/cpu/
279 LIBS-$(CONFIG_PPC) += arch/powerpc/cpu/ 279 LIBS-$(CONFIG_PPC) += arch/powerpc/cpu/
280 280
281 LIBS-y += board/$(BOARDDIR)/ 281 LIBS-y += board/$(BOARDDIR)/
282 282
283 LIBS-y := $(patsubst %/, %/built-in.o, $(LIBS-y)) 283 LIBS-y := $(patsubst %/, %/built-in.o, $(LIBS-y))
284 LIBS := $(addprefix $(obj),$(sort $(LIBS-y))) 284 LIBS := $(addprefix $(obj),$(sort $(LIBS-y)))
285 .PHONY : $(LIBS) 285 .PHONY : $(LIBS)
286 286
287 # Add GCC lib 287 # Add GCC lib
288 ifdef USE_PRIVATE_LIBGCC 288 ifdef USE_PRIVATE_LIBGCC
289 ifeq ("$(USE_PRIVATE_LIBGCC)", "yes") 289 ifeq ("$(USE_PRIVATE_LIBGCC)", "yes")
290 PLATFORM_LIBGCC = $(OBJTREE)/arch/$(ARCH)/lib/libgcc.o 290 PLATFORM_LIBGCC = $(OBJTREE)/arch/$(ARCH)/lib/libgcc.o
291 else 291 else
292 PLATFORM_LIBGCC = -L $(USE_PRIVATE_LIBGCC) -lgcc 292 PLATFORM_LIBGCC = -L $(USE_PRIVATE_LIBGCC) -lgcc
293 endif 293 endif
294 else 294 else
295 PLATFORM_LIBGCC := -L $(shell dirname `$(CC) $(CFLAGS) -print-libgcc-file-name`) -lgcc 295 PLATFORM_LIBGCC := -L $(shell dirname `$(CC) $(CFLAGS) -print-libgcc-file-name`) -lgcc
296 endif 296 endif
297 PLATFORM_LIBS += $(PLATFORM_LIBGCC) 297 PLATFORM_LIBS += $(PLATFORM_LIBGCC)
298 export PLATFORM_LIBS 298 export PLATFORM_LIBS
299 299
300 # Special flags for CPP when processing the linker script. 300 # Special flags for CPP when processing the linker script.
301 # Pass the version down so we can handle backwards compatibility 301 # Pass the version down so we can handle backwards compatibility
302 # on the fly. 302 # on the fly.
303 LDPPFLAGS += \ 303 LDPPFLAGS += \
304 -include $(TOPDIR)/include/u-boot/u-boot.lds.h \ 304 -include $(TOPDIR)/include/u-boot/u-boot.lds.h \
305 -DCPUDIR=$(CPUDIR) \ 305 -DCPUDIR=$(CPUDIR) \
306 $(shell $(LD) --version | \ 306 $(shell $(LD) --version | \
307 sed -ne 's/GNU ld version \([0-9][0-9]*\)\.\([0-9][0-9]*\).*/-DLD_MAJOR=\1 -DLD_MINOR=\2/p') 307 sed -ne 's/GNU ld version \([0-9][0-9]*\)\.\([0-9][0-9]*\).*/-DLD_MAJOR=\1 -DLD_MINOR=\2/p')
308 308
309 __OBJS := $(subst $(obj),,$(OBJS)) 309 __OBJS := $(subst $(obj),,$(OBJS))
310 __LIBS := $(subst $(obj),,$(LIBS)) 310 __LIBS := $(subst $(obj),,$(LIBS))
311 311
312 ######################################################################### 312 #########################################################################
313 ######################################################################### 313 #########################################################################
314 314
315 ifneq ($(CONFIG_BOARD_SIZE_LIMIT),) 315 ifneq ($(CONFIG_BOARD_SIZE_LIMIT),)
316 BOARD_SIZE_CHECK = \ 316 BOARD_SIZE_CHECK = \
317 @actual=`wc -c $@ | awk '{print $$1}'`; \ 317 @actual=`wc -c $@ | awk '{print $$1}'`; \
318 limit=`printf "%d" $(CONFIG_BOARD_SIZE_LIMIT)`; \ 318 limit=`printf "%d" $(CONFIG_BOARD_SIZE_LIMIT)`; \
319 if test $$actual -gt $$limit; then \ 319 if test $$actual -gt $$limit; then \
320 echo "$@ exceeds file size limit:" >&2 ; \ 320 echo "$@ exceeds file size limit:" >&2 ; \
321 echo " limit: $$limit bytes" >&2 ; \ 321 echo " limit: $$limit bytes" >&2 ; \
322 echo " actual: $$actual bytes" >&2 ; \ 322 echo " actual: $$actual bytes" >&2 ; \
323 echo " excess: $$((actual - limit)) bytes" >&2; \ 323 echo " excess: $$((actual - limit)) bytes" >&2; \
324 exit 1; \ 324 exit 1; \
325 fi 325 fi
326 else 326 else
327 BOARD_SIZE_CHECK = 327 BOARD_SIZE_CHECK =
328 endif 328 endif
329 329
330 # Statically apply RELA-style relocations (currently arm64 only) 330 # Statically apply RELA-style relocations (currently arm64 only)
331 ifneq ($(CONFIG_STATIC_RELA),) 331 ifneq ($(CONFIG_STATIC_RELA),)
332 # $(1) is u-boot ELF, $(2) is u-boot bin, $(3) is text base 332 # $(1) is u-boot ELF, $(2) is u-boot bin, $(3) is text base
333 DO_STATIC_RELA = \ 333 DO_STATIC_RELA = \
334 start=$$($(NM) $(1) | grep __rel_dyn_start | cut -f 1 -d ' '); \ 334 start=$$($(NM) $(1) | grep __rel_dyn_start | cut -f 1 -d ' '); \
335 end=$$($(NM) $(1) | grep __rel_dyn_end | cut -f 1 -d ' '); \ 335 end=$$($(NM) $(1) | grep __rel_dyn_end | cut -f 1 -d ' '); \
336 $(obj)tools/relocate-rela $(2) $(3) $$start $$end 336 $(obj)tools/relocate-rela $(2) $(3) $$start $$end
337 else 337 else
338 DO_STATIC_RELA = 338 DO_STATIC_RELA =
339 endif 339 endif
340 340
341 # Always append ALL so that arch config.mk's can add custom ones 341 # Always append ALL so that arch config.mk's can add custom ones
342 ALL-y += $(obj)u-boot.srec $(obj)u-boot.bin $(obj)System.map 342 ALL-y += $(obj)u-boot.srec $(obj)u-boot.bin $(obj)System.map
343 343
344 ALL-$(CONFIG_NAND_U_BOOT) += $(obj)u-boot-nand.bin 344 ALL-$(CONFIG_NAND_U_BOOT) += $(obj)u-boot-nand.bin
345 ALL-$(CONFIG_ONENAND_U_BOOT) += $(obj)u-boot-onenand.bin 345 ALL-$(CONFIG_ONENAND_U_BOOT) += $(obj)u-boot-onenand.bin
346 ALL-$(CONFIG_RAMBOOT_PBL) += $(obj)u-boot.pbl 346 ALL-$(CONFIG_RAMBOOT_PBL) += $(obj)u-boot.pbl
347 ALL-$(CONFIG_SPL) += $(obj)spl/u-boot-spl.bin 347 ALL-$(CONFIG_SPL) += $(obj)spl/u-boot-spl.bin
348 ALL-$(CONFIG_SPL_FRAMEWORK) += $(obj)u-boot.img 348 ALL-$(CONFIG_SPL_FRAMEWORK) += $(obj)u-boot.img
349 ALL-$(CONFIG_TPL) += $(obj)tpl/u-boot-tpl.bin 349 ALL-$(CONFIG_TPL) += $(obj)tpl/u-boot-tpl.bin
350 ALL-$(CONFIG_OF_SEPARATE) += $(obj)u-boot.dtb $(obj)u-boot-dtb.bin 350 ALL-$(CONFIG_OF_SEPARATE) += $(obj)u-boot.dtb $(obj)u-boot-dtb.bin
351 ifneq ($(CONFIG_SPL_TARGET),) 351 ifneq ($(CONFIG_SPL_TARGET),)
352 ALL-$(CONFIG_SPL) += $(obj)$(CONFIG_SPL_TARGET:"%"=%) 352 ALL-$(CONFIG_SPL) += $(obj)$(CONFIG_SPL_TARGET:"%"=%)
353 endif 353 endif
354 ALL-$(CONFIG_REMAKE_ELF) += $(obj)u-boot.elf 354 ALL-$(CONFIG_REMAKE_ELF) += $(obj)u-boot.elf
355 355
356 # enable combined SPL/u-boot/dtb rules for tegra 356 # enable combined SPL/u-boot/dtb rules for tegra
357 ifneq ($(CONFIG_TEGRA),) 357 ifneq ($(CONFIG_TEGRA),)
358 ifeq ($(CONFIG_SPL),y) 358 ifeq ($(CONFIG_SPL),y)
359 ifeq ($(CONFIG_OF_SEPARATE),y) 359 ifeq ($(CONFIG_OF_SEPARATE),y)
360 ALL-y += $(obj)u-boot-dtb-tegra.bin 360 ALL-y += $(obj)u-boot-dtb-tegra.bin
361 else 361 else
362 ALL-y += $(obj)u-boot-nodtb-tegra.bin 362 ALL-y += $(obj)u-boot-nodtb-tegra.bin
363 endif 363 endif
364 endif 364 endif
365 endif 365 endif
366 366
367 all: $(ALL-y) $(SUBDIR_EXAMPLES-y) 367 all: $(ALL-y) $(SUBDIR_EXAMPLES-y)
368 368
369 $(obj)u-boot.dtb: checkdtc $(obj)u-boot 369 $(obj)u-boot.dtb: checkdtc $(obj)u-boot
370 $(MAKE) $(build) dts binary 370 $(MAKE) $(build) dts binary
371 mv $(obj)dts/dt.dtb $@ 371 mv $(obj)dts/dt.dtb $@
372 372
373 $(obj)u-boot-dtb.bin: $(obj)u-boot.bin $(obj)u-boot.dtb 373 $(obj)u-boot-dtb.bin: $(obj)u-boot.bin $(obj)u-boot.dtb
374 cat $^ >$@ 374 cat $^ >$@
375 375
376 $(obj)u-boot.hex: $(obj)u-boot 376 $(obj)u-boot.hex: $(obj)u-boot
377 $(OBJCOPY) ${OBJCFLAGS} -O ihex $< $@ 377 $(OBJCOPY) ${OBJCFLAGS} -O ihex $< $@
378 378
379 $(obj)u-boot.srec: $(obj)u-boot 379 $(obj)u-boot.srec: $(obj)u-boot
380 $(OBJCOPY) ${OBJCFLAGS} -O srec $< $@ 380 $(OBJCOPY) ${OBJCFLAGS} -O srec $< $@
381 381
382 $(obj)u-boot.bin: $(obj)u-boot 382 $(obj)u-boot.bin: $(obj)u-boot
383 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@ 383 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
384 $(call DO_STATIC_RELA,$<,$@,$(CONFIG_SYS_TEXT_BASE)) 384 $(call DO_STATIC_RELA,$<,$@,$(CONFIG_SYS_TEXT_BASE))
385 $(BOARD_SIZE_CHECK) 385 $(BOARD_SIZE_CHECK)
386 386
387 $(obj)u-boot.ldr: $(obj)u-boot 387 $(obj)u-boot.ldr: $(obj)u-boot
388 $(CREATE_LDR_ENV) 388 $(CREATE_LDR_ENV)
389 $(LDR) -T $(CONFIG_BFIN_CPU) -c $@ $< $(LDR_FLAGS) 389 $(LDR) -T $(CONFIG_BFIN_CPU) -c $@ $< $(LDR_FLAGS)
390 $(BOARD_SIZE_CHECK) 390 $(BOARD_SIZE_CHECK)
391 391
392 $(obj)u-boot.ldr.hex: $(obj)u-boot.ldr 392 $(obj)u-boot.ldr.hex: $(obj)u-boot.ldr
393 $(OBJCOPY) ${OBJCFLAGS} -O ihex $< $@ -I binary 393 $(OBJCOPY) ${OBJCFLAGS} -O ihex $< $@ -I binary
394 394
395 $(obj)u-boot.ldr.srec: $(obj)u-boot.ldr 395 $(obj)u-boot.ldr.srec: $(obj)u-boot.ldr
396 $(OBJCOPY) ${OBJCFLAGS} -O srec $< $@ -I binary 396 $(OBJCOPY) ${OBJCFLAGS} -O srec $< $@ -I binary
397 397
398 # 398 #
399 # U-Boot entry point, needed for booting of full-blown U-Boot 399 # U-Boot entry point, needed for booting of full-blown U-Boot
400 # from the SPL U-Boot version. 400 # from the SPL U-Boot version.
401 # 401 #
402 ifndef CONFIG_SYS_UBOOT_START 402 ifndef CONFIG_SYS_UBOOT_START
403 CONFIG_SYS_UBOOT_START := 0 403 CONFIG_SYS_UBOOT_START := 0
404 endif 404 endif
405 405
406 $(obj)u-boot.img: $(obj)u-boot.bin 406 $(obj)u-boot.img: $(obj)u-boot.bin
407 $(obj)tools/mkimage -A $(ARCH) -T firmware -C none \ 407 $(obj)tools/mkimage -A $(ARCH) -T firmware -C none \
408 -O u-boot -a $(CONFIG_SYS_TEXT_BASE) \ 408 -O u-boot -a $(CONFIG_SYS_TEXT_BASE) \
409 -e $(CONFIG_SYS_UBOOT_START) \ 409 -e $(CONFIG_SYS_UBOOT_START) \
410 -n $(shell sed -n -e 's/.*U_BOOT_VERSION//p' $(VERSION_FILE) | \ 410 -n $(shell sed -n -e 's/.*U_BOOT_VERSION//p' $(VERSION_FILE) | \
411 sed -e 's/"[ ]*$$/ for $(BOARD) board"/') \ 411 sed -e 's/"[ ]*$$/ for $(BOARD) board"/') \
412 -d $< $@ 412 -d $< $@
413 413
414 $(obj)u-boot.imx: $(obj)u-boot.bin depend 414 $(obj)u-boot.imx: $(obj)u-boot.bin depend
415 $(MAKE) $(build) $(SRCTREE)/arch/arm/imx-common $(OBJTREE)/u-boot.imx 415 $(MAKE) $(build) $(SRCTREE)/arch/arm/imx-common $(OBJTREE)/u-boot.imx
416 416
417 $(obj)u-boot.kwb: $(obj)u-boot.bin 417 $(obj)u-boot.kwb: $(obj)u-boot.bin
418 $(obj)tools/mkimage -n $(CONFIG_SYS_KWD_CONFIG) -T kwbimage \ 418 $(obj)tools/mkimage -n $(CONFIG_SYS_KWD_CONFIG) -T kwbimage \
419 -a $(CONFIG_SYS_TEXT_BASE) -e $(CONFIG_SYS_TEXT_BASE) -d $< $@ 419 -a $(CONFIG_SYS_TEXT_BASE) -e $(CONFIG_SYS_TEXT_BASE) -d $< $@
420 420
421 $(obj)u-boot.pbl: $(obj)u-boot.bin 421 $(obj)u-boot.pbl: $(obj)u-boot.bin
422 $(obj)tools/mkimage -n $(CONFIG_SYS_FSL_PBL_RCW) \ 422 $(obj)tools/mkimage -n $(CONFIG_SYS_FSL_PBL_RCW) \
423 -R $(CONFIG_SYS_FSL_PBL_PBI) -T pblimage \ 423 -R $(CONFIG_SYS_FSL_PBL_PBI) -T pblimage \
424 -d $< $@ 424 -d $< $@
425 425
426 $(obj)u-boot.sha1: $(obj)u-boot.bin 426 $(obj)u-boot.sha1: $(obj)u-boot.bin
427 $(obj)tools/ubsha1 $(obj)u-boot.bin 427 $(obj)tools/ubsha1 $(obj)u-boot.bin
428 428
429 $(obj)u-boot.dis: $(obj)u-boot 429 $(obj)u-boot.dis: $(obj)u-boot
430 $(OBJDUMP) -d $< > $@ 430 $(OBJDUMP) -d $< > $@
431 431
432 # $@ is output, $(1) and $(2) are inputs, $(3) is padded intermediate, 432 # $@ is output, $(1) and $(2) are inputs, $(3) is padded intermediate,
433 # $(4) is pad-to 433 # $(4) is pad-to
434 SPL_PAD_APPEND = \ 434 SPL_PAD_APPEND = \
435 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(4) -I binary -O binary \ 435 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(4) -I binary -O binary \
436 $(1) $(obj)$(3); \ 436 $(1) $(obj)$(3); \
437 cat $(obj)$(3) $(2) > $@; \ 437 cat $(obj)$(3) $(2) > $@; \
438 rm $(obj)$(3) 438 rm $(obj)$(3)
439 439
440 ifdef CONFIG_TPL 440 ifdef CONFIG_TPL
441 SPL_PAYLOAD := $(obj)tpl/u-boot-with-tpl.bin 441 SPL_PAYLOAD := $(obj)tpl/u-boot-with-tpl.bin
442 else 442 else
443 SPL_PAYLOAD := $(obj)u-boot.bin 443 SPL_PAYLOAD := $(obj)u-boot.bin
444 endif 444 endif
445 445
446 $(obj)u-boot-with-spl.bin: $(obj)spl/u-boot-spl.bin $(SPL_PAYLOAD) 446 $(obj)u-boot-with-spl.bin: $(obj)spl/u-boot-spl.bin $(SPL_PAYLOAD)
447 $(call SPL_PAD_APPEND,$<,$(SPL_PAYLOAD),spl/u-boot-spl-pad.bin,$(CONFIG_SPL_PAD_TO)) 447 $(call SPL_PAD_APPEND,$<,$(SPL_PAYLOAD),spl/u-boot-spl-pad.bin,$(CONFIG_SPL_PAD_TO))
448 448
449 $(obj)tpl/u-boot-with-tpl.bin: $(obj)tpl/u-boot-tpl.bin $(obj)u-boot.bin 449 $(obj)tpl/u-boot-with-tpl.bin: $(obj)tpl/u-boot-tpl.bin $(obj)u-boot.bin
450 $(call SPL_PAD_APPEND,$<,$(obj)u-boot.bin,tpl/u-boot-tpl-pad.bin,$(CONFIG_TPL_PAD_TO)) 450 $(call SPL_PAD_APPEND,$<,$(obj)u-boot.bin,tpl/u-boot-tpl-pad.bin,$(CONFIG_TPL_PAD_TO))
451 451
452 $(obj)u-boot-with-spl.imx: $(obj)spl/u-boot-spl.bin $(obj)u-boot.bin 452 $(obj)u-boot-with-spl.imx: $(obj)spl/u-boot-spl.bin $(obj)u-boot.bin
453 $(MAKE) $(build) $(SRCTREE)/arch/arm/imx-common \ 453 $(MAKE) $(build) $(SRCTREE)/arch/arm/imx-common \
454 $(OBJTREE)/u-boot-with-spl.imx 454 $(OBJTREE)/u-boot-with-spl.imx
455 455
456 $(obj)u-boot-with-nand-spl.imx: $(obj)spl/u-boot-spl.bin $(obj)u-boot.bin 456 $(obj)u-boot-with-nand-spl.imx: $(obj)spl/u-boot-spl.bin $(obj)u-boot.bin
457 $(MAKE) $(build) $(SRCTREE)/arch/arm/imx-common \ 457 $(MAKE) $(build) $(SRCTREE)/arch/arm/imx-common \
458 $(OBJTREE)/u-boot-with-nand-spl.imx 458 $(OBJTREE)/u-boot-with-nand-spl.imx
459 459
460 $(obj)u-boot.ubl: $(obj)u-boot-with-spl.bin 460 $(obj)u-boot.ubl: $(obj)u-boot-with-spl.bin
461 $(obj)tools/mkimage -n $(UBL_CONFIG) -T ublimage \ 461 $(obj)tools/mkimage -n $(UBL_CONFIG) -T ublimage \
462 -e $(CONFIG_SYS_TEXT_BASE) -d $< $(obj)u-boot.ubl 462 -e $(CONFIG_SYS_TEXT_BASE) -d $< $(obj)u-boot.ubl
463 463
464 $(obj)u-boot.ais: $(obj)spl/u-boot-spl.bin $(obj)u-boot.img 464 $(obj)u-boot.ais: $(obj)spl/u-boot-spl.bin $(obj)u-boot.img
465 $(obj)tools/mkimage -s -n $(if $(CONFIG_AIS_CONFIG_FILE),$(CONFIG_AIS_CONFIG_FILE),"/dev/null") \ 465 $(obj)tools/mkimage -s -n $(if $(CONFIG_AIS_CONFIG_FILE),$(CONFIG_AIS_CONFIG_FILE),"/dev/null") \
466 -T aisimage \ 466 -T aisimage \
467 -e $(CONFIG_SPL_TEXT_BASE) \ 467 -e $(CONFIG_SPL_TEXT_BASE) \
468 -d $(obj)spl/u-boot-spl.bin \ 468 -d $(obj)spl/u-boot-spl.bin \
469 $(obj)spl/u-boot-spl.ais 469 $(obj)spl/u-boot-spl.ais
470 $(OBJCOPY) ${OBJCFLAGS} -I binary \ 470 $(OBJCOPY) ${OBJCFLAGS} -I binary \
471 --pad-to=$(CONFIG_SPL_MAX_SIZE) -O binary \ 471 --pad-to=$(CONFIG_SPL_MAX_SIZE) -O binary \
472 $(obj)spl/u-boot-spl.ais $(obj)spl/u-boot-spl-pad.ais 472 $(obj)spl/u-boot-spl.ais $(obj)spl/u-boot-spl-pad.ais
473 cat $(obj)spl/u-boot-spl-pad.ais $(obj)u-boot.img > \ 473 cat $(obj)spl/u-boot-spl-pad.ais $(obj)u-boot.img > \
474 $(obj)u-boot.ais 474 $(obj)u-boot.ais
475 475
476 476
477 $(obj)u-boot.sb: $(obj)u-boot.bin $(obj)spl/u-boot-spl.bin 477 $(obj)u-boot.sb: $(obj)u-boot.bin $(obj)spl/u-boot-spl.bin
478 $(MAKE) $(build) $(SRCTREE)/$(CPUDIR)/$(SOC)/ $(OBJTREE)/u-boot.sb 478 $(MAKE) $(build) $(SRCTREE)/$(CPUDIR)/$(SOC)/ $(OBJTREE)/u-boot.sb
479 479
480 # On x600 (SPEAr600) U-Boot is appended to U-Boot SPL. 480 # On x600 (SPEAr600) U-Boot is appended to U-Boot SPL.
481 # Both images are created using mkimage (crc etc), so that the ROM 481 # Both images are created using mkimage (crc etc), so that the ROM
482 # bootloader can check its integrity. Padding needs to be done to the 482 # bootloader can check its integrity. Padding needs to be done to the
483 # SPL image (with mkimage header) and not the binary. Otherwise the resulting image 483 # SPL image (with mkimage header) and not the binary. Otherwise the resulting image
484 # which is loaded/copied by the ROM bootloader to SRAM doesn't fit. 484 # which is loaded/copied by the ROM bootloader to SRAM doesn't fit.
485 # The resulting image containing both U-Boot images is called u-boot.spr 485 # The resulting image containing both U-Boot images is called u-boot.spr
486 $(obj)u-boot.spr: $(obj)u-boot.img $(obj)spl/u-boot-spl.bin 486 $(obj)u-boot.spr: $(obj)u-boot.img $(obj)spl/u-boot-spl.bin
487 $(obj)tools/mkimage -A $(ARCH) -T firmware -C none \ 487 $(obj)tools/mkimage -A $(ARCH) -T firmware -C none \
488 -a $(CONFIG_SPL_TEXT_BASE) -e $(CONFIG_SPL_TEXT_BASE) -n XLOADER \ 488 -a $(CONFIG_SPL_TEXT_BASE) -e $(CONFIG_SPL_TEXT_BASE) -n XLOADER \
489 -d $(obj)spl/u-boot-spl.bin $@ 489 -d $(obj)spl/u-boot-spl.bin $@
490 $(OBJCOPY) -I binary -O binary \ 490 $(OBJCOPY) -I binary -O binary \
491 --pad-to=$(CONFIG_SPL_PAD_TO) --gap-fill=0xff $@ 491 --pad-to=$(CONFIG_SPL_PAD_TO) --gap-fill=0xff $@
492 cat $(obj)u-boot.img >> $@ 492 cat $(obj)u-boot.img >> $@
493 493
494 ifneq ($(CONFIG_TEGRA),) 494 ifneq ($(CONFIG_TEGRA),)
495 $(obj)u-boot-nodtb-tegra.bin: $(obj)spl/u-boot-spl.bin $(obj)u-boot.bin 495 $(obj)u-boot-nodtb-tegra.bin: $(obj)spl/u-boot-spl.bin $(obj)u-boot.bin
496 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(CONFIG_SYS_TEXT_BASE) -O binary $(obj)spl/u-boot-spl $(obj)spl/u-boot-spl-pad.bin 496 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(CONFIG_SYS_TEXT_BASE) -O binary $(obj)spl/u-boot-spl $(obj)spl/u-boot-spl-pad.bin
497 cat $(obj)spl/u-boot-spl-pad.bin $(obj)u-boot.bin > $@ 497 cat $(obj)spl/u-boot-spl-pad.bin $(obj)u-boot.bin > $@
498 rm $(obj)spl/u-boot-spl-pad.bin 498 rm $(obj)spl/u-boot-spl-pad.bin
499 499
500 ifeq ($(CONFIG_OF_SEPARATE),y) 500 ifeq ($(CONFIG_OF_SEPARATE),y)
501 $(obj)u-boot-dtb-tegra.bin: $(obj)u-boot-nodtb-tegra.bin $(obj)u-boot.dtb 501 $(obj)u-boot-dtb-tegra.bin: $(obj)u-boot-nodtb-tegra.bin $(obj)u-boot.dtb
502 cat $(obj)u-boot-nodtb-tegra.bin $(obj)u-boot.dtb > $@ 502 cat $(obj)u-boot-nodtb-tegra.bin $(obj)u-boot.dtb > $@
503 endif 503 endif
504 endif 504 endif
505 505
506 $(obj)u-boot-img.bin: $(obj)spl/u-boot-spl.bin $(obj)u-boot.img 506 $(obj)u-boot-img.bin: $(obj)spl/u-boot-spl.bin $(obj)u-boot.img
507 cat $(obj)spl/u-boot-spl.bin $(obj)u-boot.img > $@ 507 cat $(obj)spl/u-boot-spl.bin $(obj)u-boot.img > $@
508 508
509 # PPC4xx needs the SPL at the end of the image, since the reset vector 509 # PPC4xx needs the SPL at the end of the image, since the reset vector
510 # is located at 0xfffffffc. So we can't use the "u-boot-img.bin" target 510 # is located at 0xfffffffc. So we can't use the "u-boot-img.bin" target
511 # and need to introduce a new build target with the full blown U-Boot 511 # and need to introduce a new build target with the full blown U-Boot
512 # at the start padded up to the start of the SPL image. And then concat 512 # at the start padded up to the start of the SPL image. And then concat
513 # the SPL image to the end. 513 # the SPL image to the end.
514 $(obj)u-boot-img-spl-at-end.bin: $(obj)spl/u-boot-spl.bin $(obj)u-boot.img 514 $(obj)u-boot-img-spl-at-end.bin: $(obj)spl/u-boot-spl.bin $(obj)u-boot.img
515 $(OBJCOPY) -I binary -O binary --pad-to=$(CONFIG_UBOOT_PAD_TO) \ 515 $(OBJCOPY) -I binary -O binary --pad-to=$(CONFIG_UBOOT_PAD_TO) \
516 --gap-fill=0xff $(obj)u-boot.img $@ 516 --gap-fill=0xff $(obj)u-boot.img $@
517 cat $(obj)spl/u-boot-spl.bin >> $@ 517 cat $(obj)spl/u-boot-spl.bin >> $@
518 518
519 # Create a new ELF from a raw binary file. This is useful for arm64 519 # Create a new ELF from a raw binary file. This is useful for arm64
520 # where static relocation needs to be performed on the raw binary, 520 # where static relocation needs to be performed on the raw binary,
521 # but certain simulators only accept an ELF file (but don't do the 521 # but certain simulators only accept an ELF file (but don't do the
522 # relocation). 522 # relocation).
523 # FIXME refactor dts/Makefile to share target/arch detection 523 # FIXME refactor dts/Makefile to share target/arch detection
524 $(obj)u-boot.elf: $(obj)u-boot.bin 524 $(obj)u-boot.elf: $(obj)u-boot.bin
525 @$(OBJCOPY) -B aarch64 -I binary -O elf64-littleaarch64 \ 525 @$(OBJCOPY) -B aarch64 -I binary -O elf64-littleaarch64 \
526 $< $(obj)u-boot-elf.o 526 $< $(obj)u-boot-elf.o
527 @$(LD) $(obj)u-boot-elf.o -o $@ \ 527 @$(LD) $(obj)u-boot-elf.o -o $@ \
528 --defsym=_start=$(CONFIG_SYS_TEXT_BASE) \ 528 --defsym=_start=$(CONFIG_SYS_TEXT_BASE) \
529 -Ttext=$(CONFIG_SYS_TEXT_BASE) 529 -Ttext=$(CONFIG_SYS_TEXT_BASE)
530 530
531 ifeq ($(CONFIG_SANDBOX),y) 531 ifeq ($(CONFIG_SANDBOX),y)
532 GEN_UBOOT = \ 532 GEN_UBOOT = \
533 cd $(LNDIR) && $(CC) $(SYMS) -T $(obj)u-boot.lds \ 533 cd $(LNDIR) && $(CC) $(SYMS) -T $(obj)u-boot.lds \
534 -Wl,--start-group $(__LIBS) -Wl,--end-group \ 534 -Wl,--start-group $(__LIBS) -Wl,--end-group \
535 $(PLATFORM_LIBS) -Wl,-Map -Wl,u-boot.map -o u-boot 535 $(PLATFORM_LIBS) -Wl,-Map -Wl,u-boot.map -o u-boot
536 else 536 else
537 GEN_UBOOT = \ 537 GEN_UBOOT = \
538 cd $(LNDIR) && $(LD) $(LDFLAGS) $(LDFLAGS_$(@F)) \ 538 cd $(LNDIR) && $(LD) $(LDFLAGS) $(LDFLAGS_$(@F)) \
539 $(__OBJS) \ 539 $(__OBJS) \
540 --start-group $(__LIBS) --end-group $(PLATFORM_LIBS) \ 540 --start-group $(__LIBS) --end-group $(PLATFORM_LIBS) \
541 -Map u-boot.map -o u-boot 541 -Map u-boot.map -o u-boot
542 endif 542 endif
543 543
544 $(obj)u-boot: depend \ 544 $(obj)u-boot: depend \
545 $(SUBDIR_TOOLS) $(OBJS) $(LIBS) $(obj)u-boot.lds 545 $(SUBDIR_TOOLS) $(OBJS) $(LIBS) $(obj)u-boot.lds
546 $(GEN_UBOOT) 546 $(GEN_UBOOT)
547 ifeq ($(CONFIG_KALLSYMS),y) 547 ifeq ($(CONFIG_KALLSYMS),y)
548 smap=`$(call SYSTEM_MAP,$(obj)u-boot) | \ 548 smap=`$(call SYSTEM_MAP,$(obj)u-boot) | \
549 awk '$$2 ~ /[tTwW]/ {printf $$1 $$3 "\\\\000"}'` ; \ 549 awk '$$2 ~ /[tTwW]/ {printf $$1 $$3 "\\\\000"}'` ; \
550 $(CC) $(CFLAGS) -DSYSTEM_MAP="\"$${smap}\"" \ 550 $(CC) $(CFLAGS) -DSYSTEM_MAP="\"$${smap}\"" \
551 -c common/system_map.c -o $(obj)common/system_map.o 551 -c common/system_map.c -o $(obj)common/system_map.o
552 $(GEN_UBOOT) $(obj)common/system_map.o 552 $(GEN_UBOOT) $(obj)common/system_map.o
553 endif 553 endif
554 554
555 $(OBJS): 555 $(OBJS):
556 @: 556 @:
557 557
558 $(LIBS): depend $(SUBDIR_TOOLS) 558 $(LIBS): depend $(SUBDIR_TOOLS)
559 $(MAKE) $(build) $(dir $(subst $(obj),,$@)) 559 $(MAKE) $(build) $(dir $(subst $(obj),,$@))
560 560
561 $(SUBDIRS): depend 561 $(SUBDIRS): depend
562 $(MAKE) $(build) $@ all 562 $(MAKE) $(build) $@ all
563 563
564 $(SUBDIR_EXAMPLES-y): $(obj)u-boot 564 $(SUBDIR_EXAMPLES-y): $(obj)u-boot
565 565
566 $(obj)u-boot.lds: $(LDSCRIPT) depend 566 $(obj)u-boot.lds: $(LDSCRIPT) depend
567 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$< >$@ 567 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$< >$@
568 568
569 nand_spl: $(TIMESTAMP_FILE) $(VERSION_FILE) depend 569 nand_spl: $(TIMESTAMP_FILE) $(VERSION_FILE) depend
570 $(MAKE) -C nand_spl/board/$(BOARDDIR) all 570 $(MAKE) $(build) nand_spl/board/$(BOARDDIR) all
571 571
572 $(obj)u-boot-nand.bin: nand_spl $(obj)u-boot.bin 572 $(obj)u-boot-nand.bin: nand_spl $(obj)u-boot.bin
573 cat $(obj)nand_spl/u-boot-spl-16k.bin $(obj)u-boot.bin > $(obj)u-boot-nand.bin 573 cat $(obj)nand_spl/u-boot-spl-16k.bin $(obj)u-boot.bin > $(obj)u-boot-nand.bin
574 574
575 $(obj)spl/u-boot-spl.bin: $(SUBDIR_TOOLS) depend 575 $(obj)spl/u-boot-spl.bin: $(SUBDIR_TOOLS) depend
576 $(MAKE) -C spl all 576 $(MAKE) -C spl all
577 577
578 $(obj)tpl/u-boot-tpl.bin: $(SUBDIR_TOOLS) depend 578 $(obj)tpl/u-boot-tpl.bin: $(SUBDIR_TOOLS) depend
579 $(MAKE) -C spl all CONFIG_TPL_BUILD=y 579 $(MAKE) -C spl all CONFIG_TPL_BUILD=y
580 580
581 # Explicitly make _depend in subdirs containing multiple targets to prevent 581 # Explicitly make _depend in subdirs containing multiple targets to prevent
582 # parallel sub-makes creating .depend files simultaneously. 582 # parallel sub-makes creating .depend files simultaneously.
583 depend dep: $(TIMESTAMP_FILE) $(VERSION_FILE) \ 583 depend dep: $(TIMESTAMP_FILE) $(VERSION_FILE) \
584 $(obj)include/spl-autoconf.mk \ 584 $(obj)include/spl-autoconf.mk \
585 $(obj)include/tpl-autoconf.mk \ 585 $(obj)include/tpl-autoconf.mk \
586 $(obj)include/autoconf.mk \ 586 $(obj)include/autoconf.mk \
587 $(obj)include/generated/generic-asm-offsets.h \ 587 $(obj)include/generated/generic-asm-offsets.h \
588 $(obj)include/generated/asm-offsets.h 588 $(obj)include/generated/asm-offsets.h
589 589
590 TAG_SUBDIRS = $(SUBDIRS) 590 TAG_SUBDIRS = $(SUBDIRS)
591 TAG_SUBDIRS += $(dir $(__LIBS)) 591 TAG_SUBDIRS += $(dir $(__LIBS))
592 TAG_SUBDIRS += include 592 TAG_SUBDIRS += include
593 593
594 FIND := find 594 FIND := find
595 FINDFLAGS := -L 595 FINDFLAGS := -L
596 596
597 checkstack: 597 checkstack:
598 $(CROSS_COMPILE)objdump -d $(obj)u-boot \ 598 $(CROSS_COMPILE)objdump -d $(obj)u-boot \
599 `$(FIND) $(obj) -name u-boot-spl -print` | \ 599 `$(FIND) $(obj) -name u-boot-spl -print` | \
600 perl $(src)scripts/checkstack.pl $(ARCH) 600 perl $(src)scripts/checkstack.pl $(ARCH)
601 601
602 tags ctags: 602 tags ctags:
603 ctags -w -o $(obj)ctags `$(FIND) $(FINDFLAGS) $(TAG_SUBDIRS) \ 603 ctags -w -o $(obj)ctags `$(FIND) $(FINDFLAGS) $(TAG_SUBDIRS) \
604 -name '*.[chS]' -print` 604 -name '*.[chS]' -print`
605 605
606 etags: 606 etags:
607 etags -a -o $(obj)etags `$(FIND) $(FINDFLAGS) $(TAG_SUBDIRS) \ 607 etags -a -o $(obj)etags `$(FIND) $(FINDFLAGS) $(TAG_SUBDIRS) \
608 -name '*.[chS]' -print` 608 -name '*.[chS]' -print`
609 cscope: 609 cscope:
610 $(FIND) $(FINDFLAGS) $(TAG_SUBDIRS) -name '*.[chS]' -print > \ 610 $(FIND) $(FINDFLAGS) $(TAG_SUBDIRS) -name '*.[chS]' -print > \
611 cscope.files 611 cscope.files
612 cscope -b -q -k 612 cscope -b -q -k
613 613
614 SYSTEM_MAP = \ 614 SYSTEM_MAP = \
615 $(NM) $1 | \ 615 $(NM) $1 | \
616 grep -v '\(compiled\)\|\(\.o$$\)\|\( [aUw] \)\|\(\.\.ng$$\)\|\(LASH[RL]DI\)' | \ 616 grep -v '\(compiled\)\|\(\.o$$\)\|\( [aUw] \)\|\(\.\.ng$$\)\|\(LASH[RL]DI\)' | \
617 LC_ALL=C sort 617 LC_ALL=C sort
618 $(obj)System.map: $(obj)u-boot 618 $(obj)System.map: $(obj)u-boot
619 @$(call SYSTEM_MAP,$<) > $@ 619 @$(call SYSTEM_MAP,$<) > $@
620 620
621 checkthumb: 621 checkthumb:
622 @if test $(call cc-version) -lt 0404; then \ 622 @if test $(call cc-version) -lt 0404; then \
623 echo -n '*** Your GCC does not produce working '; \ 623 echo -n '*** Your GCC does not produce working '; \
624 echo 'binaries in THUMB mode.'; \ 624 echo 'binaries in THUMB mode.'; \
625 echo '*** Your board is configured for THUMB mode.'; \ 625 echo '*** Your board is configured for THUMB mode.'; \
626 false; \ 626 false; \
627 fi 627 fi
628 628
629 # GCC 3.x is reported to have problems generating the type of relocation 629 # GCC 3.x is reported to have problems generating the type of relocation
630 # that U-Boot wants. 630 # that U-Boot wants.
631 # See http://lists.denx.de/pipermail/u-boot/2012-September/135156.html 631 # See http://lists.denx.de/pipermail/u-boot/2012-September/135156.html
632 checkgcc4: 632 checkgcc4:
633 @if test $(call cc-version) -lt 0400; then \ 633 @if test $(call cc-version) -lt 0400; then \
634 echo -n '*** Your GCC is too old, please upgrade to GCC 4.x or newer'; \ 634 echo -n '*** Your GCC is too old, please upgrade to GCC 4.x or newer'; \
635 false; \ 635 false; \
636 fi 636 fi
637 637
638 checkdtc: 638 checkdtc:
639 @if test $(call dtc-version) -lt 0104; then \ 639 @if test $(call dtc-version) -lt 0104; then \
640 echo '*** Your dtc is too old, please upgrade to dtc 1.4 or newer'; \ 640 echo '*** Your dtc is too old, please upgrade to dtc 1.4 or newer'; \
641 false; \ 641 false; \
642 fi 642 fi
643 643
644 # 644 #
645 # Auto-generate the autoconf.mk file (which is included by all makefiles) 645 # Auto-generate the autoconf.mk file (which is included by all makefiles)
646 # 646 #
647 # This target actually generates 2 files; autoconf.mk and autoconf.mk.dep. 647 # This target actually generates 2 files; autoconf.mk and autoconf.mk.dep.
648 # the dep file is only include in this top level makefile to determine when 648 # the dep file is only include in this top level makefile to determine when
649 # to regenerate the autoconf.mk file. 649 # to regenerate the autoconf.mk file.
650 $(obj)include/autoconf.mk.dep: $(obj)include/config.h include/common.h 650 $(obj)include/autoconf.mk.dep: $(obj)include/config.h include/common.h
651 @$(XECHO) Generating $@ ; \ 651 @$(XECHO) Generating $@ ; \
652 : Generate the dependancies ; \ 652 : Generate the dependancies ; \
653 $(CC) -x c -DDO_DEPS_ONLY -M $(CFLAGS) $(CPPFLAGS) \ 653 $(CC) -x c -DDO_DEPS_ONLY -M $(CFLAGS) $(CPPFLAGS) \
654 -MQ $(obj)include/autoconf.mk include/common.h > $@ || \ 654 -MQ $(obj)include/autoconf.mk include/common.h > $@ || \
655 rm $@ 655 rm $@
656 656
657 $(obj)include/autoconf.mk: $(obj)include/config.h 657 $(obj)include/autoconf.mk: $(obj)include/config.h
658 @$(XECHO) Generating $@ ; \ 658 @$(XECHO) Generating $@ ; \
659 : Extract the config macros ; \ 659 : Extract the config macros ; \
660 $(CPP) $(CFLAGS) -DDO_DEPS_ONLY -dM include/common.h > $@.tmp && \ 660 $(CPP) $(CFLAGS) -DDO_DEPS_ONLY -dM include/common.h > $@.tmp && \
661 sed -n -f tools/scripts/define2mk.sed $@.tmp > $@; \ 661 sed -n -f tools/scripts/define2mk.sed $@.tmp > $@; \
662 rm $@.tmp 662 rm $@.tmp
663 663
664 # Auto-generate the spl-autoconf.mk file (which is included by all makefiles for SPL) 664 # Auto-generate the spl-autoconf.mk file (which is included by all makefiles for SPL)
665 $(obj)include/tpl-autoconf.mk: $(obj)include/config.h 665 $(obj)include/tpl-autoconf.mk: $(obj)include/config.h
666 @$(XECHO) Generating $@ ; \ 666 @$(XECHO) Generating $@ ; \
667 : Extract the config macros ; \ 667 : Extract the config macros ; \
668 $(CPP) $(CFLAGS) -DCONFIG_TPL_BUILD -DCONFIG_SPL_BUILD\ 668 $(CPP) $(CFLAGS) -DCONFIG_TPL_BUILD -DCONFIG_SPL_BUILD\
669 -DDO_DEPS_ONLY -dM include/common.h > $@.tmp && \ 669 -DDO_DEPS_ONLY -dM include/common.h > $@.tmp && \
670 sed -n -f tools/scripts/define2mk.sed $@.tmp > $@; \ 670 sed -n -f tools/scripts/define2mk.sed $@.tmp > $@; \
671 rm $@.tmp 671 rm $@.tmp
672 672
673 $(obj)include/spl-autoconf.mk: $(obj)include/config.h 673 $(obj)include/spl-autoconf.mk: $(obj)include/config.h
674 @$(XECHO) Generating $@ ; \ 674 @$(XECHO) Generating $@ ; \
675 : Extract the config macros ; \ 675 : Extract the config macros ; \
676 $(CPP) $(CFLAGS) -DCONFIG_SPL_BUILD -DDO_DEPS_ONLY -dM include/common.h > $@.tmp && \ 676 $(CPP) $(CFLAGS) -DCONFIG_SPL_BUILD -DDO_DEPS_ONLY -dM include/common.h > $@.tmp && \
677 sed -n -f tools/scripts/define2mk.sed $@.tmp > $@; \ 677 sed -n -f tools/scripts/define2mk.sed $@.tmp > $@; \
678 rm $@.tmp 678 rm $@.tmp
679 679
680 $(obj)include/generated/generic-asm-offsets.h: $(obj)lib/asm-offsets.s 680 $(obj)include/generated/generic-asm-offsets.h: $(obj)lib/asm-offsets.s
681 @$(XECHO) Generating $@ 681 @$(XECHO) Generating $@
682 tools/scripts/make-asm-offsets $(obj)lib/asm-offsets.s $@ 682 tools/scripts/make-asm-offsets $(obj)lib/asm-offsets.s $@
683 683
684 $(obj)lib/asm-offsets.s: $(obj)include/config.h $(src)lib/asm-offsets.c 684 $(obj)lib/asm-offsets.s: $(obj)include/config.h $(src)lib/asm-offsets.c
685 @mkdir -p $(obj)lib 685 @mkdir -p $(obj)lib
686 $(CC) -DDO_DEPS_ONLY \ 686 $(CC) -DDO_DEPS_ONLY \
687 $(CFLAGS) $(CFLAGS_$(BCURDIR)/$(@F)) $(CFLAGS_$(BCURDIR)) \ 687 $(CFLAGS) $(CFLAGS_$(BCURDIR)/$(@F)) $(CFLAGS_$(BCURDIR)) \
688 -o $@ $(src)lib/asm-offsets.c -c -S 688 -o $@ $(src)lib/asm-offsets.c -c -S
689 689
690 $(obj)include/generated/asm-offsets.h: $(obj)$(CPUDIR)/$(SOC)/asm-offsets.s 690 $(obj)include/generated/asm-offsets.h: $(obj)$(CPUDIR)/$(SOC)/asm-offsets.s
691 @$(XECHO) Generating $@ 691 @$(XECHO) Generating $@
692 tools/scripts/make-asm-offsets $(obj)$(CPUDIR)/$(SOC)/asm-offsets.s $@ 692 tools/scripts/make-asm-offsets $(obj)$(CPUDIR)/$(SOC)/asm-offsets.s $@
693 693
694 $(obj)$(CPUDIR)/$(SOC)/asm-offsets.s: $(obj)include/config.h 694 $(obj)$(CPUDIR)/$(SOC)/asm-offsets.s: $(obj)include/config.h
695 @mkdir -p $(obj)$(CPUDIR)/$(SOC) 695 @mkdir -p $(obj)$(CPUDIR)/$(SOC)
696 if [ -f $(src)$(CPUDIR)/$(SOC)/asm-offsets.c ];then \ 696 if [ -f $(src)$(CPUDIR)/$(SOC)/asm-offsets.c ];then \
697 $(CC) -DDO_DEPS_ONLY \ 697 $(CC) -DDO_DEPS_ONLY \
698 $(CFLAGS) $(CFLAGS_$(BCURDIR)/$(@F)) $(CFLAGS_$(BCURDIR)) \ 698 $(CFLAGS) $(CFLAGS_$(BCURDIR)/$(@F)) $(CFLAGS_$(BCURDIR)) \
699 -o $@ $(src)$(CPUDIR)/$(SOC)/asm-offsets.c -c -S; \ 699 -o $@ $(src)$(CPUDIR)/$(SOC)/asm-offsets.c -c -S; \
700 else \ 700 else \
701 touch $@; \ 701 touch $@; \
702 fi 702 fi
703 703
704 ######################################################################### 704 #########################################################################
705 else # !config.mk 705 else # !config.mk
706 all $(obj)u-boot.hex $(obj)u-boot.srec $(obj)u-boot.bin \ 706 all $(obj)u-boot.hex $(obj)u-boot.srec $(obj)u-boot.bin \
707 $(obj)u-boot.img $(obj)u-boot.dis $(obj)u-boot \ 707 $(obj)u-boot.img $(obj)u-boot.dis $(obj)u-boot \
708 $(filter-out tools,$(SUBDIRS)) \ 708 $(filter-out tools,$(SUBDIRS)) \
709 depend dep tags ctags etags cscope $(obj)System.map: 709 depend dep tags ctags etags cscope $(obj)System.map:
710 @echo "System not configured - see README" >&2 710 @echo "System not configured - see README" >&2
711 @ exit 1 711 @ exit 1
712 712
713 tools: $(VERSION_FILE) $(TIMESTAMP_FILE) 713 tools: $(VERSION_FILE) $(TIMESTAMP_FILE)
714 $(MAKE) $(build) $@ all 714 $(MAKE) $(build) $@ all
715 endif # config.mk 715 endif # config.mk
716 716
717 # ARM relocations should all be R_ARM_RELATIVE (32-bit) or 717 # ARM relocations should all be R_ARM_RELATIVE (32-bit) or
718 # R_AARCH64_RELATIVE (64-bit). 718 # R_AARCH64_RELATIVE (64-bit).
719 checkarmreloc: $(obj)u-boot 719 checkarmreloc: $(obj)u-boot
720 @RELOC="`$(CROSS_COMPILE)readelf -r -W $< | cut -d ' ' -f 4 | \ 720 @RELOC="`$(CROSS_COMPILE)readelf -r -W $< | cut -d ' ' -f 4 | \
721 grep R_A | sort -u`"; \ 721 grep R_A | sort -u`"; \
722 if test "$$RELOC" != "R_ARM_RELATIVE" -a \ 722 if test "$$RELOC" != "R_ARM_RELATIVE" -a \
723 "$$RELOC" != "R_AARCH64_RELATIVE"; then \ 723 "$$RELOC" != "R_AARCH64_RELATIVE"; then \
724 echo "$< contains unexpected relocations: $$RELOC"; \ 724 echo "$< contains unexpected relocations: $$RELOC"; \
725 false; \ 725 false; \
726 fi 726 fi
727 727
728 $(VERSION_FILE): 728 $(VERSION_FILE):
729 @mkdir -p $(dir $(VERSION_FILE)) 729 @mkdir -p $(dir $(VERSION_FILE))
730 @( localvers='$(shell $(TOPDIR)/scripts/setlocalversion $(TOPDIR))' ; \ 730 @( localvers='$(shell $(TOPDIR)/scripts/setlocalversion $(TOPDIR))' ; \
731 printf '#define PLAIN_VERSION "%s%s"\n' \ 731 printf '#define PLAIN_VERSION "%s%s"\n' \
732 "$(U_BOOT_VERSION)" "$${localvers}" ; \ 732 "$(U_BOOT_VERSION)" "$${localvers}" ; \
733 printf '#define U_BOOT_VERSION "U-Boot %s%s"\n' \ 733 printf '#define U_BOOT_VERSION "U-Boot %s%s"\n' \
734 "$(U_BOOT_VERSION)" "$${localvers}" ; \ 734 "$(U_BOOT_VERSION)" "$${localvers}" ; \
735 ) > $@.tmp 735 ) > $@.tmp
736 @( printf '#define CC_VERSION_STRING "%s"\n' \ 736 @( printf '#define CC_VERSION_STRING "%s"\n' \
737 '$(shell $(CC) --version | head -n 1)' )>> $@.tmp 737 '$(shell $(CC) --version | head -n 1)' )>> $@.tmp
738 @( printf '#define LD_VERSION_STRING "%s"\n' \ 738 @( printf '#define LD_VERSION_STRING "%s"\n' \
739 '$(shell $(LD) -v | head -n 1)' )>> $@.tmp 739 '$(shell $(LD) -v | head -n 1)' )>> $@.tmp
740 @cmp -s $@ $@.tmp && rm -f $@.tmp || mv -f $@.tmp $@ 740 @cmp -s $@ $@.tmp && rm -f $@.tmp || mv -f $@.tmp $@
741 741
742 $(TIMESTAMP_FILE): 742 $(TIMESTAMP_FILE):
743 @mkdir -p $(dir $(TIMESTAMP_FILE)) 743 @mkdir -p $(dir $(TIMESTAMP_FILE))
744 @LC_ALL=C date +'#define U_BOOT_DATE "%b %d %C%y"' > $@.tmp 744 @LC_ALL=C date +'#define U_BOOT_DATE "%b %d %C%y"' > $@.tmp
745 @LC_ALL=C date +'#define U_BOOT_TIME "%T"' >> $@.tmp 745 @LC_ALL=C date +'#define U_BOOT_TIME "%T"' >> $@.tmp
746 @cmp -s $@ $@.tmp && rm -f $@.tmp || mv -f $@.tmp $@ 746 @cmp -s $@ $@.tmp && rm -f $@.tmp || mv -f $@.tmp $@
747 747
748 easylogo env gdb: 748 easylogo env gdb:
749 $(MAKE) $(build) tools/$@ MTD_VERSION=${MTD_VERSION} 749 $(MAKE) $(build) tools/$@ MTD_VERSION=${MTD_VERSION}
750 750
751 gdbtools: gdb 751 gdbtools: gdb
752 752
753 xmldocs pdfdocs psdocs htmldocs mandocs: tools/kernel-doc/docproc 753 xmldocs pdfdocs psdocs htmldocs mandocs: tools/kernel-doc/docproc
754 $(MAKE) U_BOOT_VERSION=$(U_BOOT_VERSION) -C doc/DocBook/ $@ 754 $(MAKE) U_BOOT_VERSION=$(U_BOOT_VERSION) -C doc/DocBook/ $@
755 755
756 tools-all: easylogo env gdb $(VERSION_FILE) $(TIMESTAMP_FILE) 756 tools-all: easylogo env gdb $(VERSION_FILE) $(TIMESTAMP_FILE)
757 $(MAKE) $(build) tools HOST_TOOLS_ALL=y 757 $(MAKE) $(build) tools HOST_TOOLS_ALL=y
758 758
759 .PHONY : CHANGELOG 759 .PHONY : CHANGELOG
760 CHANGELOG: 760 CHANGELOG:
761 git log --no-merges U-Boot-1_1_5.. | \ 761 git log --no-merges U-Boot-1_1_5.. | \
762 unexpand -a | sed -e 's/\s\s*$$//' > $@ 762 unexpand -a | sed -e 's/\s\s*$$//' > $@
763 763
764 include/license.h: tools/bin2header COPYING 764 include/license.h: tools/bin2header COPYING
765 cat COPYING | gzip -9 -c | ./tools/bin2header license_gzip > include/license.h 765 cat COPYING | gzip -9 -c | ./tools/bin2header license_gzip > include/license.h
766 ######################################################################### 766 #########################################################################
767 767
768 unconfig: 768 unconfig:
769 @rm -f $(obj)include/config.h $(obj)include/config.mk \ 769 @rm -f $(obj)include/config.h $(obj)include/config.mk \
770 $(obj)board/*/config.tmp $(obj)board/*/*/config.tmp \ 770 $(obj)board/*/config.tmp $(obj)board/*/*/config.tmp \
771 $(obj)include/autoconf.mk $(obj)include/autoconf.mk.dep \ 771 $(obj)include/autoconf.mk $(obj)include/autoconf.mk.dep \
772 $(obj)include/spl-autoconf.mk \ 772 $(obj)include/spl-autoconf.mk \
773 $(obj)include/tpl-autoconf.mk 773 $(obj)include/tpl-autoconf.mk
774 774
775 %_config:: unconfig 775 %_config:: unconfig
776 @$(MKCONFIG) -A $(@:_config=) 776 @$(MKCONFIG) -A $(@:_config=)
777 777
778 sinclude $(obj).boards.depend 778 sinclude $(obj).boards.depend
779 $(obj).boards.depend: boards.cfg 779 $(obj).boards.depend: boards.cfg
780 @awk '(NF && $$1 !~ /^#/) { print $$7 ": " $$7 "_config; $$(MAKE)" }' $< > $@ 780 @awk '(NF && $$1 !~ /^#/) { print $$7 ": " $$7 "_config; $$(MAKE)" }' $< > $@
781 781
782 ######################################################################### 782 #########################################################################
783 ######################################################################### 783 #########################################################################
784 784
785 clean: 785 clean:
786 @rm -f $(obj)examples/standalone/atmel_df_pow2 \ 786 @rm -f $(obj)examples/standalone/atmel_df_pow2 \
787 $(obj)examples/standalone/hello_world \ 787 $(obj)examples/standalone/hello_world \
788 $(obj)examples/standalone/interrupt \ 788 $(obj)examples/standalone/interrupt \
789 $(obj)examples/standalone/mem_to_mem_idma2intr \ 789 $(obj)examples/standalone/mem_to_mem_idma2intr \
790 $(obj)examples/standalone/sched \ 790 $(obj)examples/standalone/sched \
791 $(obj)examples/standalone/smc911{11,x}_eeprom \ 791 $(obj)examples/standalone/smc911{11,x}_eeprom \
792 $(obj)examples/standalone/test_burst \ 792 $(obj)examples/standalone/test_burst \
793 $(obj)examples/standalone/timer 793 $(obj)examples/standalone/timer
794 @rm -f $(obj)examples/api/demo{,.bin} 794 @rm -f $(obj)examples/api/demo{,.bin}
795 @rm -f $(obj)tools/bmp_logo $(obj)tools/easylogo/easylogo \ 795 @rm -f $(obj)tools/bmp_logo $(obj)tools/easylogo/easylogo \
796 $(obj)tools/env/fw_printenv \ 796 $(obj)tools/env/fw_printenv \
797 $(obj)tools/envcrc \ 797 $(obj)tools/envcrc \
798 $(obj)tools/gdb/{gdbcont,gdbsend} \ 798 $(obj)tools/gdb/{gdbcont,gdbsend} \
799 $(obj)tools/gen_eth_addr $(obj)tools/img2srec \ 799 $(obj)tools/gen_eth_addr $(obj)tools/img2srec \
800 $(obj)tools/dump{env,}image \ 800 $(obj)tools/dump{env,}image \
801 $(obj)tools/mk{env,}image $(obj)tools/mpc86x_clk \ 801 $(obj)tools/mk{env,}image $(obj)tools/mpc86x_clk \
802 $(obj)tools/mk{$(BOARD),exynos}spl \ 802 $(obj)tools/mk{$(BOARD),exynos}spl \
803 $(obj)tools/mxsboot \ 803 $(obj)tools/mxsboot \
804 $(obj)tools/ncb $(obj)tools/ubsha1 \ 804 $(obj)tools/ncb $(obj)tools/ubsha1 \
805 $(obj)tools/kernel-doc/docproc \ 805 $(obj)tools/kernel-doc/docproc \
806 $(obj)tools/proftool 806 $(obj)tools/proftool
807 @rm -f $(obj)board/cray/L1/{bootscript.c,bootscript.image} \ 807 @rm -f $(obj)board/cray/L1/{bootscript.c,bootscript.image} \
808 $(obj)board/matrix_vision/*/bootscript.img \ 808 $(obj)board/matrix_vision/*/bootscript.img \
809 $(obj)spl/board/samsung/$(BOARD)/tools/mk$(BOARD)spl \ 809 $(obj)spl/board/samsung/$(BOARD)/tools/mk$(BOARD)spl \
810 $(obj)u-boot.lds \ 810 $(obj)u-boot.lds \
811 $(obj)arch/blackfin/cpu/init.{lds,elf} 811 $(obj)arch/blackfin/cpu/init.{lds,elf}
812 @rm -f $(obj)include/bmp_logo.h 812 @rm -f $(obj)include/bmp_logo.h
813 @rm -f $(obj)include/bmp_logo_data.h 813 @rm -f $(obj)include/bmp_logo_data.h
814 @rm -f $(obj)lib/asm-offsets.s 814 @rm -f $(obj)lib/asm-offsets.s
815 @rm -f $(obj)include/generated/asm-offsets.h 815 @rm -f $(obj)include/generated/asm-offsets.h
816 @rm -f $(obj)$(CPUDIR)/$(SOC)/asm-offsets.s 816 @rm -f $(obj)$(CPUDIR)/$(SOC)/asm-offsets.s
817 @rm -f $(TIMESTAMP_FILE) $(VERSION_FILE) 817 @rm -f $(TIMESTAMP_FILE) $(VERSION_FILE)
818 @$(MAKE) -s -C doc/DocBook/ cleandocs 818 @$(MAKE) -s -C doc/DocBook/ cleandocs
819 @find $(OBJTREE) -type f \ 819 @find $(OBJTREE) -type f \
820 \( -name 'core' -o -name '*.bak' -o -name '*~' -o -name '*.su' \ 820 \( -name 'core' -o -name '*.bak' -o -name '*~' -o -name '*.su' \
821 -o -name '*.o' -o -name '*.a' -o -name '*.exe' \ 821 -o -name '*.o' -o -name '*.a' -o -name '*.exe' \
822 -o -name '*.cfgtmp' \) -print \ 822 -o -name '*.cfgtmp' \) -print \
823 | xargs rm -f 823 | xargs rm -f
824 824
825 # Removes everything not needed for testing u-boot 825 # Removes everything not needed for testing u-boot
826 tidy: clean 826 tidy: clean
827 @find $(OBJTREE) -type f \( -name '*.depend*' \) -print | xargs rm -f 827 @find $(OBJTREE) -type f \( -name '*.depend*' \) -print | xargs rm -f
828 828
829 clobber: tidy 829 clobber: tidy
830 @find $(OBJTREE) -type f \( -name '*.srec' \ 830 @find $(OBJTREE) -type f \( -name '*.srec' \
831 -o -name '*.bin' -o -name u-boot.img \) \ 831 -o -name '*.bin' -o -name u-boot.img \) \
832 -print0 | xargs -0 rm -f 832 -print0 | xargs -0 rm -f
833 @rm -f $(OBJS) $(obj)*.bak $(obj)ctags $(obj)etags $(obj)TAGS \ 833 @rm -f $(OBJS) $(obj)*.bak $(obj)ctags $(obj)etags $(obj)TAGS \
834 $(obj)cscope.* $(obj)*.*~ 834 $(obj)cscope.* $(obj)*.*~
835 @rm -f $(obj)u-boot $(obj)u-boot.map $(obj)u-boot.hex $(ALL-y) 835 @rm -f $(obj)u-boot $(obj)u-boot.map $(obj)u-boot.hex $(ALL-y)
836 @rm -f $(obj)u-boot.kwb 836 @rm -f $(obj)u-boot.kwb
837 @rm -f $(obj)u-boot.pbl 837 @rm -f $(obj)u-boot.pbl
838 @rm -f $(obj)u-boot.imx 838 @rm -f $(obj)u-boot.imx
839 @rm -f $(obj)u-boot-with-spl.imx 839 @rm -f $(obj)u-boot-with-spl.imx
840 @rm -f $(obj)u-boot-with-nand-spl.imx 840 @rm -f $(obj)u-boot-with-nand-spl.imx
841 @rm -f $(obj)u-boot.ubl 841 @rm -f $(obj)u-boot.ubl
842 @rm -f $(obj)u-boot.ais 842 @rm -f $(obj)u-boot.ais
843 @rm -f $(obj)u-boot.dtb 843 @rm -f $(obj)u-boot.dtb
844 @rm -f $(obj)u-boot.sb 844 @rm -f $(obj)u-boot.sb
845 @rm -f $(obj)u-boot.spr 845 @rm -f $(obj)u-boot.spr
846 @rm -f $(obj)nand_spl/{u-boot.{lds,lst},System.map} 846 @rm -f $(obj)nand_spl/{u-boot.{lds,lst},System.map}
847 @rm -f $(obj)nand_spl/{u-boot-nand_spl.lds,u-boot-spl,u-boot-spl.map} 847 @rm -f $(obj)nand_spl/{u-boot-nand_spl.lds,u-boot-spl,u-boot-spl.map}
848 @rm -f $(obj)spl/{u-boot-spl,u-boot-spl.bin,u-boot-spl.map} 848 @rm -f $(obj)spl/{u-boot-spl,u-boot-spl.bin,u-boot-spl.map}
849 @rm -f $(obj)spl/u-boot-spl.lds 849 @rm -f $(obj)spl/u-boot-spl.lds
850 @rm -f $(obj)tpl/{u-boot-tpl,u-boot-tpl.bin,u-boot-tpl.map} 850 @rm -f $(obj)tpl/{u-boot-tpl,u-boot-tpl.bin,u-boot-tpl.map}
851 @rm -f $(obj)tpl/u-boot-spl.lds 851 @rm -f $(obj)tpl/u-boot-spl.lds
852 @rm -f $(obj)MLO MLO.byteswap 852 @rm -f $(obj)MLO MLO.byteswap
853 @rm -f $(obj)SPL 853 @rm -f $(obj)SPL
854 @rm -f $(obj)tools/xway-swap-bytes 854 @rm -f $(obj)tools/xway-swap-bytes
855 @rm -fr $(obj)include/asm/proc $(obj)include/asm/arch $(obj)include/asm 855 @rm -fr $(obj)include/asm/proc $(obj)include/asm/arch $(obj)include/asm
856 @rm -fr $(obj)include/generated 856 @rm -fr $(obj)include/generated
857 @[ ! -d $(obj)nand_spl ] || find $(obj)nand_spl -name "*" -type l -print | xargs rm -f 857 @[ ! -d $(obj)nand_spl ] || find $(obj)nand_spl -name "*" -type l -print | xargs rm -f
858 @rm -f $(obj)dts/*.tmp 858 @rm -f $(obj)dts/*.tmp
859 @rm -f $(obj)spl/u-boot-spl{,-pad}.ais 859 @rm -f $(obj)spl/u-boot-spl{,-pad}.ais
860 860
861 mrproper \ 861 mrproper \
862 distclean: clobber unconfig 862 distclean: clobber unconfig
863 ifneq ($(OBJTREE),$(SRCTREE)) 863 ifneq ($(OBJTREE),$(SRCTREE))
864 rm -rf $(obj)* 864 rm -rf $(obj)*
865 endif 865 endif
866 866
867 backup: 867 backup:
868 F=`basename $(TOPDIR)` ; cd .. ; \ 868 F=`basename $(TOPDIR)` ; cd .. ; \
869 gtar --force-local -zcvf `LC_ALL=C date "+$$F-%Y-%m-%d-%T.tar.gz"` $$F 869 gtar --force-local -zcvf `LC_ALL=C date "+$$F-%Y-%m-%d-%T.tar.gz"` $$F
870 870
871 ######################################################################### 871 #########################################################################
872 872
nand_spl/board/amcc/acadia/Makefile
1 # 1 #
2 # (C) Copyright 2007 2 # (C) Copyright 2007
3 # Stefan Roese, DENX Software Engineering, sr@denx.de. 3 # Stefan Roese, DENX Software Engineering, sr@denx.de.
4 # 4 #
5 # SPDX-License-Identifier: GPL-2.0+ 5 # SPDX-License-Identifier: GPL-2.0+
6 # 6 #
7 7
8 include $(TOPDIR)/config.mk
9 include $(TOPDIR)/nand_spl/board/$(BOARDDIR)/config.mk 8 include $(TOPDIR)/nand_spl/board/$(BOARDDIR)/config.mk
10 9
11 nandobj := $(OBJTREE)/nand_spl/ 10 nandobj := $(OBJTREE)/nand_spl/
12 11
13 LDSCRIPT= $(TOPDIR)/nand_spl/board/$(BOARDDIR)/u-boot.lds 12 LDSCRIPT= $(TOPDIR)/nand_spl/board/$(BOARDDIR)/u-boot.lds
14 LDFLAGS := -T $(nandobj)u-boot.lds -Ttext $(CONFIG_SYS_TEXT_BASE) $(LDFLAGS) \ 13 LDFLAGS := -T $(nandobj)u-boot.lds -Ttext $(CONFIG_SYS_TEXT_BASE) $(LDFLAGS) \
15 $(LDFLAGS_FINAL) 14 $(LDFLAGS_FINAL)
16 AFLAGS += -DCONFIG_NAND_SPL 15 AFLAGS += -DCONFIG_NAND_SPL
17 CFLAGS += -DCONFIG_NAND_SPL 16 CFLAGS += -DCONFIG_NAND_SPL
18 17
19 SOBJS = start.o resetvec.o cache.o 18 SOBJS = start.o resetvec.o cache.o
20 COBJS = gpio.o nand_boot.o nand_ecc.o memory.o ndfc.o pll.o 19 COBJS = gpio.o nand_boot.o nand_ecc.o memory.o ndfc.o pll.o
21 20
22 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c)) 21 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c))
23 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS)) 22 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS))
24 __OBJS := $(SOBJS) $(COBJS) 23 __OBJS := $(SOBJS) $(COBJS)
25 LNDIR := $(nandobj)board/$(BOARDDIR) 24 LNDIR := $(nandobj)board/$(BOARDDIR)
26 25
27 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin \ 26 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin \
28 $(nandobj)System.map 27 $(nandobj)System.map
29 28
30 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl 29 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl
31 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@ 30 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@
32 31
33 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl 32 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl
34 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@ 33 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
35 34
36 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot.lds 35 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot.lds
37 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \ 36 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \
38 -Map $(nandobj)u-boot-spl.map -o $@ 37 -Map $(nandobj)u-boot-spl.map -o $@
39 38
40 $(nandobj)System.map: $(nandobj)u-boot-spl 39 $(nandobj)System.map: $(nandobj)u-boot-spl
41 @$(NM) $< | \ 40 @$(NM) $< | \
42 grep -v '\(compiled\)\|\(\.o$$\)\|\( [aUw] \)\|\(\.\.ng$$\)\|\(LASH[RL]DI\)' | \ 41 grep -v '\(compiled\)\|\(\.o$$\)\|\( [aUw] \)\|\(\.\.ng$$\)\|\(LASH[RL]DI\)' | \
43 sort > $@ 42 sort > $@
44 43
45 $(nandobj)u-boot.lds: $(LDSCRIPT) 44 $(nandobj)u-boot.lds: $(LDSCRIPT)
46 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@ 45 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@
47 46
48 # create symbolic links for common files 47 # create symbolic links for common files
49 48
50 # from cpu directory 49 # from cpu directory
51 $(obj)cache.S: 50 $(obj)cache.S:
52 @rm -f $@ 51 @rm -f $@
53 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/cache.S $@ 52 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/cache.S $@
54 53
55 $(obj)gpio.c: 54 $(obj)gpio.c:
56 @rm -f $@ 55 @rm -f $@
57 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/gpio.c $@ 56 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/gpio.c $@
58 57
59 $(obj)ndfc.c: 58 $(obj)ndfc.c:
60 @rm -f $@ 59 @rm -f $@
61 ln -s $(SRCTREE)/drivers/mtd/nand/ndfc.c $@ 60 ln -s $(SRCTREE)/drivers/mtd/nand/ndfc.c $@
62 61
63 $(obj)resetvec.S: 62 $(obj)resetvec.S:
64 @rm -f $@ 63 @rm -f $@
65 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/resetvec.S $@ 64 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/resetvec.S $@
66 65
67 $(obj)start.S: 66 $(obj)start.S:
68 @rm -f $@ 67 @rm -f $@
69 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/start.S $@ 68 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/start.S $@
70 69
71 # from board directory 70 # from board directory
72 $(obj)memory.c: 71 $(obj)memory.c:
73 @rm -f $@ 72 @rm -f $@
74 ln -s $(SRCTREE)/board/amcc/acadia/memory.c $@ 73 ln -s $(SRCTREE)/board/amcc/acadia/memory.c $@
75 74
76 $(obj)pll.c: 75 $(obj)pll.c:
77 @rm -f $@ 76 @rm -f $@
78 ln -s $(SRCTREE)/board/amcc/acadia/pll.c $@ 77 ln -s $(SRCTREE)/board/amcc/acadia/pll.c $@
79 78
80 # from nand_spl directory 79 # from nand_spl directory
81 $(obj)nand_boot.c: 80 $(obj)nand_boot.c:
82 @rm -f $@ 81 @rm -f $@
83 ln -s $(SRCTREE)/nand_spl/nand_boot.c $@ 82 ln -s $(SRCTREE)/nand_spl/nand_boot.c $@
84 83
85 # from drivers/mtd/nand directory 84 # from drivers/mtd/nand directory
86 $(obj)nand_ecc.c: 85 $(obj)nand_ecc.c:
87 @rm -f $@ 86 @rm -f $@
88 ln -s $(SRCTREE)/drivers/mtd/nand/nand_ecc.c $@ 87 ln -s $(SRCTREE)/drivers/mtd/nand/nand_ecc.c $@
89 88
90 ######################################################################### 89 #########################################################################
91 90
92 $(obj)%.o: $(obj)%.S 91 $(obj)%.o: $(obj)%.S
93 $(CC) $(AFLAGS) -c -o $@ $< 92 $(CC) $(AFLAGS) -c -o $@ $<
94 93
95 $(obj)%.o: $(obj)%.c 94 $(obj)%.o: $(obj)%.c
96 $(CC) $(CFLAGS) -c -o $@ $< 95 $(CC) $(CFLAGS) -c -o $@ $<
97
98 # defines $(obj).depend target
99 include $(SRCTREE)/rules.mk
100
101 sinclude $(obj).depend
102
103 #########################################################################
104 96
nand_spl/board/amcc/bamboo/Makefile
1 # 1 #
2 # (C) Copyright 2007 2 # (C) Copyright 2007
3 # Stefan Roese, DENX Software Engineering, sr@denx.de. 3 # Stefan Roese, DENX Software Engineering, sr@denx.de.
4 # 4 #
5 # SPDX-License-Identifier: GPL-2.0+ 5 # SPDX-License-Identifier: GPL-2.0+
6 # 6 #
7 7
8 include $(TOPDIR)/config.mk
9 include $(TOPDIR)/nand_spl/board/$(BOARDDIR)/config.mk 8 include $(TOPDIR)/nand_spl/board/$(BOARDDIR)/config.mk
10 9
11 nandobj := $(OBJTREE)/nand_spl/ 10 nandobj := $(OBJTREE)/nand_spl/
12 11
13 LDSCRIPT= $(TOPDIR)/nand_spl/board/$(BOARDDIR)/u-boot.lds 12 LDSCRIPT= $(TOPDIR)/nand_spl/board/$(BOARDDIR)/u-boot.lds
14 LDFLAGS := -T $(nandobj)u-boot.lds -Ttext $(CONFIG_SYS_TEXT_BASE) $(LDFLAGS) \ 13 LDFLAGS := -T $(nandobj)u-boot.lds -Ttext $(CONFIG_SYS_TEXT_BASE) $(LDFLAGS) \
15 $(LDFLAGS_FINAL) 14 $(LDFLAGS_FINAL)
16 AFLAGS += -DCONFIG_NAND_SPL 15 AFLAGS += -DCONFIG_NAND_SPL
17 CFLAGS += -DCONFIG_NAND_SPL 16 CFLAGS += -DCONFIG_NAND_SPL
18 17
19 SOBJS = start.o init.o resetvec.o 18 SOBJS = start.o init.o resetvec.o
20 COBJS = nand_boot.o nand_ecc.o ndfc.o sdram.o 19 COBJS = nand_boot.o nand_ecc.o ndfc.o sdram.o
21 20
22 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c)) 21 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c))
23 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS)) 22 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS))
24 __OBJS := $(SOBJS) $(COBJS) 23 __OBJS := $(SOBJS) $(COBJS)
25 LNDIR := $(nandobj)board/$(BOARDDIR) 24 LNDIR := $(nandobj)board/$(BOARDDIR)
26 25
27 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin 26 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin
28 27
29 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl 28 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl
30 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@ 29 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@
31 30
32 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl 31 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl
33 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@ 32 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
34 33
35 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot.lds 34 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot.lds
36 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \ 35 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \
37 -Map $(nandobj)u-boot-spl.map -o $@ 36 -Map $(nandobj)u-boot-spl.map -o $@
38 37
39 $(nandobj)u-boot.lds: $(LDSCRIPT) 38 $(nandobj)u-boot.lds: $(LDSCRIPT)
40 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@ 39 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@
41 40
42 # create symbolic links for common files 41 # create symbolic links for common files
43 42
44 # from cpu directory 43 # from cpu directory
45 $(obj)ndfc.c: 44 $(obj)ndfc.c:
46 @rm -f $@ 45 @rm -f $@
47 ln -s $(SRCTREE)/drivers/mtd/nand/ndfc.c $@ 46 ln -s $(SRCTREE)/drivers/mtd/nand/ndfc.c $@
48 47
49 $(obj)resetvec.S: 48 $(obj)resetvec.S:
50 @rm -f $@ 49 @rm -f $@
51 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/resetvec.S $@ 50 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/resetvec.S $@
52 51
53 $(obj)start.S: 52 $(obj)start.S:
54 @rm -f $@ 53 @rm -f $@
55 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/start.S $@ 54 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/start.S $@
56 55
57 # from board directory 56 # from board directory
58 $(obj)init.S: 57 $(obj)init.S:
59 @rm -f $@ 58 @rm -f $@
60 ln -s $(SRCTREE)/board/amcc/bamboo/init.S $@ 59 ln -s $(SRCTREE)/board/amcc/bamboo/init.S $@
61 60
62 # from nand_spl directory 61 # from nand_spl directory
63 $(obj)nand_boot.c: 62 $(obj)nand_boot.c:
64 @rm -f $@ 63 @rm -f $@
65 ln -s $(SRCTREE)/nand_spl/nand_boot.c $@ 64 ln -s $(SRCTREE)/nand_spl/nand_boot.c $@
66 65
67 # from drivers/mtd/nand directory 66 # from drivers/mtd/nand directory
68 $(obj)nand_ecc.c: 67 $(obj)nand_ecc.c:
69 @rm -f $@ 68 @rm -f $@
70 ln -s $(SRCTREE)/drivers/mtd/nand/nand_ecc.c $@ 69 ln -s $(SRCTREE)/drivers/mtd/nand/nand_ecc.c $@
71 70
72 ifneq ($(OBJTREE), $(SRCTREE)) 71 ifneq ($(OBJTREE), $(SRCTREE))
73 $(obj)sdram.c: 72 $(obj)sdram.c:
74 @rm -f $@ 73 @rm -f $@
75 ln -s $(SRCTREE)/nand_spl/board/$(BOARDDIR)/sdram.c $@ 74 ln -s $(SRCTREE)/nand_spl/board/$(BOARDDIR)/sdram.c $@
76 endif 75 endif
77 76
78 ######################################################################### 77 #########################################################################
79 78
80 $(obj)%.o: $(obj)%.S 79 $(obj)%.o: $(obj)%.S
81 $(CC) $(AFLAGS) -c -o $@ $< 80 $(CC) $(AFLAGS) -c -o $@ $<
82 81
83 $(obj)%.o: $(obj)%.c 82 $(obj)%.o: $(obj)%.c
84 $(CC) $(CFLAGS) -c -o $@ $< 83 $(CC) $(CFLAGS) -c -o $@ $<
85
86 # defines $(obj).depend target
87 include $(SRCTREE)/rules.mk
88
89 sinclude $(obj).depend
90
91 #########################################################################
92 84
nand_spl/board/amcc/canyonlands/Makefile
1 # 1 #
2 # (C) Copyright 2008 2 # (C) Copyright 2008
3 # Stefan Roese, DENX Software Engineering, sr@denx.de. 3 # Stefan Roese, DENX Software Engineering, sr@denx.de.
4 # 4 #
5 # SPDX-License-Identifier: GPL-2.0+ 5 # SPDX-License-Identifier: GPL-2.0+
6 # 6 #
7 7
8 include $(TOPDIR)/config.mk
9 include $(TOPDIR)/nand_spl/board/$(BOARDDIR)/config.mk 8 include $(TOPDIR)/nand_spl/board/$(BOARDDIR)/config.mk
10 9
11 nandobj := $(OBJTREE)/nand_spl/ 10 nandobj := $(OBJTREE)/nand_spl/
12 11
13 LDSCRIPT= $(TOPDIR)/nand_spl/board/$(BOARDDIR)/u-boot.lds 12 LDSCRIPT= $(TOPDIR)/nand_spl/board/$(BOARDDIR)/u-boot.lds
14 LDFLAGS := -T $(nandobj)u-boot.lds -Ttext $(CONFIG_SYS_TEXT_BASE) $(LDFLAGS) \ 13 LDFLAGS := -T $(nandobj)u-boot.lds -Ttext $(CONFIG_SYS_TEXT_BASE) $(LDFLAGS) \
15 $(LDFLAGS_FINAL) 14 $(LDFLAGS_FINAL)
16 AFLAGS += -DCONFIG_NAND_SPL 15 AFLAGS += -DCONFIG_NAND_SPL
17 CFLAGS += -DCONFIG_NAND_SPL 16 CFLAGS += -DCONFIG_NAND_SPL
18 17
19 SOBJS := start.o 18 SOBJS := start.o
20 SOBJS += init.o 19 SOBJS += init.o
21 SOBJS += resetvec.o 20 SOBJS += resetvec.o
22 COBJS := ddr2_fixed.o 21 COBJS := ddr2_fixed.o
23 COBJS += nand_boot.o 22 COBJS += nand_boot.o
24 COBJS += nand_ecc.o 23 COBJS += nand_ecc.o
25 COBJS += ndfc.o 24 COBJS += ndfc.o
26 25
27 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c)) 26 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c))
28 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS)) 27 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS))
29 __OBJS := $(SOBJS) $(COBJS) 28 __OBJS := $(SOBJS) $(COBJS)
30 LNDIR := $(nandobj)board/$(BOARDDIR) 29 LNDIR := $(nandobj)board/$(BOARDDIR)
31 30
32 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin 31 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin
33 32
34 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl 33 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl
35 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@ 34 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@
36 35
37 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl 36 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl
38 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@ 37 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
39 38
40 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot.lds 39 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot.lds
41 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \ 40 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \
42 -Map $(nandobj)u-boot-spl.map -o $@ 41 -Map $(nandobj)u-boot-spl.map -o $@
43 42
44 $(nandobj)u-boot.lds: $(LDSCRIPT) 43 $(nandobj)u-boot.lds: $(LDSCRIPT)
45 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@ 44 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@
46 45
47 # create symbolic links for common files 46 # create symbolic links for common files
48 47
49 # from cpu directory 48 # from cpu directory
50 $(obj)ndfc.c: 49 $(obj)ndfc.c:
51 @rm -f $@ 50 @rm -f $@
52 ln -s $(SRCTREE)/drivers/mtd/nand/ndfc.c $@ 51 ln -s $(SRCTREE)/drivers/mtd/nand/ndfc.c $@
53 52
54 $(obj)resetvec.S: 53 $(obj)resetvec.S:
55 @rm -f $@ 54 @rm -f $@
56 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/resetvec.S $@ 55 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/resetvec.S $@
57 56
58 $(obj)start.S: 57 $(obj)start.S:
59 @rm -f $@ 58 @rm -f $@
60 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/start.S $@ 59 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/start.S $@
61 60
62 # from board directory 61 # from board directory
63 $(obj)init.S: 62 $(obj)init.S:
64 @rm -f $@ 63 @rm -f $@
65 ln -s $(SRCTREE)/board/amcc/canyonlands/init.S $@ 64 ln -s $(SRCTREE)/board/amcc/canyonlands/init.S $@
66 65
67 # from nand_spl directory 66 # from nand_spl directory
68 $(obj)nand_boot.c: 67 $(obj)nand_boot.c:
69 @rm -f $@ 68 @rm -f $@
70 ln -s $(SRCTREE)/nand_spl/nand_boot.c $@ 69 ln -s $(SRCTREE)/nand_spl/nand_boot.c $@
71 70
72 # from drivers/mtd/nand directory 71 # from drivers/mtd/nand directory
73 $(obj)nand_ecc.c: 72 $(obj)nand_ecc.c:
74 @rm -f $@ 73 @rm -f $@
75 ln -s $(SRCTREE)/drivers/mtd/nand/nand_ecc.c $@ 74 ln -s $(SRCTREE)/drivers/mtd/nand/nand_ecc.c $@
76 75
77 ifneq ($(OBJTREE), $(SRCTREE)) 76 ifneq ($(OBJTREE), $(SRCTREE))
78 $(obj)ddr2_fixed.c: 77 $(obj)ddr2_fixed.c:
79 @rm -f $@ 78 @rm -f $@
80 ln -s $(SRCTREE)/nand_spl/board/$(BOARDDIR)/ddr2_fixed.c $@ 79 ln -s $(SRCTREE)/nand_spl/board/$(BOARDDIR)/ddr2_fixed.c $@
81 endif 80 endif
82 81
83 ######################################################################### 82 #########################################################################
84 83
85 $(obj)%.o: $(obj)%.S 84 $(obj)%.o: $(obj)%.S
86 $(CC) $(AFLAGS) -c -o $@ $< 85 $(CC) $(AFLAGS) -c -o $@ $<
87 86
88 $(obj)%.o: $(obj)%.c 87 $(obj)%.o: $(obj)%.c
89 $(CC) $(CFLAGS) -c -o $@ $< 88 $(CC) $(CFLAGS) -c -o $@ $<
90
91 # defines $(obj).depend target
92 include $(SRCTREE)/rules.mk
93
94 sinclude $(obj).depend
95
96 #########################################################################
97 89
nand_spl/board/amcc/kilauea/Makefile
1 # 1 #
2 # (C) Copyright 2007 2 # (C) Copyright 2007
3 # Stefan Roese, DENX Software Engineering, sr@denx.de. 3 # Stefan Roese, DENX Software Engineering, sr@denx.de.
4 # 4 #
5 # SPDX-License-Identifier: GPL-2.0+ 5 # SPDX-License-Identifier: GPL-2.0+
6 # 6 #
7 7
8 include $(TOPDIR)/config.mk
9 include $(TOPDIR)/nand_spl/board/$(BOARDDIR)/config.mk 8 include $(TOPDIR)/nand_spl/board/$(BOARDDIR)/config.mk
10 9
11 nandobj := $(OBJTREE)/nand_spl/ 10 nandobj := $(OBJTREE)/nand_spl/
12 11
13 LDSCRIPT= $(TOPDIR)/nand_spl/board/$(BOARDDIR)/u-boot.lds 12 LDSCRIPT= $(TOPDIR)/nand_spl/board/$(BOARDDIR)/u-boot.lds
14 LDFLAGS := -T $(nandobj)u-boot.lds -Ttext $(CONFIG_SYS_TEXT_BASE) $(LDFLAGS) \ 13 LDFLAGS := -T $(nandobj)u-boot.lds -Ttext $(CONFIG_SYS_TEXT_BASE) $(LDFLAGS) \
15 $(LDFLAGS_FINAL) 14 $(LDFLAGS_FINAL)
16 AFLAGS += -DCONFIG_NAND_SPL 15 AFLAGS += -DCONFIG_NAND_SPL
17 CFLAGS += -DCONFIG_NAND_SPL 16 CFLAGS += -DCONFIG_NAND_SPL
18 17
19 SOBJS = start.o resetvec.o cache.o 18 SOBJS = start.o resetvec.o cache.o
20 COBJS = 44x_spd_ddr2.o nand_boot.o nand_ecc.o ndfc.o 19 COBJS = 44x_spd_ddr2.o nand_boot.o nand_ecc.o ndfc.o
21 20
22 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c)) 21 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c))
23 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS)) 22 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS))
24 __OBJS := $(SOBJS) $(COBJS) 23 __OBJS := $(SOBJS) $(COBJS)
25 LNDIR := $(nandobj)board/$(BOARDDIR) 24 LNDIR := $(nandobj)board/$(BOARDDIR)
26 25
27 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin 26 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin
28 27
29 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl 28 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl
30 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@ 29 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@
31 30
32 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl 31 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl
33 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@ 32 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
34 33
35 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot.lds 34 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot.lds
36 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \ 35 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \
37 -Map $(nandobj)u-boot-spl.map -o $@ 36 -Map $(nandobj)u-boot-spl.map -o $@
38 37
39 $(nandobj)u-boot.lds: $(LDSCRIPT) 38 $(nandobj)u-boot.lds: $(LDSCRIPT)
40 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@ 39 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@
41 40
42 # create symbolic links for common files 41 # create symbolic links for common files
43 42
44 # from cpu directory 43 # from cpu directory
45 $(obj)44x_spd_ddr2.c: $(obj)ecc.h 44 $(obj)44x_spd_ddr2.c: $(obj)ecc.h
46 @rm -f $@ 45 @rm -f $@
47 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/44x_spd_ddr2.c $@ 46 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/44x_spd_ddr2.c $@
48 47
49 $(obj)cache.S: 48 $(obj)cache.S:
50 @rm -f $@ 49 @rm -f $@
51 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/cache.S $@ 50 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/cache.S $@
52 51
53 $(obj)ecc.h: 52 $(obj)ecc.h:
54 @rm -f $@ 53 @rm -f $@
55 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/ecc.h $@ 54 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/ecc.h $@
56 55
57 $(obj)ndfc.c: 56 $(obj)ndfc.c:
58 @rm -f $@ 57 @rm -f $@
59 ln -s $(SRCTREE)/drivers/mtd/nand/ndfc.c $@ 58 ln -s $(SRCTREE)/drivers/mtd/nand/ndfc.c $@
60 59
61 $(obj)resetvec.S: 60 $(obj)resetvec.S:
62 @rm -f $@ 61 @rm -f $@
63 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/resetvec.S $@ 62 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/resetvec.S $@
64 63
65 $(obj)start.S: 64 $(obj)start.S:
66 @rm -f $@ 65 @rm -f $@
67 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/start.S $@ 66 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/start.S $@
68 67
69 # from nand_spl directory 68 # from nand_spl directory
70 $(obj)nand_boot.c: 69 $(obj)nand_boot.c:
71 @rm -f $@ 70 @rm -f $@
72 ln -s $(SRCTREE)/nand_spl/nand_boot.c $@ 71 ln -s $(SRCTREE)/nand_spl/nand_boot.c $@
73 72
74 # from drivers/nand directory 73 # from drivers/nand directory
75 $(obj)nand_ecc.c: 74 $(obj)nand_ecc.c:
76 @rm -f $@ 75 @rm -f $@
77 ln -s $(SRCTREE)/drivers/mtd/nand/nand_ecc.c $@ 76 ln -s $(SRCTREE)/drivers/mtd/nand/nand_ecc.c $@
78 77
79 ######################################################################### 78 #########################################################################
80 79
81 $(obj)%.o: $(obj)%.S 80 $(obj)%.o: $(obj)%.S
82 $(CC) $(AFLAGS) -c -o $@ $< 81 $(CC) $(AFLAGS) -c -o $@ $<
83 82
84 $(obj)%.o: $(obj)%.c 83 $(obj)%.o: $(obj)%.c
85 $(CC) $(CFLAGS) -c -o $@ $< 84 $(CC) $(CFLAGS) -c -o $@ $<
86
87 # defines $(obj).depend target
88 include $(SRCTREE)/rules.mk
89
90 sinclude $(obj).depend
91
92 #########################################################################
93 85
nand_spl/board/amcc/sequoia/Makefile
1 # 1 #
2 # (C) Copyright 2006-2007 2 # (C) Copyright 2006-2007
3 # Stefan Roese, DENX Software Engineering, sr@denx.de. 3 # Stefan Roese, DENX Software Engineering, sr@denx.de.
4 # 4 #
5 # SPDX-License-Identifier: GPL-2.0+ 5 # SPDX-License-Identifier: GPL-2.0+
6 # 6 #
7 7
8 include $(TOPDIR)/config.mk
9 include $(TOPDIR)/nand_spl/board/$(BOARDDIR)/config.mk 8 include $(TOPDIR)/nand_spl/board/$(BOARDDIR)/config.mk
10 9
11 nandobj := $(OBJTREE)/nand_spl/ 10 nandobj := $(OBJTREE)/nand_spl/
12 11
13 LDSCRIPT= $(TOPDIR)/nand_spl/board/$(BOARDDIR)/u-boot.lds 12 LDSCRIPT= $(TOPDIR)/nand_spl/board/$(BOARDDIR)/u-boot.lds
14 LDFLAGS := -T $(nandobj)u-boot.lds -Ttext $(CONFIG_SYS_TEXT_BASE) $(LDFLAGS) \ 13 LDFLAGS := -T $(nandobj)u-boot.lds -Ttext $(CONFIG_SYS_TEXT_BASE) $(LDFLAGS) \
15 $(LDFLAGS_FINAL) 14 $(LDFLAGS_FINAL)
16 AFLAGS += -DCONFIG_NAND_SPL 15 AFLAGS += -DCONFIG_NAND_SPL
17 CFLAGS += -DCONFIG_NAND_SPL 16 CFLAGS += -DCONFIG_NAND_SPL
18 17
19 SOBJS = start.o init.o resetvec.o 18 SOBJS = start.o init.o resetvec.o
20 COBJS = denali_data_eye.o nand_boot.o nand_ecc.o ndfc.o sdram.o 19 COBJS = denali_data_eye.o nand_boot.o nand_ecc.o ndfc.o sdram.o
21 20
22 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c)) 21 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c))
23 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS)) 22 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS))
24 __OBJS := $(SOBJS) $(COBJS) 23 __OBJS := $(SOBJS) $(COBJS)
25 LNDIR := $(nandobj)board/$(BOARDDIR) 24 LNDIR := $(nandobj)board/$(BOARDDIR)
26 25
27 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin 26 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin
28 27
29 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl 28 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl
30 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@ 29 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@
31 30
32 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl 31 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl
33 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@ 32 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
34 33
35 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot.lds 34 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot.lds
36 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \ 35 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \
37 -Map $(nandobj)u-boot-spl.map -o $@ 36 -Map $(nandobj)u-boot-spl.map -o $@
38 37
39 $(nandobj)u-boot.lds: $(LDSCRIPT) 38 $(nandobj)u-boot.lds: $(LDSCRIPT)
40 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@ 39 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@
41 40
42 # create symbolic links for common files 41 # create symbolic links for common files
43 42
44 # from cpu directory 43 # from cpu directory
45 $(obj)denali_data_eye.c: 44 $(obj)denali_data_eye.c:
46 @rm -f $@ 45 @rm -f $@
47 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/denali_data_eye.c $@ 46 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/denali_data_eye.c $@
48 47
49 $(obj)ndfc.c: 48 $(obj)ndfc.c:
50 @rm -f $@ 49 @rm -f $@
51 ln -s $(SRCTREE)/drivers/mtd/nand/ndfc.c $@ 50 ln -s $(SRCTREE)/drivers/mtd/nand/ndfc.c $@
52 51
53 $(obj)resetvec.S: 52 $(obj)resetvec.S:
54 @rm -f $@ 53 @rm -f $@
55 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/resetvec.S $@ 54 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/resetvec.S $@
56 55
57 $(obj)start.S: 56 $(obj)start.S:
58 @rm -f $@ 57 @rm -f $@
59 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/start.S $@ 58 ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/start.S $@
60 59
61 # from board directory 60 # from board directory
62 $(obj)init.S: 61 $(obj)init.S:
63 @rm -f $@ 62 @rm -f $@
64 ln -s $(SRCTREE)/board/amcc/sequoia/init.S $@ 63 ln -s $(SRCTREE)/board/amcc/sequoia/init.S $@
65 64
66 $(obj)sdram.c: 65 $(obj)sdram.c:
67 @rm -f $@ 66 @rm -f $@
68 @rm -f $(obj)sdram.h 67 @rm -f $(obj)sdram.h
69 ln -s $(SRCTREE)/board/amcc/sequoia/sdram.c $@ 68 ln -s $(SRCTREE)/board/amcc/sequoia/sdram.c $@
70 ln -s $(SRCTREE)/board/amcc/sequoia/sdram.h $(obj)sdram.h 69 ln -s $(SRCTREE)/board/amcc/sequoia/sdram.h $(obj)sdram.h
71 70
72 # from nand_spl directory 71 # from nand_spl directory
73 $(obj)nand_boot.c: 72 $(obj)nand_boot.c:
74 @rm -f $@ 73 @rm -f $@
75 ln -s $(SRCTREE)/nand_spl/nand_boot.c $@ 74 ln -s $(SRCTREE)/nand_spl/nand_boot.c $@
76 75
77 # from drivers/mtd/nand directory 76 # from drivers/mtd/nand directory
78 $(obj)nand_ecc.c: 77 $(obj)nand_ecc.c:
79 @rm -f $@ 78 @rm -f $@
80 ln -s $(SRCTREE)/drivers/mtd/nand/nand_ecc.c $@ 79 ln -s $(SRCTREE)/drivers/mtd/nand/nand_ecc.c $@
81 80
82 ######################################################################### 81 #########################################################################
83 82
84 $(obj)%.o: $(obj)%.S 83 $(obj)%.o: $(obj)%.S
85 $(CC) $(AFLAGS) -c -o $@ $< 84 $(CC) $(AFLAGS) -c -o $@ $<
86 85
87 $(obj)%.o: $(obj)%.c 86 $(obj)%.o: $(obj)%.c
88 $(CC) $(CFLAGS) -c -o $@ $< 87 $(CC) $(CFLAGS) -c -o $@ $<
89
90 # defines $(obj).depend target
91 include $(SRCTREE)/rules.mk
92
93 sinclude $(obj).depend
94
95 #########################################################################
96 88
nand_spl/board/freescale/mpc8315erdb/Makefile
1 # 1 #
2 # (C) Copyright 2007 2 # (C) Copyright 2007
3 # Stefan Roese, DENX Software Engineering, sr@denx.de. 3 # Stefan Roese, DENX Software Engineering, sr@denx.de.
4 # (C) Copyright 2008 Freescale Semiconductor 4 # (C) Copyright 2008 Freescale Semiconductor
5 # 5 #
6 # SPDX-License-Identifier: GPL-2.0+ 6 # SPDX-License-Identifier: GPL-2.0+
7 # 7 #
8 8
9 NAND_SPL := y
10 PAD_TO := 0xfff04000 9 PAD_TO := 0xfff04000
11 10
12 include $(TOPDIR)/config.mk
13
14 nandobj := $(OBJTREE)/nand_spl/ 11 nandobj := $(OBJTREE)/nand_spl/
15 12
16 LDSCRIPT= $(TOPDIR)/nand_spl/board/$(BOARDDIR)/u-boot.lds 13 LDSCRIPT= $(TOPDIR)/nand_spl/board/$(BOARDDIR)/u-boot.lds
17 LDFLAGS := -T $(nandobj)u-boot.lds -Ttext $(CONFIG_SYS_TEXT_BASE_SPL) \ 14 LDFLAGS := -T $(nandobj)u-boot.lds -Ttext $(CONFIG_SYS_TEXT_BASE_SPL) \
18 $(LDFLAGS) $(LDFLAGS_FINAL) 15 $(LDFLAGS) $(LDFLAGS_FINAL)
19 AFLAGS += -DCONFIG_NAND_SPL 16 AFLAGS += -DCONFIG_NAND_SPL
20 CFLAGS += -DCONFIG_NAND_SPL 17 CFLAGS += -DCONFIG_NAND_SPL
21 18
22 SOBJS = start.o ticks.o 19 SOBJS = start.o ticks.o
23 COBJS = nand_boot_fsl_elbc.o $(BOARD).o sdram.o ns16550.o spl_minimal.o \ 20 COBJS = nand_boot_fsl_elbc.o $(BOARD).o sdram.o ns16550.o spl_minimal.o \
24 time.o cache.o 21 time.o cache.o
25 22
26 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c)) 23 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c))
27 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS)) 24 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS))
28 __OBJS := $(SOBJS) $(COBJS) 25 __OBJS := $(SOBJS) $(COBJS)
29 LNDIR := $(nandobj)board/$(BOARDDIR) 26 LNDIR := $(nandobj)board/$(BOARDDIR)
30 27
31 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin 28 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin
32 29
33 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl 30 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl
34 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@ 31 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@
35 32
36 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl 33 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl
37 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@ 34 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
38 35
39 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot.lds 36 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot.lds
40 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \ 37 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \
41 -Map $(nandobj)u-boot-spl.map -o $@ 38 -Map $(nandobj)u-boot-spl.map -o $@
42 39
43 $(nandobj)u-boot.lds: $(LDSCRIPT) 40 $(nandobj)u-boot.lds: $(LDSCRIPT)
44 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@ 41 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@
45 42
46 # create symbolic links for common files 43 # create symbolic links for common files
47 44
48 $(obj)start.S: 45 $(obj)start.S:
49 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc83xx/start.S $@ 46 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc83xx/start.S $@
50 47
51 $(obj)nand_boot_fsl_elbc.c: 48 $(obj)nand_boot_fsl_elbc.c:
52 ln -sf $(SRCTREE)/nand_spl/nand_boot_fsl_elbc.c $@ 49 ln -sf $(SRCTREE)/nand_spl/nand_boot_fsl_elbc.c $@
53 50
54 $(obj)sdram.c: 51 $(obj)sdram.c:
55 ln -sf $(SRCTREE)/board/$(BOARDDIR)/sdram.c $@ 52 ln -sf $(SRCTREE)/board/$(BOARDDIR)/sdram.c $@
56 53
57 $(obj)$(BOARD).c: 54 $(obj)$(BOARD).c:
58 ln -sf $(SRCTREE)/board/$(BOARDDIR)/$(BOARD).c $@ 55 ln -sf $(SRCTREE)/board/$(BOARDDIR)/$(BOARD).c $@
59 56
60 $(obj)ns16550.c: 57 $(obj)ns16550.c:
61 ln -sf $(SRCTREE)/drivers/serial/ns16550.c $@ 58 ln -sf $(SRCTREE)/drivers/serial/ns16550.c $@
62 59
63 $(obj)spl_minimal.c: 60 $(obj)spl_minimal.c:
64 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc83xx/spl_minimal.c $@ 61 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc83xx/spl_minimal.c $@
65 62
66 $(obj)cache.c: 63 $(obj)cache.c:
67 ln -sf $(SRCTREE)/arch/powerpc/lib/cache.c $@ 64 ln -sf $(SRCTREE)/arch/powerpc/lib/cache.c $@
68 65
69 $(obj)time.c: 66 $(obj)time.c:
70 ln -sf $(SRCTREE)/arch/powerpc/lib/time.c $@ 67 ln -sf $(SRCTREE)/arch/powerpc/lib/time.c $@
71 68
72 $(obj)ticks.S: 69 $(obj)ticks.S:
73 ln -sf $(SRCTREE)/arch/powerpc/lib/ticks.S $@ 70 ln -sf $(SRCTREE)/arch/powerpc/lib/ticks.S $@
74 71
75 ######################################################################### 72 #########################################################################
76 73
77 $(obj)%.o: $(obj)%.S 74 $(obj)%.o: $(obj)%.S
78 $(CC) $(AFLAGS) -c -o $@ $< 75 $(CC) $(AFLAGS) -c -o $@ $<
79 76
80 $(obj)%.o: $(obj)%.c 77 $(obj)%.o: $(obj)%.c
81 $(CC) $(CFLAGS) -c -o $@ $< 78 $(CC) $(CFLAGS) -c -o $@ $<
82
83 # defines $(obj).depend target
84 include $(SRCTREE)/rules.mk
85
86 sinclude $(obj).depend
87
88 #########################################################################
89 79
nand_spl/board/freescale/mpc8536ds/Makefile
1 # 1 #
2 # (C) Copyright 2007 2 # (C) Copyright 2007
3 # Stefan Roese, DENX Software Engineering, sr@denx.de. 3 # Stefan Roese, DENX Software Engineering, sr@denx.de.
4 # 4 #
5 # Copyright 2009-2011 Freescale Semiconductor, Inc. 5 # Copyright 2009-2011 Freescale Semiconductor, Inc.
6 # 6 #
7 # SPDX-License-Identifier: GPL-2.0+ 7 # SPDX-License-Identifier: GPL-2.0+
8 # 8 #
9 9
10 NAND_SPL := y
11 CONFIG_SYS_TEXT_BASE_SPL := 0xfff00000 10 CONFIG_SYS_TEXT_BASE_SPL := 0xfff00000
12 PAD_TO := 0xfff01000 11 PAD_TO := 0xfff01000
13 12
14 include $(TOPDIR)/config.mk
15
16 nandobj := $(OBJTREE)/nand_spl/ 13 nandobj := $(OBJTREE)/nand_spl/
17 14
18 LDSCRIPT= $(TOPDIR)/$(CPUDIR)/u-boot-nand_spl.lds 15 LDSCRIPT= $(TOPDIR)/$(CPUDIR)/u-boot-nand_spl.lds
19 LDFLAGS := -T $(nandobj)u-boot-nand_spl.lds -Ttext $(CONFIG_SYS_TEXT_BASE_SPL) \ 16 LDFLAGS := -T $(nandobj)u-boot-nand_spl.lds -Ttext $(CONFIG_SYS_TEXT_BASE_SPL) \
20 $(LDFLAGS) $(LDFLAGS_FINAL) 17 $(LDFLAGS) $(LDFLAGS_FINAL)
21 AFLAGS += -DCONFIG_NAND_SPL 18 AFLAGS += -DCONFIG_NAND_SPL
22 CFLAGS += -DCONFIG_NAND_SPL 19 CFLAGS += -DCONFIG_NAND_SPL
23 20
24 SOBJS = start.o resetvec.o 21 SOBJS = start.o resetvec.o
25 COBJS = cache.o cpu_init_early.o spl_minimal.o fsl_law.o law.o \ 22 COBJS = cache.o cpu_init_early.o spl_minimal.o fsl_law.o law.o \
26 nand_boot.o nand_boot_fsl_elbc.o ns16550.o tlb.o tlb_table.o 23 nand_boot.o nand_boot_fsl_elbc.o ns16550.o tlb.o tlb_table.o
27 24
28 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c)) 25 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c))
29 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS)) 26 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS))
30 __OBJS := $(SOBJS) $(COBJS) 27 __OBJS := $(SOBJS) $(COBJS)
31 LNDIR := $(nandobj)board/$(BOARDDIR) 28 LNDIR := $(nandobj)board/$(BOARDDIR)
32 29
33 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin 30 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin
34 31
35 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl 32 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl
36 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@ 33 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@
37 34
38 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl 35 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl
39 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@ 36 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
40 37
41 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot-nand_spl.lds 38 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot-nand_spl.lds
42 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \ 39 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \
43 -Map $(nandobj)u-boot-spl.map -o $@ 40 -Map $(nandobj)u-boot-spl.map -o $@
44 41
45 $(nandobj)u-boot-nand_spl.lds: $(LDSCRIPT) 42 $(nandobj)u-boot-nand_spl.lds: $(LDSCRIPT)
46 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -I$(nandobj)/board/$(BOARDDIR) \ 43 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -I$(nandobj)/board/$(BOARDDIR) \
47 -ansi -D__ASSEMBLY__ -P - <$< >$@ 44 -ansi -D__ASSEMBLY__ -P - <$< >$@
48 45
49 # create symbolic links for common files 46 # create symbolic links for common files
50 47
51 $(obj)cache.c: 48 $(obj)cache.c:
52 @rm -f $@ 49 @rm -f $@
53 ln -sf $(SRCTREE)/arch/powerpc/lib/cache.c $@ 50 ln -sf $(SRCTREE)/arch/powerpc/lib/cache.c $@
54 51
55 $(obj)cpu_init_early.c: 52 $(obj)cpu_init_early.c:
56 @rm -f $@ 53 @rm -f $@
57 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/cpu_init_early.c $@ 54 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/cpu_init_early.c $@
58 55
59 $(obj)spl_minimal.c: 56 $(obj)spl_minimal.c:
60 @rm -f $@ 57 @rm -f $@
61 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/spl_minimal.c $@ 58 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/spl_minimal.c $@
62 59
63 $(obj)fsl_law.c: 60 $(obj)fsl_law.c:
64 @rm -f $@ 61 @rm -f $@
65 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc8xxx/law.c $@ 62 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc8xxx/law.c $@
66 63
67 $(obj)law.c: 64 $(obj)law.c:
68 @rm -f $@ 65 @rm -f $@
69 ln -sf $(SRCTREE)/board/$(BOARDDIR)/law.c $@ 66 ln -sf $(SRCTREE)/board/$(BOARDDIR)/law.c $@
70 67
71 $(obj)nand_boot_fsl_elbc.c: 68 $(obj)nand_boot_fsl_elbc.c:
72 @rm -f $@ 69 @rm -f $@
73 ln -sf $(SRCTREE)/nand_spl/nand_boot_fsl_elbc.c $@ 70 ln -sf $(SRCTREE)/nand_spl/nand_boot_fsl_elbc.c $@
74 71
75 $(obj)ns16550.c: 72 $(obj)ns16550.c:
76 @rm -f $@ 73 @rm -f $@
77 ln -sf $(SRCTREE)/drivers/serial/ns16550.c $@ 74 ln -sf $(SRCTREE)/drivers/serial/ns16550.c $@
78 75
79 $(obj)resetvec.S: 76 $(obj)resetvec.S:
80 @rm -f $@ 77 @rm -f $@
81 ln -s $(SRCTREE)/$(CPUDIR)/resetvec.S $@ 78 ln -s $(SRCTREE)/$(CPUDIR)/resetvec.S $@
82 79
83 $(obj)fixed_ivor.S: 80 $(obj)fixed_ivor.S:
84 @rm -f $@ 81 @rm -f $@
85 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/fixed_ivor.S $@ 82 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/fixed_ivor.S $@
86 83
87 $(obj)start.S: $(obj)fixed_ivor.S 84 $(obj)start.S: $(obj)fixed_ivor.S
88 @rm -f $@ 85 @rm -f $@
89 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/start.S $@ 86 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/start.S $@
90 87
91 $(obj)tlb.c: 88 $(obj)tlb.c:
92 @rm -f $@ 89 @rm -f $@
93 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/tlb.c $@ 90 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/tlb.c $@
94 91
95 $(obj)tlb_table.c: 92 $(obj)tlb_table.c:
96 @rm -f $@ 93 @rm -f $@
97 ln -sf $(SRCTREE)/board/$(BOARDDIR)/tlb.c $@ 94 ln -sf $(SRCTREE)/board/$(BOARDDIR)/tlb.c $@
98 95
99 ifneq ($(OBJTREE), $(SRCTREE)) 96 ifneq ($(OBJTREE), $(SRCTREE))
100 $(obj)nand_boot.c: 97 $(obj)nand_boot.c:
101 @rm -f $@ 98 @rm -f $@
102 ln -s $(SRCTREE)/nand_spl/board/$(BOARDDIR)/nand_boot.c $@ 99 ln -s $(SRCTREE)/nand_spl/board/$(BOARDDIR)/nand_boot.c $@
103 endif 100 endif
104 101
105 ######################################################################### 102 #########################################################################
106 103
107 $(obj)%.o: $(obj)%.S 104 $(obj)%.o: $(obj)%.S
108 $(CC) $(AFLAGS) -c -o $@ $< 105 $(CC) $(AFLAGS) -c -o $@ $<
109 106
110 $(obj)%.o: $(obj)%.c 107 $(obj)%.o: $(obj)%.c
111 $(CC) $(CFLAGS) -c -o $@ $< 108 $(CC) $(CFLAGS) -c -o $@ $<
112
113 # defines $(obj).depend target
114 include $(SRCTREE)/rules.mk
115
116 sinclude $(obj).depend
117
118 #########################################################################
119 109
nand_spl/board/freescale/mpc8569mds/Makefile
1 # 1 #
2 # (C) Copyright 2007 2 # (C) Copyright 2007
3 # Stefan Roese, DENX Software Engineering, sr@denx.de. 3 # Stefan Roese, DENX Software Engineering, sr@denx.de.
4 # 4 #
5 # Copyright 2009-2011 Freescale Semiconductor, Inc. 5 # Copyright 2009-2011 Freescale Semiconductor, Inc.
6 # 6 #
7 # SPDX-License-Identifier: GPL-2.0+ 7 # SPDX-License-Identifier: GPL-2.0+
8 # 8 #
9 9
10 NAND_SPL := y
11 CONFIG_SYS_TEXT_BASE_SPL := 0xfff00000 10 CONFIG_SYS_TEXT_BASE_SPL := 0xfff00000
12 PAD_TO := 0xfff01000 11 PAD_TO := 0xfff01000
13 12
14 include $(TOPDIR)/config.mk
15
16 nandobj := $(OBJTREE)/nand_spl/ 13 nandobj := $(OBJTREE)/nand_spl/
17 14
18 LDSCRIPT= $(TOPDIR)/$(CPUDIR)/u-boot-nand_spl.lds 15 LDSCRIPT= $(TOPDIR)/$(CPUDIR)/u-boot-nand_spl.lds
19 LDFLAGS := -T $(nandobj)u-boot-nand_spl.lds -Ttext $(CONFIG_SYS_TEXT_BASE_SPL) \ 16 LDFLAGS := -T $(nandobj)u-boot-nand_spl.lds -Ttext $(CONFIG_SYS_TEXT_BASE_SPL) \
20 $(LDFLAGS) $(LDFLAGS_FINAL) 17 $(LDFLAGS) $(LDFLAGS_FINAL)
21 AFLAGS += -DCONFIG_NAND_SPL 18 AFLAGS += -DCONFIG_NAND_SPL
22 CFLAGS += -DCONFIG_NAND_SPL 19 CFLAGS += -DCONFIG_NAND_SPL
23 20
24 SOBJS = start.o resetvec.o 21 SOBJS = start.o resetvec.o
25 COBJS = cache.o cpu_init_early.o spl_minimal.o fsl_law.o law.o \ 22 COBJS = cache.o cpu_init_early.o spl_minimal.o fsl_law.o law.o \
26 nand_boot.o nand_boot_fsl_elbc.o ns16550.o tlb.o tlb_table.o 23 nand_boot.o nand_boot_fsl_elbc.o ns16550.o tlb.o tlb_table.o
27 24
28 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c)) 25 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c))
29 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS)) 26 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS))
30 __OBJS := $(SOBJS) $(COBJS) 27 __OBJS := $(SOBJS) $(COBJS)
31 LNDIR := $(nandobj)board/$(BOARDDIR) 28 LNDIR := $(nandobj)board/$(BOARDDIR)
32 29
33 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin 30 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin
34 31
35 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl 32 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl
36 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@ 33 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@
37 34
38 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl 35 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl
39 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@ 36 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
40 37
41 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot-nand_spl.lds 38 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot-nand_spl.lds
42 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \ 39 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \
43 -Map $(nandobj)u-boot-spl.map -o $@ 40 -Map $(nandobj)u-boot-spl.map -o $@
44 41
45 $(nandobj)u-boot-nand_spl.lds: $(LDSCRIPT) 42 $(nandobj)u-boot-nand_spl.lds: $(LDSCRIPT)
46 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -I$(nandobj)/board/$(BOARDDIR) \ 43 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -I$(nandobj)/board/$(BOARDDIR) \
47 -ansi -D__ASSEMBLY__ -P - <$< >$@ 44 -ansi -D__ASSEMBLY__ -P - <$< >$@
48 45
49 # create symbolic links for common files 46 # create symbolic links for common files
50 47
51 $(obj)cache.c: 48 $(obj)cache.c:
52 @rm -f $@ 49 @rm -f $@
53 ln -sf $(SRCTREE)/arch/powerpc/lib/cache.c $@ 50 ln -sf $(SRCTREE)/arch/powerpc/lib/cache.c $@
54 51
55 $(obj)cpu_init_early.c: 52 $(obj)cpu_init_early.c:
56 @rm -f $@ 53 @rm -f $@
57 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/cpu_init_early.c $@ 54 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/cpu_init_early.c $@
58 55
59 $(obj)spl_minimal.c: 56 $(obj)spl_minimal.c:
60 @rm -f $@ 57 @rm -f $@
61 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/spl_minimal.c $@ 58 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/spl_minimal.c $@
62 59
63 $(obj)fsl_law.c: 60 $(obj)fsl_law.c:
64 @rm -f $@ 61 @rm -f $@
65 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc8xxx/law.c $@ 62 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc8xxx/law.c $@
66 63
67 $(obj)law.c: 64 $(obj)law.c:
68 @rm -f $@ 65 @rm -f $@
69 ln -sf $(SRCTREE)/board/$(BOARDDIR)/law.c $@ 66 ln -sf $(SRCTREE)/board/$(BOARDDIR)/law.c $@
70 67
71 $(obj)nand_boot_fsl_elbc.c: 68 $(obj)nand_boot_fsl_elbc.c:
72 @rm -f $@ 69 @rm -f $@
73 ln -sf $(SRCTREE)/nand_spl/nand_boot_fsl_elbc.c $@ 70 ln -sf $(SRCTREE)/nand_spl/nand_boot_fsl_elbc.c $@
74 71
75 $(obj)ns16550.c: 72 $(obj)ns16550.c:
76 @rm -f $@ 73 @rm -f $@
77 ln -sf $(SRCTREE)/drivers/serial/ns16550.c $@ 74 ln -sf $(SRCTREE)/drivers/serial/ns16550.c $@
78 75
79 $(obj)resetvec.S: 76 $(obj)resetvec.S:
80 @rm -f $@ 77 @rm -f $@
81 ln -s $(SRCTREE)/$(CPUDIR)/resetvec.S $@ 78 ln -s $(SRCTREE)/$(CPUDIR)/resetvec.S $@
82 79
83 $(obj)fixed_ivor.S: 80 $(obj)fixed_ivor.S:
84 @rm -f $@ 81 @rm -f $@
85 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/fixed_ivor.S $@ 82 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/fixed_ivor.S $@
86 83
87 $(obj)start.S: $(obj)fixed_ivor.S 84 $(obj)start.S: $(obj)fixed_ivor.S
88 @rm -f $@ 85 @rm -f $@
89 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/start.S $@ 86 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/start.S $@
90 87
91 $(obj)tlb.c: 88 $(obj)tlb.c:
92 @rm -f $@ 89 @rm -f $@
93 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/tlb.c $@ 90 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/tlb.c $@
94 91
95 $(obj)tlb_table.c: 92 $(obj)tlb_table.c:
96 @rm -f $@ 93 @rm -f $@
97 ln -sf $(SRCTREE)/board/$(BOARDDIR)/tlb.c $@ 94 ln -sf $(SRCTREE)/board/$(BOARDDIR)/tlb.c $@
98 95
99 ifneq ($(OBJTREE), $(SRCTREE)) 96 ifneq ($(OBJTREE), $(SRCTREE))
100 $(obj)nand_boot.c: 97 $(obj)nand_boot.c:
101 @rm -f $@ 98 @rm -f $@
102 ln -s $(SRCTREE)/nand_spl/board/$(BOARDDIR)/nand_boot.c $@ 99 ln -s $(SRCTREE)/nand_spl/board/$(BOARDDIR)/nand_boot.c $@
103 endif 100 endif
104 101
105 ######################################################################### 102 #########################################################################
106 103
107 $(obj)%.o: $(obj)%.S 104 $(obj)%.o: $(obj)%.S
108 $(CC) $(AFLAGS) -c -o $@ $< 105 $(CC) $(AFLAGS) -c -o $@ $<
109 106
110 $(obj)%.o: $(obj)%.c 107 $(obj)%.o: $(obj)%.c
111 $(CC) $(CFLAGS) -c -o $@ $< 108 $(CC) $(CFLAGS) -c -o $@ $<
112
113 # defines $(obj).depend target
114 include $(SRCTREE)/rules.mk
115
116 sinclude $(obj).depend
117
118 #########################################################################
119 109
nand_spl/board/freescale/mpc8572ds/Makefile
1 # 1 #
2 # (C) Copyright 2007 2 # (C) Copyright 2007
3 # Stefan Roese, DENX Software Engineering, sr@denx.de. 3 # Stefan Roese, DENX Software Engineering, sr@denx.de.
4 # 4 #
5 # Copyright 2009-2011 Freescale Semiconductor, Inc. 5 # Copyright 2009-2011 Freescale Semiconductor, Inc.
6 # 6 #
7 # SPDX-License-Identifier: GPL-2.0+ 7 # SPDX-License-Identifier: GPL-2.0+
8 # 8 #
9 9
10 NAND_SPL := y
11 CONFIG_SYS_TEXT_BASE_SPL := 0xfff00000 10 CONFIG_SYS_TEXT_BASE_SPL := 0xfff00000
12 PAD_TO := 0xfff01000 11 PAD_TO := 0xfff01000
13 12
14 include $(TOPDIR)/config.mk
15
16 nandobj := $(OBJTREE)/nand_spl/ 13 nandobj := $(OBJTREE)/nand_spl/
17 14
18 LDSCRIPT= $(TOPDIR)/$(CPUDIR)/u-boot-nand_spl.lds 15 LDSCRIPT= $(TOPDIR)/$(CPUDIR)/u-boot-nand_spl.lds
19 LDFLAGS := -T $(nandobj)u-boot-nand_spl.lds -Ttext $(CONFIG_SYS_TEXT_BASE_SPL) \ 16 LDFLAGS := -T $(nandobj)u-boot-nand_spl.lds -Ttext $(CONFIG_SYS_TEXT_BASE_SPL) \
20 $(LDFLAGS) $(LDFLAGS_FINAL) 17 $(LDFLAGS) $(LDFLAGS_FINAL)
21 AFLAGS += -DCONFIG_NAND_SPL 18 AFLAGS += -DCONFIG_NAND_SPL
22 CFLAGS += -DCONFIG_NAND_SPL 19 CFLAGS += -DCONFIG_NAND_SPL
23 20
24 SOBJS = start.o resetvec.o 21 SOBJS = start.o resetvec.o
25 COBJS = cache.o cpu_init_early.o spl_minimal.o fsl_law.o law.o \ 22 COBJS = cache.o cpu_init_early.o spl_minimal.o fsl_law.o law.o \
26 nand_boot.o nand_boot_fsl_elbc.o ns16550.o tlb.o tlb_table.o 23 nand_boot.o nand_boot_fsl_elbc.o ns16550.o tlb.o tlb_table.o
27 24
28 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c)) 25 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c))
29 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS)) 26 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS))
30 __OBJS := $(SOBJS) $(COBJS) 27 __OBJS := $(SOBJS) $(COBJS)
31 LNDIR := $(nandobj)board/$(BOARDDIR) 28 LNDIR := $(nandobj)board/$(BOARDDIR)
32 29
33 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin 30 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin
34 31
35 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl 32 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl
36 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@ 33 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@
37 34
38 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl 35 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl
39 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@ 36 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
40 37
41 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot-nand_spl.lds 38 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot-nand_spl.lds
42 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \ 39 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \
43 -Map $(nandobj)u-boot-spl.map -o $@ 40 -Map $(nandobj)u-boot-spl.map -o $@
44 41
45 $(nandobj)u-boot-nand_spl.lds: $(LDSCRIPT) 42 $(nandobj)u-boot-nand_spl.lds: $(LDSCRIPT)
46 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -I$(nandobj)/board/$(BOARDDIR) \ 43 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -I$(nandobj)/board/$(BOARDDIR) \
47 -ansi -D__ASSEMBLY__ -P - <$< >$@ 44 -ansi -D__ASSEMBLY__ -P - <$< >$@
48 45
49 # create symbolic links for common files 46 # create symbolic links for common files
50 47
51 $(obj)cache.c: 48 $(obj)cache.c:
52 @rm -f $@ 49 @rm -f $@
53 ln -sf $(SRCTREE)/arch/powerpc/lib/cache.c $@ 50 ln -sf $(SRCTREE)/arch/powerpc/lib/cache.c $@
54 51
55 $(obj)cpu_init_early.c: 52 $(obj)cpu_init_early.c:
56 @rm -f $@ 53 @rm -f $@
57 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/cpu_init_early.c $@ 54 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/cpu_init_early.c $@
58 55
59 $(obj)spl_minimal.c: 56 $(obj)spl_minimal.c:
60 @rm -f $@ 57 @rm -f $@
61 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/spl_minimal.c $@ 58 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/spl_minimal.c $@
62 59
63 $(obj)fsl_law.c: 60 $(obj)fsl_law.c:
64 @rm -f $@ 61 @rm -f $@
65 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc8xxx/law.c $@ 62 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc8xxx/law.c $@
66 63
67 $(obj)law.c: 64 $(obj)law.c:
68 @rm -f $@ 65 @rm -f $@
69 ln -sf $(SRCTREE)/board/$(BOARDDIR)/law.c $@ 66 ln -sf $(SRCTREE)/board/$(BOARDDIR)/law.c $@
70 67
71 $(obj)nand_boot_fsl_elbc.c: 68 $(obj)nand_boot_fsl_elbc.c:
72 @rm -f $@ 69 @rm -f $@
73 ln -sf $(SRCTREE)/nand_spl/nand_boot_fsl_elbc.c $@ 70 ln -sf $(SRCTREE)/nand_spl/nand_boot_fsl_elbc.c $@
74 71
75 $(obj)ns16550.c: 72 $(obj)ns16550.c:
76 @rm -f $@ 73 @rm -f $@
77 ln -sf $(SRCTREE)/drivers/serial/ns16550.c $@ 74 ln -sf $(SRCTREE)/drivers/serial/ns16550.c $@
78 75
79 $(obj)resetvec.S: 76 $(obj)resetvec.S:
80 @rm -f $@ 77 @rm -f $@
81 ln -s $(SRCTREE)/$(CPUDIR)/resetvec.S $@ 78 ln -s $(SRCTREE)/$(CPUDIR)/resetvec.S $@
82 79
83 $(obj)fixed_ivor.S: 80 $(obj)fixed_ivor.S:
84 @rm -f $@ 81 @rm -f $@
85 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/fixed_ivor.S $@ 82 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/fixed_ivor.S $@
86 83
87 $(obj)start.S: $(obj)fixed_ivor.S 84 $(obj)start.S: $(obj)fixed_ivor.S
88 @rm -f $@ 85 @rm -f $@
89 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/start.S $@ 86 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/start.S $@
90 87
91 $(obj)tlb.c: 88 $(obj)tlb.c:
92 @rm -f $@ 89 @rm -f $@
93 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/tlb.c $@ 90 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/tlb.c $@
94 91
95 $(obj)tlb_table.c: 92 $(obj)tlb_table.c:
96 @rm -f $@ 93 @rm -f $@
97 ln -sf $(SRCTREE)/board/$(BOARDDIR)/tlb.c $@ 94 ln -sf $(SRCTREE)/board/$(BOARDDIR)/tlb.c $@
98 95
99 ifneq ($(OBJTREE), $(SRCTREE)) 96 ifneq ($(OBJTREE), $(SRCTREE))
100 $(obj)nand_boot.c: 97 $(obj)nand_boot.c:
101 @rm -f $@ 98 @rm -f $@
102 ln -s $(SRCTREE)/nand_spl/board/$(BOARDDIR)/nand_boot.c $@ 99 ln -s $(SRCTREE)/nand_spl/board/$(BOARDDIR)/nand_boot.c $@
103 endif 100 endif
104 101
105 ######################################################################### 102 #########################################################################
106 103
107 $(obj)%.o: $(obj)%.S 104 $(obj)%.o: $(obj)%.S
108 $(CC) $(AFLAGS) -c -o $@ $< 105 $(CC) $(AFLAGS) -c -o $@ $<
109 106
110 $(obj)%.o: $(obj)%.c 107 $(obj)%.o: $(obj)%.c
111 $(CC) $(CFLAGS) -c -o $@ $< 108 $(CC) $(CFLAGS) -c -o $@ $<
112
113 # defines $(obj).depend target
114 include $(SRCTREE)/rules.mk
115
116 sinclude $(obj).depend
117
118 #########################################################################
119 109
nand_spl/board/freescale/p1023rds/Makefile
1 # 1 #
2 # Copyright 2010-2011 Freescale Semiconductor, Inc. 2 # Copyright 2010-2011 Freescale Semiconductor, Inc.
3 # 3 #
4 # SPDX-License-Identifier: GPL-2.0+ 4 # SPDX-License-Identifier: GPL-2.0+
5 # 5 #
6 NAND_SPL := y 6
7 PAD_TO := 0xfff01000 7 PAD_TO := 0xfff01000
8 8
9 include $(TOPDIR)/config.mk
10
11 nandobj := $(OBJTREE)/nand_spl/ 9 nandobj := $(OBJTREE)/nand_spl/
12 10
13 LDSCRIPT= $(TOPDIR)/$(CPUDIR)/u-boot-nand_spl.lds 11 LDSCRIPT= $(TOPDIR)/$(CPUDIR)/u-boot-nand_spl.lds
14 LDFLAGS := -T $(nandobj)u-boot-nand_spl.lds -Ttext $(CONFIG_SYS_TEXT_BASE_SPL) \ 12 LDFLAGS := -T $(nandobj)u-boot-nand_spl.lds -Ttext $(CONFIG_SYS_TEXT_BASE_SPL) \
15 $(LDFLAGS) $(LDFLAGS_FINAL) 13 $(LDFLAGS) $(LDFLAGS_FINAL)
16 AFLAGS += -DCONFIG_NAND_SPL 14 AFLAGS += -DCONFIG_NAND_SPL
17 CFLAGS += -DCONFIG_NAND_SPL 15 CFLAGS += -DCONFIG_NAND_SPL
18 16
19 SOBJS = start.o resetvec.o 17 SOBJS = start.o resetvec.o
20 COBJS = cache.o cpu_init_early.o spl_minimal.o fsl_law.o law.o \ 18 COBJS = cache.o cpu_init_early.o spl_minimal.o fsl_law.o law.o \
21 nand_boot.o nand_boot_fsl_elbc.o ns16550.o tlb.o tlb_table.o 19 nand_boot.o nand_boot_fsl_elbc.o ns16550.o tlb.o tlb_table.o
22 20
23 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c)) 21 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c))
24 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS)) 22 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS))
25 __OBJS := $(SOBJS) $(COBJS) 23 __OBJS := $(SOBJS) $(COBJS)
26 LNDIR := $(nandobj)board/$(BOARDDIR) 24 LNDIR := $(nandobj)board/$(BOARDDIR)
27 25
28 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin 26 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin
29 27
30 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl 28 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl
31 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@ 29 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@
32 30
33 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl 31 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl
34 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@ 32 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
35 33
36 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot-nand_spl.lds 34 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot-nand_spl.lds
37 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \ 35 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \
38 -Map $(nandobj)u-boot-spl.map -o $@ 36 -Map $(nandobj)u-boot-spl.map -o $@
39 37
40 $(nandobj)u-boot-nand_spl.lds: $(LDSCRIPT) 38 $(nandobj)u-boot-nand_spl.lds: $(LDSCRIPT)
41 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -I$(nandobj)/board/$(BOARDDIR) \ 39 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -I$(nandobj)/board/$(BOARDDIR) \
42 -ansi -D__ASSEMBLY__ -P - <$< >$@ 40 -ansi -D__ASSEMBLY__ -P - <$< >$@
43 41
44 # create symbolic links for common files 42 # create symbolic links for common files
45 43
46 $(obj)cache.c: 44 $(obj)cache.c:
47 @rm -f $@ 45 @rm -f $@
48 ln -sf $(SRCTREE)/arch/powerpc/lib/cache.c $@ 46 ln -sf $(SRCTREE)/arch/powerpc/lib/cache.c $@
49 47
50 $(obj)cpu_init_early.c: 48 $(obj)cpu_init_early.c:
51 @rm -f $@ 49 @rm -f $@
52 ln -sf $(SRCTREE)/$(CPUDIR)/cpu_init_early.c $@ 50 ln -sf $(SRCTREE)/$(CPUDIR)/cpu_init_early.c $@
53 51
54 $(obj)spl_minimal.c: 52 $(obj)spl_minimal.c:
55 @rm -f $@ 53 @rm -f $@
56 ln -sf $(SRCTREE)/$(CPUDIR)/spl_minimal.c $@ 54 ln -sf $(SRCTREE)/$(CPUDIR)/spl_minimal.c $@
57 55
58 $(obj)fsl_law.c: 56 $(obj)fsl_law.c:
59 @rm -f $@ 57 @rm -f $@
60 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc8xxx/law.c $@ 58 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc8xxx/law.c $@
61 59
62 $(obj)law.c: 60 $(obj)law.c:
63 @rm -f $@ 61 @rm -f $@
64 ln -sf $(SRCTREE)/board/$(BOARDDIR)/law.c $@ 62 ln -sf $(SRCTREE)/board/$(BOARDDIR)/law.c $@
65 63
66 $(obj)nand_boot_fsl_elbc.c: 64 $(obj)nand_boot_fsl_elbc.c:
67 @rm -f $@ 65 @rm -f $@
68 ln -sf $(SRCTREE)/nand_spl/nand_boot_fsl_elbc.c $@ 66 ln -sf $(SRCTREE)/nand_spl/nand_boot_fsl_elbc.c $@
69 67
70 $(obj)ns16550.c: 68 $(obj)ns16550.c:
71 @rm -f $@ 69 @rm -f $@
72 ln -sf $(SRCTREE)/drivers/serial/ns16550.c $@ 70 ln -sf $(SRCTREE)/drivers/serial/ns16550.c $@
73 71
74 $(obj)resetvec.S: 72 $(obj)resetvec.S:
75 @rm -f $@ 73 @rm -f $@
76 ln -s $(SRCTREE)/$(CPUDIR)/resetvec.S $@ 74 ln -s $(SRCTREE)/$(CPUDIR)/resetvec.S $@
77 75
78 $(obj)fixed_ivor.S: 76 $(obj)fixed_ivor.S:
79 @rm -f $@ 77 @rm -f $@
80 ln -sf $(SRCTREE)/$(CPUDIR)/fixed_ivor.S $@ 78 ln -sf $(SRCTREE)/$(CPUDIR)/fixed_ivor.S $@
81 79
82 $(obj)start.S: $(obj)fixed_ivor.S 80 $(obj)start.S: $(obj)fixed_ivor.S
83 @rm -f $@ 81 @rm -f $@
84 ln -sf $(SRCTREE)/$(CPUDIR)/start.S $@ 82 ln -sf $(SRCTREE)/$(CPUDIR)/start.S $@
85 83
86 $(obj)tlb.c: 84 $(obj)tlb.c:
87 @rm -f $@ 85 @rm -f $@
88 ln -sf $(SRCTREE)/$(CPUDIR)/tlb.c $@ 86 ln -sf $(SRCTREE)/$(CPUDIR)/tlb.c $@
89 87
90 $(obj)tlb_table.c: 88 $(obj)tlb_table.c:
91 @rm -f $@ 89 @rm -f $@
92 ln -sf $(SRCTREE)/board/$(BOARDDIR)/tlb.c $@ 90 ln -sf $(SRCTREE)/board/$(BOARDDIR)/tlb.c $@
93 91
94 ifneq ($(OBJTREE), $(SRCTREE)) 92 ifneq ($(OBJTREE), $(SRCTREE))
95 $(obj)nand_boot.c: 93 $(obj)nand_boot.c:
96 @rm -f $@ 94 @rm -f $@
97 ln -s $(SRCTREE)/nand_spl/board/$(BOARDDIR)/nand_boot.c $@ 95 ln -s $(SRCTREE)/nand_spl/board/$(BOARDDIR)/nand_boot.c $@
98 endif 96 endif
99 97
100 ######################################################################### 98 #########################################################################
101 99
102 $(obj)%.o: $(obj)%.S 100 $(obj)%.o: $(obj)%.S
103 $(CC) $(AFLAGS) -c -o $@ $< 101 $(CC) $(AFLAGS) -c -o $@ $<
104 102
105 $(obj)%.o: $(obj)%.c 103 $(obj)%.o: $(obj)%.c
106 $(CC) $(CFLAGS) -c -o $@ $< 104 $(CC) $(CFLAGS) -c -o $@ $<
107
108 # defines $(obj).depend target
109 include $(SRCTREE)/rules.mk
110
111 sinclude $(obj).depend
112
113 #########################################################################
114 105
nand_spl/board/freescale/p1_p2_rdb/Makefile
1 # 1 #
2 # (C) Copyright 2007 2 # (C) Copyright 2007
3 # Stefan Roese, DENX Software Engineering, sr@denx.de. 3 # Stefan Roese, DENX Software Engineering, sr@denx.de.
4 # 4 #
5 # Copyright 2009-2011 Freescale Semiconductor, Inc. 5 # Copyright 2009-2011 Freescale Semiconductor, Inc.
6 # 6 #
7 # SPDX-License-Identifier: GPL-2.0+ 7 # SPDX-License-Identifier: GPL-2.0+
8 # 8 #
9 9
10 NAND_SPL := y
11 CONFIG_SYS_TEXT_BASE_SPL := 0xfff00000 10 CONFIG_SYS_TEXT_BASE_SPL := 0xfff00000
12 PAD_TO := 0xfff01000 11 PAD_TO := 0xfff01000
13 12
14 include $(TOPDIR)/config.mk
15
16 nandobj := $(OBJTREE)/nand_spl/ 13 nandobj := $(OBJTREE)/nand_spl/
17 14
18 LDSCRIPT= $(TOPDIR)/$(CPUDIR)/u-boot-nand_spl.lds 15 LDSCRIPT= $(TOPDIR)/$(CPUDIR)/u-boot-nand_spl.lds
19 LDFLAGS := -T $(nandobj)u-boot-nand_spl.lds -Ttext $(CONFIG_SYS_TEXT_BASE_SPL) \ 16 LDFLAGS := -T $(nandobj)u-boot-nand_spl.lds -Ttext $(CONFIG_SYS_TEXT_BASE_SPL) \
20 $(LDFLAGS) $(LDFLAGS_FINAL) 17 $(LDFLAGS) $(LDFLAGS_FINAL)
21 AFLAGS += -DCONFIG_NAND_SPL 18 AFLAGS += -DCONFIG_NAND_SPL
22 CFLAGS += -DCONFIG_NAND_SPL 19 CFLAGS += -DCONFIG_NAND_SPL
23 20
24 SOBJS = start.o resetvec.o 21 SOBJS = start.o resetvec.o
25 COBJS = cache.o cpu_init_early.o spl_minimal.o fsl_law.o law.o \ 22 COBJS = cache.o cpu_init_early.o spl_minimal.o fsl_law.o law.o \
26 nand_boot.o nand_boot_fsl_elbc.o ns16550.o tlb.o tlb_table.o 23 nand_boot.o nand_boot_fsl_elbc.o ns16550.o tlb.o tlb_table.o
27 24
28 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c)) 25 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c))
29 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS)) 26 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS))
30 __OBJS := $(SOBJS) $(COBJS) 27 __OBJS := $(SOBJS) $(COBJS)
31 LNDIR := $(nandobj)board/$(BOARDDIR) 28 LNDIR := $(nandobj)board/$(BOARDDIR)
32 29
33 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin 30 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin
34 31
35 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl 32 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl
36 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@ 33 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@
37 34
38 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl 35 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl
39 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@ 36 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
40 37
41 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot-nand_spl.lds 38 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot-nand_spl.lds
42 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \ 39 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \
43 -Map $(nandobj)u-boot-spl.map -o $@ 40 -Map $(nandobj)u-boot-spl.map -o $@
44 41
45 $(nandobj)u-boot-nand_spl.lds: $(LDSCRIPT) 42 $(nandobj)u-boot-nand_spl.lds: $(LDSCRIPT)
46 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -I$(nandobj)/board/$(BOARDDIR) \ 43 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -I$(nandobj)/board/$(BOARDDIR) \
47 -ansi -D__ASSEMBLY__ -P - <$< >$@ 44 -ansi -D__ASSEMBLY__ -P - <$< >$@
48 45
49 # create symbolic links for common files 46 # create symbolic links for common files
50 47
51 $(obj)cache.c: 48 $(obj)cache.c:
52 @rm -f $@ 49 @rm -f $@
53 ln -sf $(SRCTREE)/arch/powerpc/lib/cache.c $@ 50 ln -sf $(SRCTREE)/arch/powerpc/lib/cache.c $@
54 51
55 $(obj)cpu_init_early.c: 52 $(obj)cpu_init_early.c:
56 @rm -f $@ 53 @rm -f $@
57 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/cpu_init_early.c $@ 54 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/cpu_init_early.c $@
58 55
59 $(obj)spl_minimal.c: 56 $(obj)spl_minimal.c:
60 @rm -f $@ 57 @rm -f $@
61 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/spl_minimal.c $@ 58 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/spl_minimal.c $@
62 59
63 $(obj)fsl_law.c: 60 $(obj)fsl_law.c:
64 @rm -f $@ 61 @rm -f $@
65 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc8xxx/law.c $@ 62 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc8xxx/law.c $@
66 63
67 $(obj)law.c: 64 $(obj)law.c:
68 @rm -f $@ 65 @rm -f $@
69 ln -sf $(SRCTREE)/board/$(BOARDDIR)/law.c $@ 66 ln -sf $(SRCTREE)/board/$(BOARDDIR)/law.c $@
70 67
71 $(obj)nand_boot_fsl_elbc.c: 68 $(obj)nand_boot_fsl_elbc.c:
72 @rm -f $@ 69 @rm -f $@
73 ln -sf $(SRCTREE)/nand_spl/nand_boot_fsl_elbc.c $@ 70 ln -sf $(SRCTREE)/nand_spl/nand_boot_fsl_elbc.c $@
74 71
75 $(obj)ns16550.c: 72 $(obj)ns16550.c:
76 @rm -f $@ 73 @rm -f $@
77 ln -sf $(SRCTREE)/drivers/serial/ns16550.c $@ 74 ln -sf $(SRCTREE)/drivers/serial/ns16550.c $@
78 75
79 $(obj)resetvec.S: 76 $(obj)resetvec.S:
80 @rm -f $@ 77 @rm -f $@
81 ln -s $(SRCTREE)/$(CPUDIR)/resetvec.S $@ 78 ln -s $(SRCTREE)/$(CPUDIR)/resetvec.S $@
82 79
83 $(obj)fixed_ivor.S: 80 $(obj)fixed_ivor.S:
84 @rm -f $@ 81 @rm -f $@
85 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/fixed_ivor.S $@ 82 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/fixed_ivor.S $@
86 83
87 $(obj)start.S: $(obj)fixed_ivor.S 84 $(obj)start.S: $(obj)fixed_ivor.S
88 @rm -f $@ 85 @rm -f $@
89 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/start.S $@ 86 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/start.S $@
90 87
91 $(obj)tlb.c: 88 $(obj)tlb.c:
92 @rm -f $@ 89 @rm -f $@
93 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/tlb.c $@ 90 ln -sf $(SRCTREE)/arch/powerpc/cpu/mpc85xx/tlb.c $@
94 91
95 $(obj)tlb_table.c: 92 $(obj)tlb_table.c:
96 @rm -f $@ 93 @rm -f $@
97 ln -sf $(SRCTREE)/board/$(BOARDDIR)/tlb.c $@ 94 ln -sf $(SRCTREE)/board/$(BOARDDIR)/tlb.c $@
98 95
99 ifneq ($(OBJTREE), $(SRCTREE)) 96 ifneq ($(OBJTREE), $(SRCTREE))
100 $(obj)nand_boot.c: 97 $(obj)nand_boot.c:
101 @rm -f $@ 98 @rm -f $@
102 ln -s $(SRCTREE)/nand_spl/board/$(BOARDDIR)/nand_boot.c $@ 99 ln -s $(SRCTREE)/nand_spl/board/$(BOARDDIR)/nand_boot.c $@
103 endif 100 endif
104 101
105 ######################################################################### 102 #########################################################################
106 103
107 $(obj)%.o: $(obj)%.S 104 $(obj)%.o: $(obj)%.S
108 $(CC) $(AFLAGS) -c -o $@ $< 105 $(CC) $(AFLAGS) -c -o $@ $<
109 106
110 $(obj)%.o: $(obj)%.c 107 $(obj)%.o: $(obj)%.c
111 $(CC) $(CFLAGS) -c -o $@ $< 108 $(CC) $(CFLAGS) -c -o $@ $<
112
113 # defines $(obj).depend target
114 include $(SRCTREE)/rules.mk
115
116 sinclude $(obj).depend
117
118 #########################################################################
119 109
nand_spl/board/sheldon/simpc8313/Makefile
1 # 1 #
2 # (C) Copyright 2007 2 # (C) Copyright 2007
3 # Stefan Roese, DENX Software Engineering, sr@denx.de. 3 # Stefan Roese, DENX Software Engineering, sr@denx.de.
4 # (C) Copyright 2008 Freescale Semiconductor 4 # (C) Copyright 2008 Freescale Semiconductor
5 # (C) Copyright Sheldon Instruments, Inc. 2008 5 # (C) Copyright Sheldon Instruments, Inc. 2008
6 # 6 #
7 # SPDX-License-Identifier: GPL-2.0+ 7 # SPDX-License-Identifier: GPL-2.0+
8 # 8 #
9 9
10 NAND_SPL := y
11
12 include $(TOPDIR)/config.mk
13
14 nandobj := $(OBJTREE)/nand_spl/ 10 nandobj := $(OBJTREE)/nand_spl/
15 11
16 LDSCRIPT= $(TOPDIR)/nand_spl/board/$(BOARDDIR)/u-boot.lds 12 LDSCRIPT= $(TOPDIR)/nand_spl/board/$(BOARDDIR)/u-boot.lds
17 LDFLAGS := -T $(nandobj)u-boot.lds -Ttext $(CONFIG_SYS_TEXT_BASE_SPL) \ 13 LDFLAGS := -T $(nandobj)u-boot.lds -Ttext $(CONFIG_SYS_TEXT_BASE_SPL) \
18 $(LDFLAGS) $(LDFLAGS_FINAL) 14 $(LDFLAGS) $(LDFLAGS_FINAL)
19 AFLAGS += -DCONFIG_NAND_SPL 15 AFLAGS += -DCONFIG_NAND_SPL
20 CFLAGS += -DCONFIG_NAND_SPL 16 CFLAGS += -DCONFIG_NAND_SPL
21 17
22 SOBJS = start.o ticks.o 18 SOBJS = start.o ticks.o
23 COBJS = nand_boot_fsl_elbc.o $(BOARD).o sdram.o ns16550.o spl_minimal.o \ 19 COBJS = nand_boot_fsl_elbc.o $(BOARD).o sdram.o ns16550.o spl_minimal.o \
24 time.o cache.o 20 time.o cache.o
25 21
26 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c)) 22 SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c))
27 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS)) 23 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS))
28 __OBJS := $(SOBJS) $(COBJS) 24 __OBJS := $(SOBJS) $(COBJS)
29 LNDIR := $(nandobj)board/$(BOARDDIR) 25 LNDIR := $(nandobj)board/$(BOARDDIR)
30 26
31 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin 27 all: $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin
32 28
33 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl 29 $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl
34 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@ 30 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@
35 31
36 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl 32 $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl
37 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@ 33 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
38 34
39 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot.lds 35 $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot.lds
40 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \ 36 cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \
41 -Map $(nandobj)u-boot-spl.map -o $@ 37 -Map $(nandobj)u-boot-spl.map -o $@
42 38
43 $(nandobj)u-boot.lds: $(LDSCRIPT) 39 $(nandobj)u-boot.lds: $(LDSCRIPT)
44 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@ 40 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@
45 41
46 # create symbolic links for common files 42 # create symbolic links for common files
47 43
48 $(obj)start.S: 44 $(obj)start.S:
49 @rm -f $@ 45 @rm -f $@
50 ln -s $(SRCTREE)/arch/powerpc/cpu/mpc83xx/start.S $@ 46 ln -s $(SRCTREE)/arch/powerpc/cpu/mpc83xx/start.S $@
51 47
52 $(obj)nand_boot_fsl_elbc.c: 48 $(obj)nand_boot_fsl_elbc.c:
53 @rm -f $@ 49 @rm -f $@
54 ln -s $(SRCTREE)/nand_spl/nand_boot_fsl_elbc.c $@ 50 ln -s $(SRCTREE)/nand_spl/nand_boot_fsl_elbc.c $@
55 51
56 $(obj)sdram.c: 52 $(obj)sdram.c:
57 @rm -f $@ 53 @rm -f $@
58 ln -s $(SRCTREE)/board/$(BOARDDIR)/sdram.c $@ 54 ln -s $(SRCTREE)/board/$(BOARDDIR)/sdram.c $@
59 55
60 $(obj)$(BOARD).c: 56 $(obj)$(BOARD).c:
61 @rm -f $@ 57 @rm -f $@
62 ln -s $(SRCTREE)/board/$(BOARDDIR)/$(BOARD).c $@ 58 ln -s $(SRCTREE)/board/$(BOARDDIR)/$(BOARD).c $@
63 59
64 $(obj)ns16550.c: 60 $(obj)ns16550.c:
65 @rm -f $@ 61 @rm -f $@
66 ln -s $(SRCTREE)/drivers/serial/ns16550.c $@ 62 ln -s $(SRCTREE)/drivers/serial/ns16550.c $@
67 63
68 $(obj)spl_minimal.c: 64 $(obj)spl_minimal.c:
69 @rm -f $@ 65 @rm -f $@
70 ln -s $(SRCTREE)/arch/powerpc/cpu/mpc83xx/spl_minimal.c $@ 66 ln -s $(SRCTREE)/arch/powerpc/cpu/mpc83xx/spl_minimal.c $@
71 67
72 $(obj)cache.c: 68 $(obj)cache.c:
73 @rm -f $@ 69 @rm -f $@
74 ln -s $(SRCTREE)/arch/powerpc/lib/cache.c $@ 70 ln -s $(SRCTREE)/arch/powerpc/lib/cache.c $@
75 71
76 $(obj)time.c: 72 $(obj)time.c:
77 @rm -f $@ 73 @rm -f $@
78 ln -s $(SRCTREE)/arch/powerpc/lib/time.c $@ 74 ln -s $(SRCTREE)/arch/powerpc/lib/time.c $@
79 75
80 $(obj)ticks.S: 76 $(obj)ticks.S:
81 @rm -f $@ 77 @rm -f $@
82 ln -s $(SRCTREE)/arch/powerpc/lib/ticks.S $@ 78 ln -s $(SRCTREE)/arch/powerpc/lib/ticks.S $@
83 79
84 ######################################################################### 80 #########################################################################
85 81
86 $(obj)%.o: $(obj)%.S 82 $(obj)%.o: $(obj)%.S
87 $(CC) $(AFLAGS) -c -o $@ $< 83 $(CC) $(AFLAGS) -c -o $@ $<
88 84
89 $(obj)%.o: $(obj)%.c 85 $(obj)%.o: $(obj)%.c
90 $(CC) $(CFLAGS) -c -o $@ $< 86 $(CC) $(CFLAGS) -c -o $@ $<
91
92 # defines $(obj).depend target
93 include $(SRCTREE)/rules.mk
94
95 sinclude $(obj).depend
96
97 #########################################################################
98 87