# Support ATE function HAS_ATE=n # Support 28xx QA ATE function HAS_QA_SUPPORT=n # Support Wpa_Supplicant HAS_WPA_SUPPLICANT=y # Support Native WpaSupplicant for Network Maganger HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y #Support Net interface block while Tx-Sw queue full HAS_BLOCK_NET_IF=n #Support DFS function HAS_DFS_SUPPORT=n #Support Carrier-Sense function HAS_CS_SUPPORT=n # Support for Multiple Cards HAS_MC_SUPPORT=n #Support for IEEE802.11e DLS HAS_QOS_DLS_SUPPORT=n #Support for EXT_CHANNEL HAS_EXT_BUILD_CHANNEL_LIST=n #Support for Net-SNMP HAS_SNMP_SUPPORT=n #Support features of Single SKU. HAS_SINGLE_SKU_SUPPORT=n #Support features of 802.11n HAS_DOT11_N_SUPPORT=y HAS_KTHREAD_SUPPORT=n #Support statistics count HAS_STATS_COUNT=y #Client support WDS function HAS_CLIENT_WDS_SUPPORT=n #Support for Bridge Fast Path & Bridge Fast Path function open to other module HAS_BGFP_SUPPORT=n HAS_BGFP_OPEN_SUPPORT=n ################################################# CC := $(CROSS_COMPILE)gcc LD := $(CROSS_COMPILE)ld WFLAGS := -DAGGREGATION_SUPPORT -DPIGGYBACK_SUPPORT -DWMM_SUPPORT -DLINUX -Wall -Wstrict-prototypes -Wno-trigraphs ifeq ($(HAS_KTHREAD_SUPPORT),y) WFLAGS += -DKTHREAD_SUPPORT endif ################################################# # config for STA mode ifeq ($(RT28xx_MODE),STA) WFLAGS += -DCONFIG_STA_SUPPORT -DDBG ifeq ($(HAS_WPA_SUPPLICANT),y) WFLAGS += -DWPA_SUPPLICANT_SUPPORT ifeq ($(HAS_NATIVE_WPA_SUPPLICANT_SUPPORT),y) WFLAGS += -DNATIVE_WPA_SUPPLICANT_SUPPORT endif endif ifeq ($(HAS_ATE),y) WFLAGS += -DRALINK_ATE ifeq ($(HAS_QA_SUPPORT),y) WFLAGS += -DRALINK_28xx_QA endif endif ifeq ($(HAS_SNMP_SUPPORT),y) WFLAGS += -DSNMP_SUPPORT endif ifeq ($(HAS_QOS_DLS_SUPPORT),y) WFLAGS += -DQOS_DLS_SUPPORT endif ifeq ($(HAS_DOT11_N_SUPPORT),y) WFLAGS += -DDOT11_N_SUPPORT endif ifeq ($(HAS_CS_SUPPORT),y) WFLAGS += -DCARRIER_DETECTION_SUPPORT endif ifeq ($(HAS_STATS_COUNT),y) WFLAGS += -DSTATS_COUNT_SUPPORT endif endif # endif of ifeq ($(RT28xx_MODE),STA) ################################################# ################################################# # # Common compiler flag # ifeq ($(HAS_EXT_BUILD_CHANNEL_LIST),y) WFLAGS += -DEXT_BUILD_CHANNEL_LIST endif ifeq ($(HAS_CLIENT_WDS_SUPPORT),y) WFLAGS += -DCLIENT_WDS endif ifeq ($(HAS_BGFP_SUPPORT),y) WFLAGS += -DBG_FT_SUPPORT endif ifeq ($(HAS_BGFP_OPEN_SUPPORT),y) WFLAGS += -DBG_FT_OPEN_SUPPORT endif ################################################# # ChipSet specific definitions. # ifeq ($(CHIPSET),2870) WFLAGS +=-DRTMP_MAC_USB -DRTMP_USB_SUPPORT -DRT2870 -DRTMP_TIMER_TASK_SUPPORT endif ################################################# ifeq ($(PLATFORM),5VT) #WFLAGS += -DCONFIG_5VT_ENHANCE endif ifeq ($(HAS_BLOCK_NET_IF),y) WFLAGS += -DBLOCK_NET_IF endif ifeq ($(HAS_DFS_SUPPORT),y) WFLAGS += -DDFS_SUPPORT endif ifeq ($(HAS_MC_SUPPORT),y) WFLAGS += -DMULTIPLE_CARD_SUPPORT endif ifeq ($(PLATFORM),IXP) WFLAGS += -DRT_BIG_ENDIAN endif ifeq ($(PLATFORM),IKANOS_V160) WFLAGS += -DRT_BIG_ENDIAN -DIKANOS_VX_1X0 endif ifeq ($(PLATFORM),IKANOS_V180) WFLAGS += -DRT_BIG_ENDIAN -DIKANOS_VX_1X0 endif ifeq ($(PLATFORM),INF_TWINPASS) WFLAGS += -DRT_BIG_ENDIAN -DINF_TWINPASS endif ifeq ($(PLATFORM),INF_DANUBE) ifneq (,$(findstring 2.4,$(LINUX_SRC))) # Linux 2.4 WFLAGS += -DINF_DANUBE -DRT_BIG_ENDIAN else # Linux 2.6 WFLAGS += -DRT_BIG_ENDIAN endif endif ifeq ($(PLATFORM),INF_AR9) WFLAGS += -DRT_BIG_ENDIAN -DINF_AR9 endif ifeq ($(PLATFORM),CAVM_OCTEON) WFLAGS += -DRT_BIG_ENDIAN endif ifeq ($(PLATFORM),BRCM_6358) WFLAGS += -DRT_BIG_ENDIAN endif ifeq ($(PLATFORM),INF_AMAZON_SE) WFLAGS += -DRT_BIG_ENDIAN -DINF_AMAZON_SE endif ifeq ($(PLATFORM),RALINK_3052) WFLAGS += -DINF_AMAZON_SE -DPLATFORM_RALINK_3052 endif ifeq ($(PLATFORM),ST) #WFLAGS += -DST WFLAGS += -DST endif #kernel build options for 2.4 # move to Makefile outside LINUX_SRC := /opt/star/kernel/linux-2.4.27-star ifeq ($(PLATFORM),RALINK_3052) CFLAGS := -D__KERNEL__ -I$(LINUX_SRC)/include/asm-mips/mach-generic -I$(LINUX_SRC)/include -I$(RT28xx_DIR)/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -G 0 -mno-abicalls -fno-pic -pipe -finline-limit=100000 -march=mips2 -mabi=32 -Wa,--trap -DLINUX -nostdinc -iwithprefix include $(WFLAGS) export CFLAGS endif ifeq ($(PLATFORM), RALINK_2880) CFLAGS := -D__KERNEL__ -I$(LINUX_SRC)/include -I$(RT28xx_DIR)/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -G 0 -mno-abicalls -fno-pic -pipe -finline-limit=100000 -march=mips2 -mabi=32 -Wa,--trap -DLINUX -nostdinc -iwithprefix include $(WFLAGS) export CFLAGS endif ifeq ($(PLATFORM),STAR) CFLAGS := -D__KERNEL__ -I$(LINUX_SRC)/include -I$(RT28xx_DIR)/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -Uarm -fno-common -pipe -mapcs-32 -D__LINUX_ARM_ARCH__=4 -march=armv4 -mshort-load-bytes -msoft-float -Uarm -DMODULE -DMODVERSIONS -include $(LINUX_SRC)/include/linux/modversions.h $(WFLAGS) export CFLAGS endif ifeq ($(PLATFORM),SIGMA) CFLAGS := -D__KERNEL__ -I$(RT28xx_DIR)/include -I$(LINUX_SRC)/include -I$(LINUX_SRC)/include/asm/gcc -I$(LINUX_SRC)/include/asm-mips/mach-tango2 -I$(LINUX_SRC)/include/asm-mips/mach-tango2 -DEM86XX_CHIP=EM86XX_CHIPID_TANGO2 -DEM86XX_REVISION=6 -I$(LINUX_SRC)/include/asm-mips/mach-generic -I$(RT2860_DIR)/include -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -ffreestanding -O2 -fomit-frame-pointer -G 0 -mno-abicalls -fno-pic -pipe -mabi=32 -march=mips32r2 -Wa,-32 -Wa,-march=mips32r2 -Wa,-mips32r2 -Wa,--trap -DMODULE $(WFLAGS) -DSIGMA863X_PLATFORM export CFLAGS endif ifeq ($(PLATFORM),SIGMA_8622) CFLAGS := -D__KERNEL__ -I$(CROSS_COMPILE_INCLUDE)/include -I$(LINUX_SRC)/include -I$(RT28xx_DIR)/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fno-common -pipe -fno-builtin -D__linux__ -DNO_MM -mapcs-32 -march=armv4 -mtune=arm7tdmi -msoft-float -DMODULE -mshort-load-bytes -nostdinc -iwithprefix -DMODULE $(WFLAGS) export CFLAGS endif ifeq ($(PLATFORM),5VT) CFLAGS := -D__KERNEL__ -I$(LINUX_SRC)/include -I$(RT28xx_DIR)/include -mlittle-endian -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -O3 -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-omit-frame-pointer -mapcs -mno-sched-prolog -mabi=apcs-gnu -mno-thumb-interwork -D__LINUX_ARM_ARCH__=5 -march=armv5te -mtune=arm926ej-s --param max-inline-insns-single=40000 -Uarm -Wdeclaration-after-statement -Wno-pointer-sign -DMODULE $(WFLAGS) export CFLAGS endif ifeq ($(PLATFORM),IKANOS_V160) CFLAGS := -D__KERNEL__ -I$(LINUX_SRC)/include -I$(LINUX_SRC)/include/asm/gcc -I$(LINUX_SRC)/include/asm-mips/mach-tango2 -I$(LINUX_SRC)/include/asm-mips/mach-tango2 -I$(LINUX_SRC)/include/asm-mips/mach-generic -I$(RT28xx_DIR)/include -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -ffreestanding -O2 -fomit-frame-pointer -G 0 -mno-abicalls -fno-pic -pipe -march=lx4189 -Wa, -DMODULE $(WFLAGS) export CFLAGS endif ifeq ($(PLATFORM),IKANOS_V180) CFLAGS := -D__KERNEL__ -I$(LINUX_SRC)/include -I$(LINUX_SRC)/include/asm/gcc -I$(LINUX_SRC)/include/asm-mips/mach-tango2 -I$(LINUX_SRC)/include/asm-mips/mach-tango2 -I$(LINUX_SRC)/include/asm-mips/mach-generic -I$(RT28xx_DIR)/include -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -ffreestanding -O2 -fomit-frame-pointer -G 0 -mno-abicalls -fno-pic -pipe -mips32r2 -Wa, -DMODULE $(WFLAGS) export CFLAGS endif ifeq ($(PLATFORM),INF_TWINPASS) CFLAGS := -D__KERNEL__ -DMODULE -I$(LINUX_SRC)/include -I$(RT28xx_DIR)/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -G 0 -mno-abicalls -fno-pic -march=4kc -mips32 -Wa,--trap -pipe -mlong-calls $(WFLAGS) export CFLAGS endif ifeq ($(PLATFORM),INF_DANUBE) CFLAGS := -I$(RT28xx_DIR)/include $(WFLAGS) -Wundef -fno-strict-aliasing -fno-common -ffreestanding -Os -fomit-frame-pointer -G 0 -mno-abicalls -fno-pic -pipe -msoft-float -mabi=32 -march=mips32 -Wa,-32 -Wa,-march=mips32 -Wa,-mips32 -Wa,--trap -I$(LINUX_SRC)/include/asm-mips/mach-generic export CFLAGS endif ifeq ($(PLATFORM),INF_AR9) CFLAGS := -I$(RT28xx_DIR)/include $(WFLAGS) -Wundef -fno-strict-aliasing -fno-common -fno-pic -ffreestanding -Os -fomit-frame-pointer -G 0 -mno-abicalls -fno-pic -pipe -msoft-float -mabi=32 -mlong-calls -march=mips32r2 -mtune=34kc -march=mips32r2 -Wa,-32 -Wa,-march=mips32r2 -Wa,-mips32r2 -Wa,--trap -I$(LINUX_SRC)/include/asm-mips/mach-generic export CFLAGS endif ifeq ($(PLATFORM),BRCM_6358) CFLAGS := $(WFLAGS) -I$(RT28xx_DIR)/include -nostdinc -iwithprefix include -D__KERNEL__ -Wall -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -I $(LINUX_SRC)/include/asm/gcc -G 0 -mno-abicalls -fno-pic -pipe -finline-limit=100000 -mabi=32 -march=mips32 -Wa,-32 -Wa,-march=mips32 -Wa,-mips32 -Wa,--trap -I$(LINUX_SRC)/include/asm-mips/mach-bcm963xx -I$(LINUX_SRC)/include/asm-mips/mach-generic -Os -fomit-frame-pointer -Wdeclaration-after-statement -DMODULE -mlong-calls export CFLAGS endif ifeq ($(PLATFORM),INF_AMAZON_SE) CFLAGS := -D__KERNEL__ -DMODULE=1 -I$(LINUX_SRC)/include -I$(RT28xx_DIR)/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -DCONFIG_IFX_ALG_QOS -DCONFIG_WAN_VLAN_SUPPORT -fomit-frame-pointer -DIFX_PPPOE_FRAME -G 0 -fno-pic -mno-abicalls -mlong-calls -pipe -finline-limit=100000 -mabi=32 -march=mips32 -Wa,-32 -Wa,-march=mips32 -Wa,-mips32 -Wa,--trap -nostdinc -iwithprefix include $(WFLAGS) export CFLAGS endif ifeq ($(PLATFORM),ST) CFLAGS := -D__KERNEL__ -I$(LINUX_SRC)/include -I$(RT28xx_DIR)/include -Wall -O2 -Wundef -Wstrict-prototypes -Wno-trigraphs -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-aliasing -fno-common -fomit-frame-pointer -ffreestanding -o $(WFLAGS) export CFLAGS endif ifeq ($(PLATFORM),PC) ifneq (,$(findstring 2.4,$(LINUX_SRC))) # Linux 2.4 CFLAGS := -D__KERNEL__ -I$(LINUX_SRC)/include -I$(RT28xx_DIR)/include -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include $(LINUX_SRC)/include/linux/modversions.h $(WFLAGS) export CFLAGS else # Linux 2.6 EXTRA_CFLAGS := $(WFLAGS) -I$(RT28xx_DIR)/include endif endif ifeq ($(PLATFORM),IXP) EXTRA_CFLAGS := -v $(WFLAGS) -I$(RT28xx_DIR)/include -mbig-endian endif ifeq ($(PLATFORM),SMDK) EXTRA_CFLAGS := $(WFLAGS) -I$(RT28xx_DIR)/include endif ifeq ($(PLATFORM),CAVM_OCTEON) EXTRA_CFLAGS := $(WFLAGS) -I$(RT28xx_DIR)/include \ -mabi=64 $(WFLAGS) export CFLAGS endif