1e2211743Swdenk# 2eca3aeb3SWolfgang Denk# (C) Copyright 2000-2013 3e2211743Swdenk# Wolfgang Denk, DENX Software Engineering, wd@denx.de. 4e2211743Swdenk# 5eca3aeb3SWolfgang Denk# SPDX-License-Identifier: GPL-2.0+ 6e2211743Swdenk# 7e2211743Swdenk######################################################################### 8e2211743Swdenk 9026f9cf2SMasahiro Yamada# This file is included from ./Makefile and spl/Makefile. 10026f9cf2SMasahiro Yamada# Clean the state to avoid the same flags added twice. 11026f9cf2SMasahiro Yamada# 12026f9cf2SMasahiro Yamada# (Tegra needs different flags for SPL. 13026f9cf2SMasahiro Yamada# That's the reason why this file must be included from spl/Makefile too. 14026f9cf2SMasahiro Yamada# If we did not have Tegra SoCs, build system would be much simpler...) 15026f9cf2SMasahiro YamadaPLATFORM_RELFLAGS := 16026f9cf2SMasahiro YamadaPLATFORM_CPPFLAGS := 17026f9cf2SMasahiro YamadaPLATFORM_LDFLAGS := 18026f9cf2SMasahiro YamadaLDFLAGS := 19026f9cf2SMasahiro YamadaLDFLAGS_FINAL := 20026f9cf2SMasahiro YamadaOBJCOPYFLAGS := 215b3ee386SMasahiro Yamada# clear VENDOR for tcsh 225b3ee386SMasahiro YamadaVENDOR := 23e2211743Swdenk######################################################################### 24c4e5f52aSWolfgang Denk 2551148790SMasahiro YamadaARCH := $(CONFIG_SYS_ARCH:"%"=%) 2651148790SMasahiro YamadaCPU := $(CONFIG_SYS_CPU:"%"=%) 27*e02ee254SMasahiro Yamadaifdef CONFIG_SPL_BUILD 28*e02ee254SMasahiro Yamadaifdef CONFIG_TEGRA 29*e02ee254SMasahiro YamadaCPU := arm720t 30*e02ee254SMasahiro Yamadaendif 31*e02ee254SMasahiro Yamadaendif 3251148790SMasahiro YamadaBOARD := $(CONFIG_SYS_BOARD:"%"=%) 3351148790SMasahiro Yamadaifneq ($(CONFIG_SYS_VENDOR),) 3451148790SMasahiro YamadaVENDOR := $(CONFIG_SYS_VENDOR:"%"=%) 3551148790SMasahiro Yamadaendif 3651148790SMasahiro Yamadaifneq ($(CONFIG_SYS_SOC),) 3751148790SMasahiro YamadaSOC := $(CONFIG_SYS_SOC:"%"=%) 3851148790SMasahiro Yamadaendif 3951148790SMasahiro Yamada 4003b7004dSPeter Tyser# Some architecture config.mk files need to know what CPUDIR is set to, 4103b7004dSPeter Tyser# so calculate CPUDIR before including ARCH/SOC/CPU config.mk files. 428d1f2682SPeter Tyser# Check if arch/$ARCH/cpu/$CPU exists, otherwise assume arch/$ARCH/cpu contains 438d1f2682SPeter Tyser# CPU-specific code. 44a8b0f9b6SMasahiro YamadaCPUDIR=arch/$(ARCH)/cpu$(if $(CPU),/$(CPU),) 4503b7004dSPeter Tyser 464379ac61SMasahiro Yamadasinclude $(srctree)/arch/$(ARCH)/config.mk # include architecture dependend rules 474379ac61SMasahiro Yamadasinclude $(srctree)/$(CPUDIR)/config.mk # include CPU specific rules 4803b7004dSPeter Tyser 49c4e5f52aSWolfgang Denkifdef SOC 504379ac61SMasahiro Yamadasinclude $(srctree)/$(CPUDIR)/$(SOC)/config.mk # include SoC specific rules 51c4e5f52aSWolfgang Denkendif 5233a02da0SMasahiro Yamadaifneq ($(BOARD),) 53c4e5f52aSWolfgang Denkifdef VENDOR 54c4e5f52aSWolfgang DenkBOARDDIR = $(VENDOR)/$(BOARD) 55c4e5f52aSWolfgang Denkelse 56c4e5f52aSWolfgang DenkBOARDDIR = $(BOARD) 57c4e5f52aSWolfgang Denkendif 5833a02da0SMasahiro Yamadaendif 59c4e5f52aSWolfgang Denkifdef BOARD 604379ac61SMasahiro Yamadasinclude $(srctree)/board/$(BOARDDIR)/config.mk # include board specific rules 61c4e5f52aSWolfgang Denkendif 62c4e5f52aSWolfgang Denk 63b8450521SSimon Glassifdef FTRACE 64b8450521SSimon GlassPLATFORM_CPPFLAGS += -finstrument-functions -DFTRACE 65b8450521SSimon Glassendif 66b8450521SSimon Glass 670d296cc2SGabe Black# Allow use of stdint.h if available 680d296cc2SGabe Blackifneq ($(USE_STDINT),) 690d296cc2SGabe BlackPLATFORM_CPPFLAGS += -DCONFIG_USE_STDINT 700d296cc2SGabe Blackendif 710d296cc2SGabe Black 72c4e5f52aSWolfgang Denk######################################################################### 73c4e5f52aSWolfgang Denk 74026f9cf2SMasahiro YamadaRELFLAGS := $(PLATFORM_RELFLAGS) 7583b7e2a7SScott Wood 76026f9cf2SMasahiro YamadaPLATFORM_CPPFLAGS += $(RELFLAGS) 77026f9cf2SMasahiro YamadaPLATFORM_CPPFLAGS += -pipe 784a30f1e8STom Rini 798aba9dceSNobuhiro IwamatsuLDFLAGS += $(PLATFORM_LDFLAGS) 806dc1ecebSHaiying WangLDFLAGS_FINAL += -Bstatic 81026f9cf2SMasahiro Yamada 82026f9cf2SMasahiro Yamadaexport PLATFORM_CPPFLAGS 83026f9cf2SMasahiro Yamadaexport RELFLAGS 84026f9cf2SMasahiro Yamadaexport LDFLAGS_FINAL 85026f9cf2SMasahiro Yamadaexport CONFIG_STANDALONE_LOAD_ADDR 86