]>
Commit | Line | Data |
---|---|---|
e19db555 DS |
1 | # |
2 | # SPDX-License-Identifier: GPL-2.0+ | |
3 | # | |
4 | ||
bf71a29c MY |
5 | ifeq ($(CONFIG_SPL_BUILD)$(CONFIG_TEGRA),yy) |
6 | CONFIG_CPU_V7= | |
7 | CONFIG_CPU_ARM720T=y | |
8 | endif | |
9 | ||
79d75d75 MY |
10 | # This selects which instruction set is used. |
11 | arch-$(CONFIG_CPU_ARM720T) =-march=armv4 | |
02499e4e | 12 | arch-$(CONFIG_CPU_ARM920T) =-march=armv4t |
79d75d75 | 13 | arch-$(CONFIG_CPU_ARM926EJS) =-march=armv5te |
626f6e4f | 14 | arch-$(CONFIG_CPU_ARM946ES) =-march=armv5te |
79d75d75 MY |
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 | |
b745e828 TR |
19 | arch-$(CONFIG_CPU_V7) =$(call cc-option, -march=armv7-a, \ |
20 | $(call cc-option, -march=armv7, -march=armv5)) | |
79d75d75 MY |
21 | arch-$(CONFIG_ARM64) =-march=armv8-a |
22 | ||
a78cd861 TR |
23 | # On Tegra systems we must build SPL for the armv4 core on the device |
24 | # but otherwise we can use the value in CONFIG_SYS_ARM_ARCH | |
25 | ifeq ($(CONFIG_SPL_BUILD)$(CONFIG_TEGRA),yy) | |
26 | arch-y += -D__LINUX_ARM_ARCH__=4 | |
27 | else | |
28 | arch-y += -D__LINUX_ARM_ARCH__=$(CONFIG_SYS_ARM_ARCH) | |
29 | endif | |
30 | ||
79d75d75 MY |
31 | # Evaluate arch cc-option calls now |
32 | arch-y := $(arch-y) | |
33 | ||
34 | # This selects how we optimise for the processor. | |
35 | tune-$(CONFIG_CPU_ARM720T) =-mtune=arm7tdmi | |
36 | tune-$(CONFIG_CPU_ARM920T) = | |
37 | tune-$(CONFIG_CPU_ARM926EJS) = | |
38 | tune-$(CONFIG_CPU_ARM946ES) = | |
39 | tune-$(CONFIG_CPU_SA1100) =-mtune=strongarm1100 | |
40 | tune-$(CONFIG_CPU_PXA) =-mcpu=xscale | |
41 | tune-$(CONFIG_CPU_ARM1136) = | |
42 | tune-$(CONFIG_CPU_ARM1176) = | |
43 | tune-$(CONFIG_CPU_V7) = | |
44 | tune-$(CONFIG_ARM64) = | |
45 | ||
46 | # Evaluate tune cc-option calls now | |
47 | tune-y := $(tune-y) | |
48 | ||
49 | PLATFORM_CPPFLAGS += $(arch-y) $(tune-y) | |
50 | ||
01f14456 MY |
51 | # Machine directory name. This list is sorted alphanumerically |
52 | # by CONFIG_* macro name. | |
4697abea | 53 | machine-$(CONFIG_ARCH_ASPEED) += aspeed |
62011840 | 54 | machine-$(CONFIG_ARCH_AT91) += at91 |
ddf6bd48 | 55 | machine-$(CONFIG_ARCH_BCM283X) += bcm283x |
601fbec7 | 56 | machine-$(CONFIG_ARCH_DAVINCI) += davinci |
77b55e8c | 57 | machine-$(CONFIG_ARCH_EXYNOS) += exynos |
72a8ff4b | 58 | machine-$(CONFIG_ARCH_HIGHBANK) += highbank |
39a72345 | 59 | machine-$(CONFIG_ARCH_KEYSTONE) += keystone |
56f86e39 MY |
60 | # TODO: rename CONFIG_KIRKWOOD -> CONFIG_ARCH_KIRKWOOD |
61 | machine-$(CONFIG_KIRKWOOD) += kirkwood | |
bfcef28a | 62 | machine-$(CONFIG_ARCH_MESON) += meson |
81e33f4b | 63 | machine-$(CONFIG_ARCH_MVEBU) += mvebu |
09f455dc | 64 | # TODO: rename CONFIG_TEGRA -> CONFIG_ARCH_TEGRA |
3e93b4e6 MY |
65 | # TODO: rename CONFIG_ORION5X -> CONFIG_ARCH_ORION5X |
66 | machine-$(CONFIG_ORION5X) += orion5x | |
a93fbf4a | 67 | machine-$(CONFIG_ARCH_OMAP2PLUS) += omap2 |
225f5eec | 68 | machine-$(CONFIG_ARCH_S5PC1XX) += s5pc1xx |
e6e505b9 | 69 | machine-$(CONFIG_ARCH_SUNXI) += sunxi |
08592136 | 70 | machine-$(CONFIG_ARCH_SNAPDRAGON) += snapdragon |
05a21721 | 71 | machine-$(CONFIG_ARCH_SOCFPGA) += socfpga |
1cc95f6e | 72 | machine-$(CONFIG_ARCH_RMOBILE) += rmobile |
2444dae5 | 73 | machine-$(CONFIG_ARCH_ROCKCHIP) += rockchip |
0a61ee88 | 74 | machine-$(CONFIG_STM32) += stm32 |
09f455dc | 75 | machine-$(CONFIG_TEGRA) += tegra |
4c425570 | 76 | machine-$(CONFIG_ARCH_UNIPHIER) += uniphier |
5ca269a4 | 77 | machine-$(CONFIG_ARCH_ZYNQ) += zynq |
01f14456 MY |
78 | |
79 | machdirs := $(patsubst %,arch/arm/mach-%/,$(machine-y)) | |
80 | ||
30ebf88f MY |
81 | PLATFORM_CPPFLAGS += $(patsubst %,-I$(srctree)/%include,$(machdirs)) |
82 | ||
01f14456 MY |
83 | libs-y += $(machdirs) |
84 | ||
e19db555 DS |
85 | head-y := arch/arm/cpu/$(CPU)/start.o |
86 | ||
87 | ifeq ($(CONFIG_SPL_BUILD),y) | |
88 | ifneq ($(CONFIG_SPL_START_S_PATH),) | |
89 | head-y := $(CONFIG_SPL_START_S_PATH:"%"=%)/start.o | |
90 | endif | |
91 | endif | |
92 | ||
93 | libs-y += arch/arm/cpu/$(CPU)/ | |
94 | libs-y += arch/arm/cpu/ | |
95 | libs-y += arch/arm/lib/ | |
96 | ||
97 | ifeq ($(CONFIG_SPL_BUILD),y) | |
99f49fdd | 98 | ifneq (,$(CONFIG_MX23)$(CONFIG_MX28)$(CONFIG_MX35)$(filter $(SOC), mx25 mx5 mx6 mx7 mx35)) |
e19db555 DS |
99 | libs-y += arch/arm/imx-common/ |
100 | endif | |
101 | else | |
1b409828 | 102 | ifneq (,$(filter $(SOC), mx25 mx27 mx5 mx6 mx7 mx7ulp mx31 mx35 mxs vf610)) |
e19db555 DS |
103 | libs-y += arch/arm/imx-common/ |
104 | endif | |
105 | endif | |
106 | ||
d0787656 SR |
107 | ifneq (,$(filter $(SOC), kirkwood)) |
108 | libs-y += arch/arm/mach-mvebu/ | |
e19db555 | 109 | endif |
01f14456 MY |
110 | |
111 | # deprecated | |
112 | -include $(machdirs)/config.mk |