1*4882a593SmuzhiyunPLATFORMS = 2*4882a593Smuzhiyun 3*4882a593SmuzhiyunKBUILD_TOP := $(PWD) 4*4882a593Smuzhiyuninclude $(KBUILD_TOP)/platforms/$(PLATFORMS).cfg 5*4882a593Smuzhiyuninclude $(KBUILD_TOP)/platforms/platform-config.mak 6*4882a593Smuzhiyun 7*4882a593SmuzhiyunPWD := $(shell pwd) 8*4882a593Smuzhiyun 9*4882a593Smuzhiyunifeq ($(KERNELRELEASE),) 10*4882a593Smuzhiyun# current directory is driver 11*4882a593SmuzhiyunCFGDIR = $(PWD)/../../../../config 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun-include $(CFGDIR)/build_config.cfg 14*4882a593Smuzhiyun-include $(CFGDIR)/rules.make 15*4882a593Smuzhiyun 16*4882a593Smuzhiyunendif 17*4882a593Smuzhiyun 18*4882a593SmuzhiyunKMODULE_NAME=ssv6051 19*4882a593SmuzhiyunEXTRA_CFLAGS := -I$(KBUILD_TOP) -I$(KBUILD_TOP)/include 20*4882a593Smuzhiyun 21*4882a593SmuzhiyunDEF_PARSER_H = $(KBUILD_TOP)/include/ssv_conf_parser.h 22*4882a593Smuzhiyun$(shell env ccflags="$(ccflags-y)" $(KBUILD_TOP)/parser-conf.sh $(DEF_PARSER_H)) 23*4882a593Smuzhiyun 24*4882a593SmuzhiyunKERN_SRCS := ssvdevice/ssvdevice.c 25*4882a593SmuzhiyunKERN_SRCS += ssvdevice/ssv_cmd.c 26*4882a593Smuzhiyun 27*4882a593SmuzhiyunKERN_SRCS += hci/ssv_hci.c 28*4882a593Smuzhiyun 29*4882a593SmuzhiyunKERN_SRCS += smac/init.c 30*4882a593SmuzhiyunKERN_SRCS += smac/dev.c 31*4882a593SmuzhiyunKERN_SRCS += smac/ssv_rc.c 32*4882a593SmuzhiyunKERN_SRCS += smac/ssv_ht_rc.c 33*4882a593SmuzhiyunKERN_SRCS += smac/ap.c 34*4882a593SmuzhiyunKERN_SRCS += smac/ampdu.c 35*4882a593SmuzhiyunKERN_SRCS += smac/ssv6xxx_debugfs.c 36*4882a593SmuzhiyunKERN_SRCS += smac/sec_ccmp.c 37*4882a593SmuzhiyunKERN_SRCS += smac/sec_tkip.c 38*4882a593SmuzhiyunKERN_SRCS += smac/sec_wep.c 39*4882a593SmuzhiyunKERN_SRCS += smac/wapi_sms4.c 40*4882a593SmuzhiyunKERN_SRCS += smac/sec_wpi.c 41*4882a593SmuzhiyunKERN_SRCS += smac/efuse.c 42*4882a593SmuzhiyunKERN_SRCS += smac/ssv_pm.c 43*4882a593SmuzhiyunKERN_SRCS += smac/sar.c 44*4882a593Smuzhiyun 45*4882a593Smuzhiyunifeq ($(findstring -DCONFIG_SSV_SMARTLINK, $(ccflags-y)), -DCONFIG_SSV_SMARTLINK) 46*4882a593SmuzhiyunKERN_SRCS += smac/smartlink.c 47*4882a593Smuzhiyunendif 48*4882a593Smuzhiyun 49*4882a593SmuzhiyunKERN_SRCS += hwif/sdio/sdio.c 50*4882a593Smuzhiyun#KERNEL_MODULES += crypto 51*4882a593Smuzhiyun 52*4882a593Smuzhiyunifeq ($(findstring -DCONFIG_SSV_SUPPORT_AES_ASM, $(ccflags-y)), -DCONFIG_SSV_SUPPORT_AES_ASM) 53*4882a593SmuzhiyunKERN_SRCS += crypto/aes_glue.c 54*4882a593SmuzhiyunKERN_SRCS += crypto/sha1_glue.c 55*4882a593SmuzhiyunKERN_SRCS_S := crypto/aes-armv4.S 56*4882a593SmuzhiyunKERN_SRCS_S += crypto/sha1-armv4-large.S 57*4882a593Smuzhiyunendif 58*4882a593Smuzhiyun 59*4882a593Smuzhiyun 60*4882a593SmuzhiyunKERN_SRCS += platforms/$(PLATFORMS)-generic-wlan.c 61*4882a593Smuzhiyun 62*4882a593Smuzhiyun$(KMODULE_NAME)-y += $(KERN_SRCS_S:.S=.o) 63*4882a593Smuzhiyun$(KMODULE_NAME)-y += $(KERN_SRCS:.c=.o) 64*4882a593Smuzhiyun 65*4882a593Smuzhiyunobj-$(CONFIG_SSV6200_CORE) += $(KMODULE_NAME).o 66*4882a593Smuzhiyun 67*4882a593Smuzhiyunall:module strip 68*4882a593Smuzhiyun 69*4882a593Smuzhiyunmodule: 70*4882a593Smuzhiyun make -C $(SSV_KERNEL_PATH) ARCH=$(SSV_ARCH) CROSS_COMPILE=$(SSV_CROSS) \ 71*4882a593Smuzhiyun EXTRA_CFLAGS="$(EXTRA_CFLAGS)" M=$(PWD) modules 72*4882a593Smuzhiyun 73*4882a593Smuzhiyuninstall: 74*4882a593Smuzhiyun install -p -m 644 $(KMODULE_NAME).ko $(KMODDESTDIR) 75*4882a593Smuzhiyun 76*4882a593Smuzhiyununinstall: 77*4882a593Smuzhiyun rm -f $(KMODDESTDIR)/$(KMODULE_NAME).ko 78*4882a593Smuzhiyun 79*4882a593Smuzhiyunstrip: 80*4882a593Smuzhiyun #cp eagle.ko $(KO_NAME).ko 81*4882a593Smuzhiyun #cp $(KO_NAME).ko $(DEFAULT_MODULES_DIR) 82*4882a593Smuzhiyun #cp ssv6200.ko $(DEFAULT_MODULES_DIR) 83*4882a593Smuzhiyun cp platforms/$(PLATFORMS)-wifi.cfg image/$(KMODULE_NAME)-wifi.cfg 84*4882a593Smuzhiyun cp $(KMODULE_NAME).ko image/$(KMODULE_NAME).ko 85*4882a593Smuzhiyun cp platforms/cli image 86*4882a593Smuzhiyunifneq ($(SSV_STRIP),) 87*4882a593Smuzhiyun cp $(KMODULE_NAME).ko image/$(KMODULE_NAME)_ori.ko 88*4882a593Smuzhiyun $(SSV_STRIP) --strip-unneeded image/$(KMODULE_NAME).ko 89*4882a593Smuzhiyun #$(SSV_STRIP) --strip-debug image/$(KMODULE_NAME).ko 90*4882a593Smuzhiyunendif 91*4882a593Smuzhiyun 92*4882a593Smuzhiyunclean: 93*4882a593Smuzhiyun make -C $(SSV_KERNEL_PATH) ARCH=$(SSV_ARCH) CROSS_COMPILE=$(SSV_CROSS) \ 94*4882a593Smuzhiyun M=$(PWD) clean 95*4882a593Smuzhiyun 96