]>
Commit | Line | Data |
---|---|---|
3d6cb3b2 SR |
1 | # |
2 | # (C) Copyright 2007 | |
3 | # Stefan Roese, DENX Software Engineering, sr@denx.de. | |
4 | # | |
1a459660 | 5 | # SPDX-License-Identifier: GPL-2.0+ |
3d6cb3b2 SR |
6 | # |
7 | ||
8 | include $(TOPDIR)/config.mk | |
9 | include $(TOPDIR)/nand_spl/board/$(BOARDDIR)/config.mk | |
10 | ||
3b258e2e WD |
11 | nandobj := $(OBJTREE)/nand_spl/ |
12 | ||
3d6cb3b2 | 13 | LDSCRIPT= $(TOPDIR)/nand_spl/board/$(BOARDDIR)/u-boot.lds |
6dc1eceb HW |
14 | LDFLAGS := -T $(nandobj)u-boot.lds -Ttext $(CONFIG_SYS_TEXT_BASE) $(LDFLAGS) \ |
15 | $(LDFLAGS_FINAL) | |
3d6cb3b2 SR |
16 | AFLAGS += -DCONFIG_NAND_SPL |
17 | CFLAGS += -DCONFIG_NAND_SPL | |
18 | ||
ec724f88 SR |
19 | SOBJS = start.o resetvec.o cache.o |
20 | COBJS = 44x_spd_ddr2.o nand_boot.o nand_ecc.o ndfc.o | |
3d6cb3b2 SR |
21 | |
22 | SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c)) | |
23 | OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS)) | |
24 | __OBJS := $(SOBJS) $(COBJS) | |
3b258e2e | 25 | LNDIR := $(nandobj)board/$(BOARDDIR) |
3d6cb3b2 SR |
26 | |
27 | ALL = $(nandobj)u-boot-spl $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin | |
28 | ||
29 | all: $(obj).depend $(ALL) | |
30 | ||
31 | $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl | |
32 | $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@ | |
33 | ||
34 | $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl | |
35 | $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@ | |
36 | ||
1aada9cd | 37 | $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot.lds |
767589a7 | 38 | cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) $(PLATFORM_LIBS) \ |
3d6cb3b2 SR |
39 | -Map $(nandobj)u-boot-spl.map \ |
40 | -o $(nandobj)u-boot-spl | |
41 | ||
1aada9cd WD |
42 | $(nandobj)u-boot.lds: $(LDSCRIPT) |
43 | $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@ | |
44 | ||
3d6cb3b2 SR |
45 | # create symbolic links for common files |
46 | ||
47 | # from cpu directory | |
f2302d44 | 48 | $(obj)44x_spd_ddr2.c: $(obj)ecc.h |
ec724f88 | 49 | @rm -f $(obj)44x_spd_ddr2.c |
a47a12be | 50 | ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/44x_spd_ddr2.c $(obj)44x_spd_ddr2.c |
ec724f88 | 51 | |
3d6cb3b2 SR |
52 | $(obj)cache.S: |
53 | @rm -f $(obj)cache.S | |
a47a12be | 54 | ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/cache.S $(obj)cache.S |
3d6cb3b2 | 55 | |
ec724f88 SR |
56 | $(obj)ecc.h: |
57 | @rm -f $(obj)ecc.h | |
a47a12be | 58 | ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/ecc.h $(obj)ecc.h |
ec724f88 | 59 | |
3d6cb3b2 SR |
60 | $(obj)ndfc.c: |
61 | @rm -f $(obj)ndfc.c | |
12582ac7 | 62 | ln -s $(SRCTREE)/drivers/mtd/nand/ndfc.c $(obj)ndfc.c |
3d6cb3b2 SR |
63 | |
64 | $(obj)resetvec.S: | |
65 | @rm -f $(obj)resetvec.S | |
a47a12be | 66 | ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/resetvec.S $(obj)resetvec.S |
3d6cb3b2 SR |
67 | |
68 | $(obj)start.S: | |
69 | @rm -f $(obj)start.S | |
a47a12be | 70 | ln -s $(SRCTREE)/arch/powerpc/cpu/ppc4xx/start.S $(obj)start.S |
3d6cb3b2 | 71 | |
3d6cb3b2 SR |
72 | # from nand_spl directory |
73 | $(obj)nand_boot.c: | |
74 | @rm -f $(obj)nand_boot.c | |
75 | ln -s $(SRCTREE)/nand_spl/nand_boot.c $(obj)nand_boot.c | |
76 | ||
77 | # from drivers/nand directory | |
78 | $(obj)nand_ecc.c: | |
79 | @rm -f $(obj)nand_ecc.c | |
fb83a65c | 80 | ln -s $(SRCTREE)/drivers/mtd/nand/nand_ecc.c $(obj)nand_ecc.c |
3d6cb3b2 SR |
81 | |
82 | ######################################################################### | |
83 | ||
84 | $(obj)%.o: $(obj)%.S | |
85 | $(CC) $(AFLAGS) -c -o $@ $< | |
86 | ||
87 | $(obj)%.o: $(obj)%.c | |
88 | $(CC) $(CFLAGS) -c -o $@ $< | |
89 | ||
90 | # defines $(obj).depend target | |
91 | include $(SRCTREE)/rules.mk | |
92 | ||
93 | sinclude $(obj).depend | |
94 | ||
95 | ######################################################################### |