• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/net/wl/
1#
2# Generic portion of the Broadcom wl driver makefile
3#
4# input: O_TARGET, CONFIG_WL_CONF and wl_suffix
5# output: obj-m, obj-y
6#
7# $Id: wl_generic.mk,v 1.10 2011-01-21 22:12:09 $
8#
9
10REBUILD_WL_MODULE=$(shell if [ -d "$(src)/$(SRCBASE_OFFSET)/wl/sys" -a "$(REUSE_PREBUILT_WL)" != "1" ]; then echo 1; else echo 0; fi)
11
12# If source directory (src/wl/sys) exists and REUSE_PREBUILT_WL is undefined, 
13# then build inside $(SRCBASE_OFFSET)/wl/sys, otherwise use pre-builts
14ifeq ($(REBUILD_WL_MODULE),1)
15
16    # Get the source files and flags from the specified config file
17    # (Remove config's string quotes before trying to use the file)
18    ifeq ($(CONFIG_WL_CONF),)
19         $(error var_vlist($(VLIST)) var_config_wl_use($(shell env|grep CONFIG_WL_USE)))
20         $(error CONFIG_WL_CONF is undefined)
21    endif
22    
23    WLCONFFILE := $(strip $(subst ",,$(CONFIG_WL_CONF))) 
24    WLCFGDIR   := $(src)/$(SRCBASE_OFFSET)/wl/config
25    
26    # define OS flag to pick up wl osl file from wl.mk
27    WLLX=1
28    ifdef CONFIG_PLC
29        PLC=1
30    endif
31    ifdef CONFIG_DPSTA
32        DPSTA=1
33    endif
34    include $(WLCFGDIR)/$(WLCONFFILE)
35    # Disable ROUTER_COMA in ARM router for now.
36ifeq ($(ARCH), arm)
37    ROUTER_COMA=0
38endif
39    include $(WLCFGDIR)/wl.mk
40
41    ifeq ($(WLCLMAPI),1)
42        WLAN_ComponentsInUse := bcmwifi clm ppr olpc
43        include $(src)/$(SRCBASE_OFFSET)/makefiles/WLAN_Common.mk
44    endif
45    
46    ifeq ($(WLFILES_SRC),)
47         $(error WLFILES_SRC is undefined in $(WLCFGDIR)/$(WLCONFFILE))
48    endif
49    
50    ifeq ($(WLCLMAPI),1)
51    CLM_TYPE ?= router
52    $(call WLAN_GenClmCompilerRule,$(src)/$(SRCBASE_OFFSET)/wl/clm/src,$(src)/$(SRCBASE_OFFSET))
53    endif
54    
55    # need -I. to pick up wlconf.h in build directory
56   
57    ifeq ($(CONFIG_WL_ALL_PASSIVE_ON),y)
58    EXTRA_CFLAGS    += -DWL_ALL_PASSIVE_ON -DWL_ALL_PASSIVE
59    else
60    ifeq ($(CONFIG_WL_ALL_PASSIVE_RUNTIME),y)
61    EXTRA_CFLAGS    += -DWL_ALL_PASSIVE
62    endif
63    endif
64    ifeq ($(CONFIG_CACHE_L310),y)
65    EXTRA_CFLAGS    += -DWL_PL310_WAR
66    endif
67    EXTRA_CFLAGS += -DDMA $(WLFLAGS) -I$(src) -I$(src)/.. -I$(src)/$(SRCBASE_OFFSET)/wl/linux \
68		    -I$(src)/$(SRCBASE_OFFSET)/wl/sys $(WLAN_ComponentIncPath) -Werror
69
70    ifneq ("$(CONFIG_CC_OPTIMIZE_FOR_SIZE)","y")
71         EXTRA_CFLAGS += -finline-limit=2048
72    endif
73    
74    # include path for dpsta.h
75    EXTRA_CFLAGS += -I$(src)/$(SRCBASE_OFFSET)/router/dpsta
76
77    # Build the phy source files iff -DPHY_HAL is present.
78    ifneq ($(findstring PHY_HAL,$(WLFLAGS)),)
79        EXTRA_CFLAGS += -I$(src)/$(SRCBASE_OFFSET)/wl/phy
80    else
81	WLFILES_SRC := $(filter-out src/wl/phy/%,$(WLFILES_SRC))
82    endif
83
84    # The paths in WLFILES_SRC need a bit of adjustment.
85    WL_OBJS := $(sort $(patsubst %.c,%.o,$(addprefix $(SRCBASE_OFFSET)/,$(patsubst src/%,%,$(WLFILES_SRC)))))
86
87    # wl-objs is for linking to wl.o
88    $(TARGET)-objs := $(WLCONF_O) $(WL_OBJS)
89    obj-$(CONFIG_WL) := $(TARGET).o
90
91else # SRCBASE/wl/sys doesn't exist
92
93    # Otherwise, assume prebuilt object module(s) in src/wl/linux directory
94    prebuilt := wl_$(wl_suffix).o
95    $(TARGET)-objs := $(SRCBASE_OFFSET)/wl/linux/$(prebuilt)
96    obj-$(CONFIG_WL) := $(TARGET).o
97
98    ifeq ("$(CONFIG_WL_USBAP)","y")
99        wl_high-objs := $(SRCBASE_OFFSET)/wl/linux/wl_high.o
100        obj-m += wl_high.o
101    endif
102endif
103
104
105clean-files += $(SRCBASE_OFFSET)/wl/sys/*.o $(SRCBASE_OFFSET)/wl/phy/*.o $(SRCBASE_OFFSET)/wl/ppr/src/*.o $(SRCBASE_OFFSET)/wl/sys/.*.*.cmd $(SRCBASE_OFFSET)/wl/phy/.*.*.cmd $(SRCBASE_OFFSET)/bcmcrypto/.*.*.cmd $(SRCBASE_OFFSET)/wl/clm/src/*.o $(SRCBASE_OFFSET)/wl/clm/src/.*.*.cmd $(SRCBASE_OFFSET)/shared/bcmwifi/src/.*.*.cmd $(SRCBASE_OFFSET)/shared/bcmwifi/src/.*.*.cmd $(WLCONF_H) $(WLCONF_O)
106