2 # (C) Copyright 2000-2006
3 # Wolfgang Denk, DENX Software Engineering, wd@denx.de.
5 # (C) Copyright 2011 Freescale Semiconductor, Inc.
7 # SPDX-License-Identifier: GPL-2.0+
10 ifeq ($(SOC
),$(filter $(SOC
),mx25 mx35 mx5 mx6 mx7 vf610
))
13 ifeq ($(SOC
),$(filter $(SOC
),mx5 mx6
))
14 obj-y
+= timer.o cpu.o speed.o
15 obj-
$(CONFIG_SYS_I2C_MXC
) += i2c-mxv7.o
17 ifeq ($(SOC
),$(filter $(SOC
),mx7 mx6 mxs
))
19 obj-
$(CONFIG_SPL_BUILD
) += spl.o
21 ifeq ($(SOC
),$(filter $(SOC
),mx7
))
23 obj-
$(CONFIG_SYS_I2C_MXC
) += i2c-mxv7.o
24 obj-
$(CONFIG_SYSCOUNTER_TIMER
) += syscounter.o
26 ifeq ($(SOC
),$(filter $(SOC
),mx6 mx7
))
27 obj-y
+= cache.o init.o
28 obj-
$(CONFIG_CMD_SATA
) += sata.o
29 obj-
$(CONFIG_IMX_VIDEO_SKIP
) += video.o
30 obj-
$(CONFIG_IMX_RDC
) += rdc-sema.o
31 obj-
$(CONFIG_IMX_BOOTAUX
) += imx_bootaux.o
32 obj-
$(CONFIG_SECURE_BOOT
) += hab.o
34 ifeq ($(SOC
),$(filter $(SOC
),mx7ulp
))
36 obj-
$(CONFIG_SECURE_BOOT
) += hab.o
38 ifeq ($(SOC
),$(filter $(SOC
),vf610
))
39 obj-y
+= ddrmc-vf610.o
41 ifneq ($(CONFIG_SPL_BUILD
),y
)
42 obj-
$(CONFIG_CMD_BMODE
) += cmd_bmode.o
43 obj-
$(CONFIG_CMD_HDMIDETECT
) += cmd_hdmidet.o
44 obj-
$(CONFIG_CMD_DEKBLOB
) += cmd_dek.o
47 PLUGIN
= board
/$(BOARDDIR
)/plugin
49 ifeq ($(CONFIG_USE_IMXIMG_PLUGIN
),y
)
51 $(PLUGIN
).o
: $(PLUGIN
).S FORCE
52 $(Q
)mkdir
-p
$(dir $@
)
53 $(call if_changed_dep
,as_o_S
)
55 $(PLUGIN
).bin
: $(PLUGIN
).o FORCE
56 $(Q
)mkdir
-p
$(dir $@
)
57 $(OBJCOPY
) -O binary
--gap-fill
0xff $< $@
64 quiet_cmd_cpp_cfg
= CFGS
$@
65 cmd_cpp_cfg
= $(CPP
) $(cpp_flags
) -x c
-o
$@
$<
67 IMX_CONFIG
= $(CONFIG_IMX_CONFIG
:"%"=%).cfgtmp
69 $(IMX_CONFIG
): %.cfgtmp
: % FORCE
70 $(Q
)mkdir
-p
$(dir $@
)
71 $(call if_changed_dep
,cpp_cfg
)
73 MKIMAGEFLAGS_u-boot.imx
= -n
$(filter-out $(PLUGIN
).bin
$< $(PHONY
),$^
) -T imximage \
74 -e
$(CONFIG_SYS_TEXT_BASE
)
75 u-boot.imx
: MKIMAGEOUTPUT
= u-boot.imx.log
77 u-boot.imx
: u-boot.bin
$(IMX_CONFIG
) $(PLUGIN
).bin FORCE
78 $(call if_changed
,mkimage
)
80 ifeq ($(CONFIG_OF_SEPARATE
),y
)
81 MKIMAGEFLAGS_u-boot-dtb.imx
= -n
$(filter-out $(PLUGIN
).bin
$< $(PHONY
),$^
) -T imximage \
82 -e
$(CONFIG_SYS_TEXT_BASE
)
83 u-boot-dtb.imx
: MKIMAGEOUTPUT
= u-boot-dtb.imx.log
85 u-boot-dtb.imx
: u-boot-dtb.bin
$(IMX_CONFIG
) $(PLUGIN
).bin FORCE
86 $(call if_changed
,mkimage
)
89 MKIMAGEFLAGS_SPL
= -n
$(filter-out $(PLUGIN
).bin
$< $(PHONY
),$^
) -T imximage \
90 -e
$(CONFIG_SPL_TEXT_BASE
)
92 SPL
: MKIMAGEOUTPUT
= SPL.log
94 SPL
: spl
/u-boot-spl.bin
$(IMX_CONFIG
) $(PLUGIN
).bin FORCE
95 $(call if_changed
,mkimage
)
97 MKIMAGEFLAGS_u-boot.uim
= -A arm
-O U-Boot
-a
$(CONFIG_SYS_TEXT_BASE
) \
98 -e
$(CONFIG_SYS_TEXT_BASE
) -C none
-T firmware
100 u-boot.uim
: u-boot.bin FORCE
101 $(call if_changed
,mkimage
)
103 OBJCOPYFLAGS
+= -I binary
-O binary
--pad-to
=$(CONFIG_SPL_PAD_TO
)
104 append
= cat
$(filter-out $< $(PHONY
), $^
) >> $@
106 quiet_cmd_pad_cat
= CAT
$@
107 cmd_pad_cat
= $(cmd_objcopy
) && $(append
) ||
rm -f
$@
109 u-boot-with-spl.imx
: SPL u-boot.uim FORCE
110 $(call if_changed
,pad_cat
)
112 u-boot-with-nand-spl.imx
: spl
/u-boot-nand-spl.imx u-boot.uim FORCE
113 $(call if_changed
,pad_cat
)
115 quiet_cmd_u-boot-nand-spl_imx
= GEN
$@
116 cmd_u-boot-nand-spl_imx
= (printf
'\000\000\000\000\106\103\102\040\001' && \
117 dd bs
=1015 count
=1 if
=/dev
/zero
2>/dev
/null
) | cat
- $< > $@
119 spl
/u-boot-nand-spl.imx
: SPL FORCE
120 $(call if_changed
,u-boot-nand-spl_imx
)
122 targets
+= $(addprefix ..
/..
/..
/,$(IMX_CONFIG
) SPL u-boot.uim spl
/u-boot-nand-spl.imx
)