xref: /rk3399_rockchip-uboot/arch/arm/Makefile (revision 02499e4edc885b3064c76f8b6e84d9ff8d7a6b4b)
1e19db555SDaniel Schwierzeck#
2e19db555SDaniel Schwierzeck# SPDX-License-Identifier:	GPL-2.0+
3e19db555SDaniel Schwierzeck#
4e19db555SDaniel Schwierzeck
5bf71a29cSMasahiro Yamadaifeq ($(CONFIG_SPL_BUILD)$(CONFIG_TEGRA),yy)
6bf71a29cSMasahiro YamadaCONFIG_CPU_V7=
7bf71a29cSMasahiro YamadaCONFIG_CPU_ARM720T=y
8bf71a29cSMasahiro Yamadaendif
9bf71a29cSMasahiro Yamada
1079d75d75SMasahiro Yamada# This selects which instruction set is used.
1179d75d75SMasahiro Yamadaarch-$(CONFIG_CPU_ARM720T)	=-march=armv4
12*02499e4eSDavid Müller (ELSOFT AG)arch-$(CONFIG_CPU_ARM920T)	=-march=armv4t
1379d75d75SMasahiro Yamadaarch-$(CONFIG_CPU_ARM926EJS)	=-march=armv5te
1479d75d75SMasahiro Yamadaarch-$(CONFIG_CPU_ARM946ES)	=-march=armv4
1579d75d75SMasahiro Yamadaarch-$(CONFIG_CPU_SA1100)	=-march=armv4
1679d75d75SMasahiro Yamadaarch-$(CONFIG_CPU_PXA)		=
1779d75d75SMasahiro Yamadaarch-$(CONFIG_CPU_ARM1136)	=-march=armv5
1879d75d75SMasahiro Yamadaarch-$(CONFIG_CPU_ARM1176)	=-march=armv5t
1979d75d75SMasahiro Yamadaarch-$(CONFIG_CPU_V7)		=$(call cc-option, -march=armv7-a, -march=armv5)
2079d75d75SMasahiro Yamadaarch-$(CONFIG_ARM64)		=-march=armv8-a
2179d75d75SMasahiro Yamada
2279d75d75SMasahiro Yamada# Evaluate arch cc-option calls now
2379d75d75SMasahiro Yamadaarch-y := $(arch-y)
2479d75d75SMasahiro Yamada
2579d75d75SMasahiro Yamada# This selects how we optimise for the processor.
2679d75d75SMasahiro Yamadatune-$(CONFIG_CPU_ARM720T)	=-mtune=arm7tdmi
2779d75d75SMasahiro Yamadatune-$(CONFIG_CPU_ARM920T)	=
2879d75d75SMasahiro Yamadatune-$(CONFIG_CPU_ARM926EJS)	=
2979d75d75SMasahiro Yamadatune-$(CONFIG_CPU_ARM946ES)	=
3079d75d75SMasahiro Yamadatune-$(CONFIG_CPU_SA1100)	=-mtune=strongarm1100
3179d75d75SMasahiro Yamadatune-$(CONFIG_CPU_PXA)		=-mcpu=xscale
3279d75d75SMasahiro Yamadatune-$(CONFIG_CPU_ARM1136)	=
3379d75d75SMasahiro Yamadatune-$(CONFIG_CPU_ARM1176)	=
3479d75d75SMasahiro Yamadatune-$(CONFIG_CPU_V7)		=
3579d75d75SMasahiro Yamadatune-$(CONFIG_ARM64)		=
3679d75d75SMasahiro Yamada
3779d75d75SMasahiro Yamada# Evaluate tune cc-option calls now
3879d75d75SMasahiro Yamadatune-y := $(tune-y)
3979d75d75SMasahiro Yamada
4079d75d75SMasahiro YamadaPLATFORM_CPPFLAGS += $(arch-y) $(tune-y)
4179d75d75SMasahiro Yamada
4201f14456SMasahiro Yamada# Machine directory name.  This list is sorted alphanumerically
4301f14456SMasahiro Yamada# by CONFIG_* macro name.
4462011840SMasahiro Yamadamachine-$(CONFIG_ARCH_AT91)		+= at91
45ddf6bd48SMasahiro Yamadamachine-$(CONFIG_ARCH_BCM283X)		+= bcm283x
46601fbec7SMasahiro Yamadamachine-$(CONFIG_ARCH_DAVINCI)		+= davinci
4777b55e8cSThomas Abrahammachine-$(CONFIG_ARCH_EXYNOS)		+= exynos
4872a8ff4bSMasahiro Yamadamachine-$(CONFIG_ARCH_HIGHBANK)		+= highbank
4939a72345SMasahiro Yamadamachine-$(CONFIG_ARCH_KEYSTONE)		+= keystone
5056f86e39SMasahiro Yamada# TODO: rename CONFIG_KIRKWOOD -> CONFIG_ARCH_KIRKWOOD
5156f86e39SMasahiro Yamadamachine-$(CONFIG_KIRKWOOD)		+= kirkwood
5281e33f4bSStefan Roesemachine-$(CONFIG_ARCH_MVEBU)		+= mvebu
5309f455dcSMasahiro Yamada# TODO: rename CONFIG_TEGRA -> CONFIG_ARCH_TEGRA
543e93b4e6SMasahiro Yamada# TODO: rename CONFIG_ORION5X -> CONFIG_ARCH_ORION5X
553e93b4e6SMasahiro Yamadamachine-$(CONFIG_ORION5X)		+= orion5x
56225f5eecSMinkyu Kangmachine-$(CONFIG_ARCH_S5PC1XX)		+= s5pc1xx
5705a21721SMasahiro Yamadamachine-$(CONFIG_ARCH_SOCFPGA)		+= socfpga
582444dae5SSimon Glassmachine-$(CONFIG_ARCH_ROCKCHIP)		+= rockchip
590a61ee88SVikas Manochamachine-$(CONFIG_STM32)			+= stm32
6009f455dcSMasahiro Yamadamachine-$(CONFIG_TEGRA)			+= tegra
614c425570SMasahiro Yamadamachine-$(CONFIG_ARCH_UNIPHIER)		+= uniphier
625ca269a4SMasahiro Yamadamachine-$(CONFIG_ARCH_ZYNQ)		+= zynq
6301f14456SMasahiro Yamada
6401f14456SMasahiro Yamadamachdirs := $(patsubst %,arch/arm/mach-%/,$(machine-y))
6501f14456SMasahiro Yamada
6630ebf88fSMasahiro YamadaPLATFORM_CPPFLAGS += $(patsubst %,-I$(srctree)/%include,$(machdirs))
6730ebf88fSMasahiro Yamada
6801f14456SMasahiro Yamadalibs-y += $(machdirs)
6901f14456SMasahiro Yamada
70e19db555SDaniel Schwierzeckhead-y := arch/arm/cpu/$(CPU)/start.o
71e19db555SDaniel Schwierzeck
72e19db555SDaniel Schwierzeckifeq ($(CONFIG_SPL_BUILD),y)
73e19db555SDaniel Schwierzeckifneq ($(CONFIG_SPL_START_S_PATH),)
74e19db555SDaniel Schwierzeckhead-y := $(CONFIG_SPL_START_S_PATH:"%"=%)/start.o
75e19db555SDaniel Schwierzeckendif
76e19db555SDaniel Schwierzeckendif
77e19db555SDaniel Schwierzeck
78e19db555SDaniel Schwierzecklibs-y += arch/arm/cpu/$(CPU)/
79e19db555SDaniel Schwierzecklibs-y += arch/arm/cpu/
80e19db555SDaniel Schwierzecklibs-y += arch/arm/lib/
81e19db555SDaniel Schwierzeck
82e19db555SDaniel Schwierzeckifeq ($(CONFIG_SPL_BUILD),y)
83cd562c8dSAdrian Alonsoifneq (,$(CONFIG_MX23)$(CONFIG_MX28)$(CONFIG_MX35)$(filter $(SOC), mx25 mx27 mx5 mx6 mx7 mx31 mx35))
84e19db555SDaniel Schwierzecklibs-y += arch/arm/imx-common/
85e19db555SDaniel Schwierzeckendif
86e19db555SDaniel Schwierzeckelse
87cd562c8dSAdrian Alonsoifneq (,$(filter $(SOC), mx25 mx27 mx5 mx6 mx7 mx31 mx35 mxs vf610))
88e19db555SDaniel Schwierzecklibs-y += arch/arm/imx-common/
89e19db555SDaniel Schwierzeckendif
90e19db555SDaniel Schwierzeckendif
91e19db555SDaniel Schwierzeck
92d0787656SStefan Roeseifneq (,$(filter $(SOC), kirkwood))
93d0787656SStefan Roeselibs-y += arch/arm/mach-mvebu/
94e19db555SDaniel Schwierzeckendif
9501f14456SMasahiro Yamada
9601f14456SMasahiro Yamada# deprecated
9701f14456SMasahiro Yamada-include $(machdirs)/config.mk
98