1 ## SPDX-License-Identifier: GPL-2.0-only
3 armv7_flags
= -mthumb
-I
$(src
)/arch
/arm
/include/armv7
/ -D__COREBOOT_ARM_ARCH__
=7
4 armv7-a_flags
= -march
=armv7-a
$(armv7_flags
) -D__COREBOOT_ARM_V7_A__
5 armv7-m_flags
= -march
=armv7-m
$(armv7_flags
) -D__COREBOOT_ARM_V7_M__
6 armv7-r_flags
= -march
=armv7-r
$(armv7_flags
) -D__COREBOOT_ARM_V7_R__
8 armv7_asm_flags
= -Wa
,-mthumb
-Wa
,-mimplicit-it
=always
9 ifeq ($(CONFIG_COMPILER_GCC
),y
)
10 armv7_asm_flags
+= -Wa
,-mno-warn-deprecated
12 armv7_flags
+= -mfpu
=none
14 armv7-r_asm_flags
= $(armv7-r_flags
) $(armv7_asm_flags
)
16 ###############################################################################
18 ###############################################################################
20 ifeq ($(CONFIG_ARCH_BOOTBLOCK_ARMV7
),y
)
21 decompressor-generic-ccopts
+= $(armv7-a_flags
)
22 decompressor-S-ccopts
+= $(armv7_asm_flags
)
23 bootblock-generic-ccopts
+= $(armv7-a_flags
)
24 bootblock-S-ccopts
+= $(armv7_asm_flags
)
26 ifneq ($(CONFIG_BOOTBLOCK_CUSTOM
),y
)
27 decompressor-y
+= bootblock.S
28 ifneq ($(CONFIG_COMPRESS_BOOTBLOCK
),y
)
29 bootblock-y
+= bootblock.S
33 decompressor-y
+= cache.c
34 bootblock-y
+= cache.c
35 decompressor-y
+= cpu.S
37 decompressor-y
+= mmu.c
40 bootblock-
$(CONFIG_BOOTBLOCK_CONSOLE
) += exception.c
41 bootblock-
$(CONFIG_BOOTBLOCK_CONSOLE
) += exception_asm.S
43 else ifeq ($(CONFIG_ARCH_BOOTBLOCK_ARMV7_M
),y
)
44 bootblock-generic-ccopts
+= $(armv7-m_flags
)
45 bootblock-S-ccopts
+= $(armv7_asm_flags
)
47 ifneq ($(CONFIG_BOOTBLOCK_CUSTOM
),y
)
48 bootblock-y
+= bootblock_m.S
50 bootblock-y
+= exception_mr.c
51 bootblock-y
+= cache_m.c
53 else ifeq ($(CONFIG_ARCH_BOOTBLOCK_ARMV7_R
),y
)
54 bootblock-generic-ccopts
+= $(armv7-r_flags
)
55 bootblock-S-ccopts
+= $(armv7-r_asm_flags
)
57 ifneq ($(CONFIG_BOOTBLOCK_CUSTOM
),y
)
58 bootblock-y
+= bootblock.S
61 bootblock-y
+= cache.c
63 bootblock-y
+= exception_mr.c
66 endif # CONFIG_ARCH_BOOTBLOCK_ARMV7
68 ################################################################################
70 ################################################################################
72 ifeq ($(CONFIG_ARCH_VERSTAGE_ARMV7
),y
)
73 verstage-generic-ccopts
+= $(armv7-a_flags
)
74 verstage-S-ccopts
+= $(armv7_asm_flags
)
78 verstage-y
+= exception.c
79 verstage-y
+= exception_asm.S
82 else ifeq ($(CONFIG_ARCH_VERSTAGE_ARMV7_M
),y
)
83 verstage-generic-ccopts
+= $(armv7-m_flags
)
84 verstage-S-ccopts
+= $(armv7_asm_flags
)
86 else ifeq ($(CONFIG_ARCH_VERSTAGE_ARMV7_R
),y
)
87 verstage-generic-ccopts
+= $(armv7-r_flags
)
88 verstage-S-ccopts
+= $(armv7-r_asm_flags
)
92 verstage-y
+= exception_mr.c
95 endif # CONFIG_ARCH_VERSTAGE_ARMV7_M
97 ################################################################################
99 ################################################################################
100 ifeq ($(CONFIG_ARCH_ROMSTAGE_ARMV7
),y
)
101 romstage-y
+= cache.c
103 romstage-y
+= exception.c
104 romstage-y
+= exception_asm.S
107 romstage-generic-ccopts
+= $(armv7-a_flags
)
108 romstage-S-ccopts
+= $(armv7_asm_flags
)
110 rmodules_arm-generic-ccopts
+= $(armv7-a_flags
)
111 rmodules_arm-S-ccopts
+= $(armv7_asm_flags
)
113 else ifeq ($(CONFIG_ARCH_ROMSTAGE_ARMV7_R
),y
)
114 romstage-y
+= cache.c
116 romstage-y
+= exception_mr.c
119 romstage-generic-ccopts
+= $(armv7-r_flags
)
120 romstage-S-ccopts
+= $(armv7-r_asm_flags
)
122 rmodules_arm-generic-ccopts
+= $(armv7-r_flags
)
123 rmodules_arm-S-ccopts
+= $(armv7-r_asm_flags
)
125 endif # CONFIG_ARCH_ROMSTAGE_ARMV7
127 ###############################################################################
129 ###############################################################################
131 ifeq ($(CONFIG_ARCH_RAMSTAGE_ARMV7
),y
)
133 ramstage-y
+= cache.c
135 ramstage-y
+= exception.c
136 ramstage-y
+= exception_asm.S
139 ramstage-generic-ccopts
+= $(armv7-a_flags
)
140 ramstage-S-ccopts
+= $(armv7_asm_flags
)
142 # All rmodule code is armv7 if ramstage is armv7.
143 rmodules_arm-generic-ccopts
+= $(armv7-a_flags
)
144 rmodules_arm-S-ccopts
+= $(armv7_asm_flags
)
146 else ifeq ($(CONFIG_ARCH_RAMSTAGE_ARMV7_R
),y
)
148 ramstage-y
+= cache.c
150 ramstage-y
+= exception_mr.c
153 ramstage-generic-ccopts
+= $(armv7-r_flags
)
154 ramstage-S-ccopts
+= $(armv7-r_asm_flags
)
156 # All rmodule code is armv7 if ramstage is armv7.
157 rmodules_arm-generic-ccopts
+= $(armv7-r_flags
)
158 rmodules_arm-S-ccopts
+= $(armv7-r_asm_flags
)
160 endif # CONFIG_ARCH_RAMSTAGE_ARMV7