183d290c5STom Rini# SPDX-License-Identifier: GPL-2.0+ 2e2211743Swdenk# 3eca3aeb3SWolfgang Denk# (C) Copyright 2000-2013 4e2211743Swdenk# Wolfgang Denk, DENX Software Engineering, wd@denx.de. 5e2211743Swdenk######################################################################### 6e2211743Swdenk 7026f9cf2SMasahiro Yamada# This file is included from ./Makefile and spl/Makefile. 8026f9cf2SMasahiro Yamada# Clean the state to avoid the same flags added twice. 9026f9cf2SMasahiro Yamada# 10026f9cf2SMasahiro Yamada# (Tegra needs different flags for SPL. 11026f9cf2SMasahiro Yamada# That's the reason why this file must be included from spl/Makefile too. 12026f9cf2SMasahiro Yamada# If we did not have Tegra SoCs, build system would be much simpler...) 13026f9cf2SMasahiro YamadaPLATFORM_RELFLAGS := 14026f9cf2SMasahiro YamadaPLATFORM_CPPFLAGS := 15026f9cf2SMasahiro YamadaPLATFORM_LDFLAGS := 16026f9cf2SMasahiro YamadaLDFLAGS := 17026f9cf2SMasahiro YamadaLDFLAGS_FINAL := 18*1d3b97c9SDaniel SchwierzeckLDFLAGS_STANDALONE := 19026f9cf2SMasahiro YamadaOBJCOPYFLAGS := 205b3ee386SMasahiro Yamada# clear VENDOR for tcsh 215b3ee386SMasahiro YamadaVENDOR := 22e2211743Swdenk######################################################################### 23c4e5f52aSWolfgang Denk 2451148790SMasahiro YamadaARCH := $(CONFIG_SYS_ARCH:"%"=%) 2551148790SMasahiro YamadaCPU := $(CONFIG_SYS_CPU:"%"=%) 26e02ee254SMasahiro Yamadaifdef CONFIG_SPL_BUILD 27e02ee254SMasahiro Yamadaifdef CONFIG_TEGRA 28e02ee254SMasahiro YamadaCPU := arm720t 29e02ee254SMasahiro Yamadaendif 30e02ee254SMasahiro Yamadaendif 3151148790SMasahiro YamadaBOARD := $(CONFIG_SYS_BOARD:"%"=%) 3251148790SMasahiro Yamadaifneq ($(CONFIG_SYS_VENDOR),) 3351148790SMasahiro YamadaVENDOR := $(CONFIG_SYS_VENDOR:"%"=%) 3451148790SMasahiro Yamadaendif 3551148790SMasahiro Yamadaifneq ($(CONFIG_SYS_SOC),) 3651148790SMasahiro YamadaSOC := $(CONFIG_SYS_SOC:"%"=%) 3751148790SMasahiro Yamadaendif 3851148790SMasahiro Yamada 3903b7004dSPeter Tyser# Some architecture config.mk files need to know what CPUDIR is set to, 4003b7004dSPeter Tyser# so calculate CPUDIR before including ARCH/SOC/CPU config.mk files. 418d1f2682SPeter Tyser# Check if arch/$ARCH/cpu/$CPU exists, otherwise assume arch/$ARCH/cpu contains 428d1f2682SPeter Tyser# CPU-specific code. 43a8b0f9b6SMasahiro YamadaCPUDIR=arch/$(ARCH)/cpu$(if $(CPU),/$(CPU),) 4403b7004dSPeter Tyser 454379ac61SMasahiro Yamadasinclude $(srctree)/arch/$(ARCH)/config.mk # include architecture dependend rules 464379ac61SMasahiro Yamadasinclude $(srctree)/$(CPUDIR)/config.mk # include CPU specific rules 4703b7004dSPeter Tyser 48c4e5f52aSWolfgang Denkifdef SOC 494379ac61SMasahiro Yamadasinclude $(srctree)/$(CPUDIR)/$(SOC)/config.mk # include SoC specific rules 50c4e5f52aSWolfgang Denkendif 5133a02da0SMasahiro Yamadaifneq ($(BOARD),) 52c4e5f52aSWolfgang Denkifdef VENDOR 53c4e5f52aSWolfgang DenkBOARDDIR = $(VENDOR)/$(BOARD) 54c4e5f52aSWolfgang Denkelse 55c4e5f52aSWolfgang DenkBOARDDIR = $(BOARD) 56c4e5f52aSWolfgang Denkendif 5733a02da0SMasahiro Yamadaendif 58c4e5f52aSWolfgang Denkifdef BOARD 594379ac61SMasahiro Yamadasinclude $(srctree)/board/$(BOARDDIR)/config.mk # include board specific rules 60c4e5f52aSWolfgang Denkendif 61c4e5f52aSWolfgang Denk 62b8450521SSimon Glassifdef FTRACE 63b8450521SSimon GlassPLATFORM_CPPFLAGS += -finstrument-functions -DFTRACE 64b8450521SSimon Glassendif 65b8450521SSimon Glass 66c4e5f52aSWolfgang Denk######################################################################### 67c4e5f52aSWolfgang Denk 68026f9cf2SMasahiro YamadaRELFLAGS := $(PLATFORM_RELFLAGS) 6983b7e2a7SScott Wood 70026f9cf2SMasahiro YamadaPLATFORM_CPPFLAGS += $(RELFLAGS) 71026f9cf2SMasahiro YamadaPLATFORM_CPPFLAGS += -pipe 724a30f1e8STom Rini 738aba9dceSNobuhiro IwamatsuLDFLAGS += $(PLATFORM_LDFLAGS) 746dc1ecebSHaiying WangLDFLAGS_FINAL += -Bstatic 75026f9cf2SMasahiro Yamada 76026f9cf2SMasahiro Yamadaexport PLATFORM_CPPFLAGS 77026f9cf2SMasahiro Yamadaexport RELFLAGS 78026f9cf2SMasahiro Yamadaexport LDFLAGS_FINAL 79*1d3b97c9SDaniel Schwierzeckexport LDFLAGS_STANDALONE 80026f9cf2SMasahiro Yamadaexport CONFIG_STANDALONE_LOAD_ADDR 81