Makefile.linux-gtr-2_6 (4600B)
1 # 2 # This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file. 3 # 4 # Copyright 2007-2019 Broadcom Inc. All rights reserved. 5 6 # User must select one platform from below.By default WR_LINUX is selected. . 7 ifeq (,$(BUILD_PLATFORM)) 8 BUILD_PLATFORM=WR_LINUX 9 endif 10 11 12 # Specify the KERNEL VERSION you want to use for building SDK. 13 ifeq (,$(KERN_VER)) 14 KERN_VER=2.6.32.9 15 endif 16 17 18 ifeq (,$(CROSS_COMPILE)) 19 CROSS_COMPILE := mips64-nlm-linux- 20 endif 21 22 XMC ?= /projects/ntsw-tools/toolchains/xlp316/sdk-base 23 KERNDIR ?= $(XMC)/linux 24 25 TOOLCHAINS_DIR=$(XMC)/toolchains_bin 26 TOOLCHAIN_EXEC_PREFIX=$(XMC)/toolchains_bin/mipscross/elf 27 TOOLCHAIN_BIN_DIR=$(TOOLCHAIN_EXEC_PREFIX)/bin 28 29 override PATH := $(TOOLCHAIN_EXEC_PREFIX)/bin:$(TOOLCHAINS_DIR)/mipscross/linux/bin:$(PATH) 30 export TOOLCHAIN_EXEC_PREFIX TOOLCHAIN_BIN_DIR 31 32 # Default Linux include directory 33 ifeq (,$(LINUX_INCLUDE)) 34 LINUX_INCLUDE := $(KERNDIR)/include 35 endif 36 37 CFGFLAGS += -DSYS_BE_PIO=1 -DSYS_BE_PACKET=0 -DSYS_BE_OTHER=1 38 ENDIAN = BE_HOST=1 39 CFGFLAGS += -D$(ENDIAN) 40 CFGFLAGS += -DBCM_PLATFORM_STRING=\"GTR_XLP316\" 41 CFGFLAGS += -DSAL_BDE_XLP 42 CFGFLAGS += -DSAL_BDE_32BIT_USER_64BIT_KERNEL 43 CFGFLAGS += -DSAL_BDE_USE_MMAP2 44 CFGFLAGS += -DSAL_BDE_DMA_MEM_DEFAULT=16 45 46 # Enable cached DMA memory by default 47 ifeq (,$(SAL_BDE_USE_CACHED_DMA_MEM)) 48 SAL_BDE_USE_CACHED_DMA_MEM = 1 49 endif 50 ifeq ($(SAL_BDE_USE_CACHED_DMA_MEM),1) 51 CFGFLAGS += -DSAL_BDE_CACHE_DMA_MEM 52 endif 53 54 # Extra variables. 55 EXTRA_CFLAGS = -D"KBUILD_STR(s)=\#s" $(basename_flags) $(modname_flags) 56 57 ARCH = mips 58 KBUILD_VERBOSE = 1 59 60 export ARCH KBUILD_VERBOSE 61 62 # From linux/arch/ppc/Makefile 63 comma = , 64 basetarget = $(basename $(notdir $@)) 65 modname = $(basetarget) 66 67 name-fix = $(subst $(comma),_,$(subst -,_,$1)) 68 basename_flags = -D"KBUILD_BASENAME=KBUILD_STR($(call name-fix,$(basetarget)))" 69 modname_flags = $(if $(filter 1,$(words $(modname))),\ 70 -D"KBUILD_MODNAME=KBUILD_STR($(call name-fix,$(modname)))") 71 72 73 CFLAGS += -mabi=32 74 #CFLAGS += -mabi=64 -DPTRS_ARE_64BITS -DLONGS_ARE_64BITS 75 76 MODULE_LDFLAGS += -m elf64btsmip 77 78 ifdef DPP_CHIPS 79 CFLAGS += -DDUNE_BCM -D__DUNE_LINUX_BCM_CPU_PCP_DMA__ 80 CFGFLAGS += -DSOC_CM_FUNCTION 81 endif 82 83 ifdef DFE_CHIPS 84 CFLAGS += -DDUNE_BCM 85 CFGFLAGS += -DSOC_CM_FUNCTION 86 endif 87 88 ifdef SAND_CHIPS 89 CFLAGS += -D__DUNE_GTR_BCM_CPU__ -D__DUNE_LINUX_BCM_CPU_PCIE__ 90 endif 91 92 ifdef SHADOW_PLX 93 CFLAGS += -DBCM_PLX9656_LOCAL_BUS -DBDE_LINUX_NON_INTERRUPTIBLE -DSHADOW_SVK 94 endif 95 96 #Is the XMC SDK VERSION >= 2.3 ? 97 ifneq (,$(findstring /sdk-base-2.3,$(XMC))) 98 LD_LIBRARY_PATH = $(XMC)/toolchains_bin/mipscross/elf/mips64-nlm-elf/lib 99 KFLAG_INCLD = $(XMC)/toolchains_bin/mipscross/elf/lib/gcc/mips64-nlm-elf/4.6.1/include 100 101 ifeq (,$(KFLAGS)) 102 KFLAGS := -march=xlp -mabi=64 -DABI_64 -msym32 -fno-pic -G 0 -mno-abicalls -mlong-calls -mplt -DSAL_BDE_XLP -DSAL_BDE_32BIT_USER_64BIT_KERNEL -DPTRS_ARE_64BITS -DLONGS_ARE_64BITS -D__KERNEL__ -DNLM_HAL_NETLBOOT -DNLM_HAL_LINUX_KERNEL -nostdinc -isystem $(KFLAG_INCLD) -include $(LINUX_INCLUDE)/linux/version.h -include $(LINUX_INCLUDE)/generated/autoconf.h -I$(LINUX_INCLUDE) -I$(LINUX_INCLUDE)/config -I$(KERNDIR)/arch/mips -I$(KERNDIR)/arch/mips/include -I$(KERNDIR)/arch/mips/include/asm/mach-netlogic -I$(KERNDIR)/arch/mips/include/asm/mach-generic -I$(KERNDIR)/include/asm-mips -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -msoft-float -pipe -funit-at-a-time -fomit-frame-pointer -Wdeclaration-after-statement -Wno-pointer-sign 103 endif 104 else 105 LD_LIBRARY_PATH = $(XMC)/toolchains_bin/mipscross/elf/i686-pc-linux-gnu/mips64-nlm-elf/lib 106 KFLAG_INCLD = $(XMC)/toolchains_bin/mipscross/elf/lib/gcc/mips64-nlm-elf/4.4.5/include 107 108 ifeq (,$(KFLAGS)) 109 KFLAGS := -march=xlp -mabi=64 -DABI_64 -msym32 -fno-pic -G 0 -mno-abicalls -mlong-calls -mplt -DSAL_BDE_XLP -DSAL_BDE_32BIT_USER_64BIT_KERNEL -DPTRS_ARE_64BITS -DLONGS_ARE_64BITS -D__KERNEL__ -Wp, -DNLM_HAL_NETLBOOT -DNLM_HAL_LINUX_KERNEL -nostdinc -isystem $(KFLAG_INCLD) -include $(LINUX_INCLUDE)/linux/version.h -include $(LINUX_INCLUDE)/linux/autoconf.h -I$(LINUX_INCLUDE) -I$(LINUX_INCLUDE)/config -I$(KERNDIR)/arch/mips -I$(KERNDIR)/arch/mips/include -I$(KERNDIR)/arch/mips/include/asm/mach-netlogic -I$(KERNDIR)/arch/mips/include/asm/mach-generic -I$(KERNDIR)/include/asm-mips -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -msoft-float -pipe -funit-at-a-time -fomit-frame-pointer -Wdeclaration-after-statement -Wno-pointer-sign 110 endif 111 endif 112 113 export LD_LIBRARY_PATH 114 115 ifneq ($(targetplat),user) 116 include ${SDK}/make/Makefile.linux-kernel-2_6 117 endif