18e1a6dd2SChris Zankel# 28e1a6dd2SChris Zankel# This file is subject to the terms and conditions of the GNU General Public 38e1a6dd2SChris Zankel# License. See the file "COPYING" in the main directory of this archive 48e1a6dd2SChris Zankel# for more details. 58e1a6dd2SChris Zankel# 68e1a6dd2SChris Zankel# Copyright (C) 2001 - 2005 Tensilica Inc. 78e1a6dd2SChris Zankel# 88e1a6dd2SChris Zankel# This file is included by the global makefile so that you can add your own 98e1a6dd2SChris Zankel# architecture-specific flags and dependencies. Remember to do have actions 108e1a6dd2SChris Zankel# for "archclean" and "archdep" for cleaning up and making dependencies for 118e1a6dd2SChris Zankel# this architecture 128e1a6dd2SChris Zankel 138e1a6dd2SChris Zankel# Core configuration. 14173d6681SChris Zankel# (Use VAR=<xtensa_config> to use another default compiler.) 158e1a6dd2SChris Zankel 16173d6681SChris Zankelvariant-$(CONFIG_XTENSA_VARIANT_FSF) := fsf 170025427eSChris Zankelvariant-$(CONFIG_XTENSA_VARIANT_DC232B) := dc232b 18173d6681SChris Zankelvariant-$(CONFIG_XTENSA_VARIANT_LINUX_CUSTOM) := custom 198e1a6dd2SChris Zankel 20173d6681SChris ZankelVARIANT = $(variant-y) 21173d6681SChris Zankelexport VARIANT 228e1a6dd2SChris Zankel 238e1a6dd2SChris Zankel# Platform configuration 248e1a6dd2SChris Zankel 258e1a6dd2SChris Zankelplatform-$(CONFIG_XTENSA_PLATFORM_XT2000) := xt2000 268e1a6dd2SChris Zankelplatform-$(CONFIG_XTENSA_PLATFORM_ISS) := iss 278e1a6dd2SChris Zankel 288e1a6dd2SChris ZankelPLATFORM = $(platform-y) 298e1a6dd2SChris Zankelexport PLATFORM 308e1a6dd2SChris Zankel 31b2444d34SChris Zankel# temporarily until string.h is fixed 32a0f97e06SSam RavnborgKBUILD_CFLAGS += -ffreestanding 33b2444d34SChris Zankel 34a0f97e06SSam RavnborgKBUILD_CFLAGS += -pipe -mlongcalls 358e1a6dd2SChris Zankel 36*367b8112SChris Zankelvardirs := $(patsubst %,arch/xtensa/variants/%/,$(variant-y)) 37*367b8112SChris Zankelplfdirs := $(patsubst %,arch/xtensa/platforms/%/,$(platform-y)) 38*367b8112SChris Zankel 39*367b8112SChris Zankelifeq ($(KBUILD_SRC),) 40*367b8112SChris ZankelKBUILD_CPPFLAGS += $(patsubst %,-I%include,$(vardirs) $(plfdirs)) 41*367b8112SChris Zankelelse 42*367b8112SChris ZankelKBUILD_CPPFLAGS += $(patsubst %,-I$(srctree)/%include,$(vardirs) $(plfdirs)) 43*367b8112SChris Zankelendif 44*367b8112SChris Zankel 45e7d163f7SChris ZankelKBUILD_DEFCONFIG := iss_defconfig 468e1a6dd2SChris Zankel 478e1a6dd2SChris Zankel# ramdisk/initrd support 488e1a6dd2SChris Zankel# You need a compressed ramdisk image, named ramdisk.gz in 498e1a6dd2SChris Zankel# arch/xtensa/boot/ramdisk 508e1a6dd2SChris Zankel 518e1a6dd2SChris Zankelcore-$(CONFIG_EMBEDDED_RAMDISK) += arch/xtensa/boot/ramdisk/ 528e1a6dd2SChris Zankel 538e1a6dd2SChris Zankel# Test for cross compiling 548e1a6dd2SChris Zankel 55173d6681SChris Zankelifneq ($(VARIANT),) 568e1a6dd2SChris Zankel COMPILE_ARCH = $(shell uname -m) 578e1a6dd2SChris Zankel 588e1a6dd2SChris Zankel ifneq ($(COMPILE_ARCH), xtensa) 598e1a6dd2SChris Zankel ifndef CROSS_COMPILE 60173d6681SChris Zankel CROSS_COMPILE = xtensa_$(VARIANT)- 618e1a6dd2SChris Zankel endif 628e1a6dd2SChris Zankel endif 638e1a6dd2SChris Zankelendif 648e1a6dd2SChris Zankel 658e1a6dd2SChris Zankel# 668e1a6dd2SChris Zankel 67a0f97e06SSam RavnborgLIBGCC := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name) 688e1a6dd2SChris Zankel 698e1a6dd2SChris Zankelhead-y := arch/xtensa/kernel/head.o 70e7d163f7SChris Zankelcore-y += arch/xtensa/kernel/ arch/xtensa/mm/ 71e7d163f7SChris Zankelifneq ($(PLATFORM),) 72b26d0ab0SChris Zankelcore-y += arch/xtensa/platforms/$(PLATFORM)/ 73e7d163f7SChris Zankelendif 748e1a6dd2SChris Zankellibs-y += arch/xtensa/lib/ $(LIBGCC) 758e1a6dd2SChris Zankel 768e1a6dd2SChris Zankelboot := arch/xtensa/boot 778e1a6dd2SChris Zankel 788e1a6dd2SChris Zankel 798e1a6dd2SChris Zankelall: zImage 808e1a6dd2SChris Zankel 818e1a6dd2SChris ZankelbzImage : zImage 828e1a6dd2SChris Zankel 838e1a6dd2SChris ZankelzImage zImage.initrd: vmlinux 848e1a6dd2SChris Zankel $(Q)$(MAKE) $(build)=$(boot) $@ 858e1a6dd2SChris Zankel 868e1a6dd2SChris Zankeldefine archhelp 878e1a6dd2SChris Zankel @echo '* zImage - Compressed kernel image (arch/xtensa/boot/images/zImage.*)' 888e1a6dd2SChris Zankelendef 898e1a6dd2SChris Zankel 90