2 # SPDX-License-Identifier: GPL-2.0+
5 ifeq ($(CONFIG_SPL_BUILD
)$(CONFIG_TEGRA
),yy
)
10 # This selects which instruction set is used.
11 arch-
$(CONFIG_CPU_ARM720T
) =-march
=armv4
12 arch-
$(CONFIG_CPU_ARM920T
) =-march
=armv4t
13 arch-
$(CONFIG_CPU_ARM926EJS
) =-march
=armv5te
14 arch-
$(CONFIG_CPU_ARM946ES
) =-march
=armv5te
15 arch-
$(CONFIG_CPU_SA1100
) =-march
=armv4
16 arch-
$(CONFIG_CPU_PXA
) =
17 arch-
$(CONFIG_CPU_ARM1136
) =-march
=armv5
18 arch-
$(CONFIG_CPU_ARM1176
) =-march
=armv5t
19 arch-
$(CONFIG_CPU_V7
) =$(call cc-option
, -march
=armv7-a
, \
20 $(call cc-option
, -march
=armv7
, -march
=armv5
))
21 arch-
$(CONFIG_ARM64
) =-march
=armv8-a
23 # Evaluate arch cc-option calls now
26 # This selects how we optimise for the processor.
27 tune-
$(CONFIG_CPU_ARM720T
) =-mtune
=arm7tdmi
28 tune-
$(CONFIG_CPU_ARM920T
) =
29 tune-
$(CONFIG_CPU_ARM926EJS
) =
30 tune-
$(CONFIG_CPU_ARM946ES
) =
31 tune-
$(CONFIG_CPU_SA1100
) =-mtune
=strongarm1100
32 tune-
$(CONFIG_CPU_PXA
) =-mcpu
=xscale
33 tune-
$(CONFIG_CPU_ARM1136
) =
34 tune-
$(CONFIG_CPU_ARM1176
) =
35 tune-
$(CONFIG_CPU_V7
) =
36 tune-
$(CONFIG_ARM64
) =
38 # Evaluate tune cc-option calls now
41 PLATFORM_CPPFLAGS
+= $(arch-y
) $(tune-y
)
43 # Machine directory name. This list is sorted alphanumerically
44 # by CONFIG_* macro name.
45 machine-
$(CONFIG_ARCH_AT91
) += at91
46 machine-
$(CONFIG_ARCH_BCM283X
) += bcm283x
47 machine-
$(CONFIG_ARCH_DAVINCI
) += davinci
48 machine-
$(CONFIG_ARCH_EXYNOS
) += exynos
49 machine-
$(CONFIG_ARCH_HIGHBANK
) += highbank
50 machine-
$(CONFIG_ARCH_KEYSTONE
) += keystone
51 # TODO: rename CONFIG_KIRKWOOD -> CONFIG_ARCH_KIRKWOOD
52 machine-
$(CONFIG_KIRKWOOD
) += kirkwood
53 machine-
$(CONFIG_ARCH_MESON
) += meson
54 machine-
$(CONFIG_ARCH_MVEBU
) += mvebu
55 # TODO: rename CONFIG_TEGRA -> CONFIG_ARCH_TEGRA
56 # TODO: rename CONFIG_ORION5X -> CONFIG_ARCH_ORION5X
57 machine-
$(CONFIG_ORION5X
) += orion5x
58 machine-
$(CONFIG_ARCH_S5PC1XX
) += s5pc1xx
59 machine-
$(CONFIG_ARCH_SUNXI
) += sunxi
60 machine-
$(CONFIG_ARCH_SNAPDRAGON
) += snapdragon
61 machine-
$(CONFIG_ARCH_SOCFPGA
) += socfpga
62 machine-
$(CONFIG_ARCH_RMOBILE
) += rmobile
63 machine-
$(CONFIG_ARCH_ROCKCHIP
) += rockchip
64 machine-
$(CONFIG_STM32
) += stm32
65 machine-
$(CONFIG_TEGRA
) += tegra
66 machine-
$(CONFIG_ARCH_UNIPHIER
) += uniphier
67 machine-
$(CONFIG_ARCH_ZYNQ
) += zynq
69 machdirs
:= $(patsubst %,arch
/arm
/mach-
%/,$(machine-y
))
71 PLATFORM_CPPFLAGS
+= $(patsubst %,-I
$(srctree
)/%include,$(machdirs
))
75 head-y
:= arch
/arm
/cpu
/$(CPU
)/start.o
77 ifeq ($(CONFIG_SPL_BUILD
),y
)
78 ifneq ($(CONFIG_SPL_START_S_PATH
),)
79 head-y
:= $(CONFIG_SPL_START_S_PATH
:"%"=%)/start.o
83 libs-y
+= arch
/arm
/cpu
/$(CPU
)/
84 libs-y
+= arch
/arm
/cpu
/
85 libs-y
+= arch
/arm
/lib
/
87 ifeq ($(CONFIG_SPL_BUILD
),y
)
88 ifneq (,$(CONFIG_MX23
)$(CONFIG_MX28
)$(CONFIG_MX35
)$(filter $(SOC
), mx25 mx27 mx5 mx6 mx7 mx31 mx35
))
89 libs-y
+= arch
/arm
/imx-common
/
92 ifneq (,$(filter $(SOC
), mx25 mx27 mx5 mx6 mx7 mx31 mx35 mxs vf610
))
93 libs-y
+= arch
/arm
/imx-common
/
97 ifneq (,$(filter $(SOC
), kirkwood
))
98 libs-y
+= arch
/arm
/mach-mvebu
/
102 -include $(machdirs
)/config.mk