1# Helper makefile for building Broadcom wl device driver 2# This file maps wl driver feature flags (import) to WLFLAGS and WLFILES (export). 3# 4# Copyright 2007, Broadcom Corporation 5# All Rights Reserved. 6# 7# THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY 8# KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM 9# SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS 10# FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE. 11# $Id: wl.mk,v 1.1.1.1 2008/10/15 03:31:36 james26_jang Exp $ 12 13# os-independent config flag -> WLFLAGS and WLFILES mapping 14 15# debug/internal 16ifeq ($(DEBUG),1) 17 WLFLAGS += -DBCMDBG -DWLTEST 18else 19 # This is true for mfgtest builds. 20 ifeq ($(WLTEST),1) 21 WLFLAGS += -DWLTEST -DBCMNVRAMW 22 BCMNVRAMW=1 23 endif 24endif 25 26 27ifeq ($(BCMDBG_MEM),1) 28 WLFLAGS += -DBCMDBG_MEM 29endif 30 31ifeq ($(BCMDBG_PKT),1) 32 WLFLAGS += -DBCMDBG_PKT 33endif 34 35## wl driver common 36#w/wpa 37ifeq ($(WL),1) 38 WLFILES += wlc.c d11ucode.c wlc_phy.c wlc_rate.c wlc_security.c 39 WLFILES += wlc_key.c wlc_event.c wlc_scb.c wlc_rate_sel.c wlc_channel.c 40 WLFILES += wlc_bsscfg.c mimophytbls.c lpphytbls.c wlc_scan.c 41 ifneq ($(BCMROMOFFLOAD),1) 42 WLFILES += bcmwpa.c rc4.c tkhash.c tkmic.c wep.c 43 endif 44endif 45 46## wl OSL 47ifeq ($(WLVX),1) 48 WLFILES += wl_vx.c 49 WLFILES += bcmstdlib.c 50 WLFLAGS += -DWSEC_TXC_ENABLED 51endif 52 53ifeq ($(WLBSD),1) 54 WLFILES += wl_bsd.c 55endif 56 57ifeq ($(WLLX),1) 58 WLFILES += wl_linux.c 59endif 60 61ifeq ($(WLLXIW),1) 62 WLFILES += wl_iw.c 63endif 64 65ifeq ($(WLNDIS),1) 66 WLFILES += wl_ndis.c 67 WLFILES += wl_ndconfig.c 68 WLFILES += bcmstdlib.c 69 WLFILES += bcmwifi.c 70endif 71 72ifeq ($(WLCFE),1) 73 WLFILES += wl_cfe.c 74endif 75 76ifeq ($(WLRTE),1) 77 WLFILES += wl_rte.c 78endif 79 80 81## wl special 82# oids 83 84#ifdef BINOSL 85 ifeq ($(BINOSL),1) 86 WLFLAGS += -DBINOSL 87 endif 88#endif 89 90## wl features 91# ap 92ifeq ($(AP),1) 93 WLFILES += wlc_ap.c 94 WLFILES += wlc_apps.c 95 WLFILES += wlc_apcs.c 96 WLFLAGS += -DAP 97 WLFLAGS += -DMBSS 98 WLFLAGS += -DWME_PER_AC_TX_PARAMS -DWME_PER_AC_TUNING 99endif 100 101# sta 102ifeq ($(STA),1) 103 WLFLAGS += -DSTA 104endif 105 106# apsta 107ifeq ($(APSTA),1) 108 WLFLAGS += -DAPSTA 109endif 110# apsta 111 112# wet 113ifeq ($(WET),1) 114 WLFLAGS += -DWET 115 WLFILES += wlc_wet.c 116endif 117 118# mac spoof 119ifeq ($(MAC_SPOOF),1) 120 WLFLAGS += -DMAC_SPOOF 121endif 122 123# IBSS Security Support 124ifeq ($(IBSS_WPA2_SUPPORT),1) 125 WLFLAGS += -DIBSS_PEER_GROUP_KEY 126 WLFLAGS += -DIBSS_WPA2_PSK 127 WLFLAGS += -DIBSS_PEER_DISCOVERY_EVENT 128endif 129 130# led 131ifeq ($(WLLED),1) 132 WLFLAGS += -DWLLED 133 WLFILES += wlc_led.c 134endif 135 136# WME 137ifeq ($(WME),1) 138 WLFLAGS += -DWME 139endif 140 141# WLBA 142ifeq ($(WLBA),1) 143 WLFLAGS += -DWLBA 144 WLFILES += wlc_ba.c 145endif 146 147# WLPIO 148ifeq ($(WLPIO),1) 149 WLFLAGS += -DWLPIO 150 WLFILES += wlc_pio.c 151endif 152 153# CRAM 154ifeq ($(CRAM),1) 155 WLFLAGS += -DCRAM 156 WLFILES += wlc_cram.c 157endif 158 159# 11H 160ifeq ($(WL11H),1) 161 WLFLAGS += -DWL11H 162endif 163 164# 11D 165ifeq ($(WL11D),1) 166 WLFLAGS += -DWL11D 167endif 168 169# DBAND 170ifeq ($(DBAND),1) 171 WLFLAGS += -DDBAND 172endif 173 174# WLRM 175ifeq ($(WLRM),1) 176 WLFLAGS += -DWLRM 177endif 178 179# WLCQ 180ifeq ($(WLCQ),1) 181 WLFLAGS += -DWLCQ 182endif 183 184# WLCNT 185ifeq ($(WLCNT),1) 186 WLFLAGS += -DWLCNT 187endif 188 189# WLCNTSCB 190ifeq ($(WLCNTSCB),1) 191 WLFLAGS += -DWLCNTSCB 192endif 193 194## wl security 195# in-driver supplicant 196ifeq ($(BCMSUP_PSK),1) 197 WLFLAGS += -DBCMSUP_PSK 198 WLFILES += wlc_sup.c 199 ifneq ($(BCMROMOFFLOAD),1) 200 WLFILES += aes.c aeskeywrap.c hmac.c prf.c sha1.c 201 ##NetBSD 2.0 has MD5 and AES built in 202 ifneq ($(OSLBSD),1) 203 WLFILES += md5.c rijndael-alg-fst.c 204 endif 205 endif 206 WLFILES += passhash.c 207endif 208 209# bcmccx 210 211# BCMWPA2 212ifeq ($(BCMWPA2),1) 213 WLFLAGS += -DBCMWPA2 214endif 215 216# Soft AES CCMP 217ifeq ($(BCMCCMP),1) 218 WLFLAGS += -DBCMCCMP 219 ifneq ($(BCMROMOFFLOAD),1) 220 WLFILES += aes.c 221 ##BSD has AES built in 222 ifneq ($(BSD),1) 223 WLFILES +=rijndael-alg-fst.c 224 endif 225 endif 226endif 227 228# FIPS 229ifeq ($(WLFIPS),1) 230 WLFLAGS += -DWLFIPS 231 WLFILES += wl_ndfips.c 232 ifneq ($(BCMROMOFFLOAD),1) 233 WLFILES += aes.c 234 endif 235endif 236 237# BCMDMA64 238ifeq ($(BCMDMA64),1) 239 WLFLAGS += -DBCMDMA64 240endif 241 242## wl over jtag 243#ifdef BCMJTAG 244 ifeq ($(BCMJTAG),1) 245 WLFLAGS += -DBCMJTAG -DBCMSLTGT 246 WLFILES += bcmjtag.c bcmjtag_linux.c ejtag.c jtagm.c 247 endif 248#endif 249 250ifeq ($(WLAMSDU),1) 251 WLFLAGS += -DWLAMSDU 252 WLFILES += wlc_amsdu.c 253endif 254 255ifeq ($(WLAMSDU_SWDEAGG),1) 256 WLFLAGS += -DWLAMSDU_SWDEAGG 257endif 258 259ifeq ($(WLAMPDU),1) 260 WLFLAGS += -DWLAMPDU 261 WLFILES += wlc_ampdu.c 262endif 263 264ifeq ($(WOWL),1) 265 WLFLAGS += -DWOWL 266 WLFILES += d11wakeucode.c wlc_wowl.c 267endif 268 269ifeq ($(WLDPT),1) 270 WLFLAGS += -DWLDPT 271 WLFILES += wlc_dpt.c 272endif 273 274 275## --- which buses 276 277# silicon backplane 278 279ifeq ($(BCMSBBUS),1) 280 WLFLAGS += -DBCMBUSTYPE=SB_BUS 281endif 282 283 284# sdio 285 286 287# AP with SDSTD 288ifeq ($(WLAPSDSTD),1) 289 WLFILES += sbutils.c nvramstubs.c bcmsrom.c 290endif 291 292## --- basic shared files 293 294ifeq ($(HNDDMA),1) 295 WLFILES += hnddma.c 296endif 297 298ifeq ($(BCMUTILS),1) 299 WLFILES += bcmutils.c 300endif 301 302ifeq ($(BCMSROM),1) 303 WLFILES += bcmsrom.c bcmotp.c 304endif 305 306ifeq ($(SBUTILS),1) 307 WLFILES += sbutils.c hndpmu.c 308endif 309 310ifeq ($(SBMIPS),1) 311 WLFILES += hndmips.c hndchipc.c 312endif 313 314ifeq ($(SBSDRAM),1) 315 WLFILES += sbsdram.c 316endif 317 318ifeq ($(SBPCI),1) 319 WLFILES += hndpci.c 320endif 321 322ifeq ($(SFLASH),1) 323 WLFILES += sflash.c 324endif 325 326ifeq ($(FLASHUTL),1) 327 WLFILES += flashutl.c 328endif 329 330 331## --- shared OSL 332# linux osl 333ifeq ($(OSLLX),1) 334 WLFILES += linux_osl.c 335endif 336 337ifeq ($(OSLLXPCI),1) 338 WLFILES += linux_pci.c 339endif 340 341# vx osl 342ifeq ($(OSLVX),1) 343 WLFILES += vx_osl.c 344 WLFILES += bcmallocache.c 345endif 346 347# bsd osl 348ifeq ($(OSLBSD),1) 349 WLFILES += bsd_osl.c nvramstubs.c 350endif 351 352ifeq ($(OSLCFE),1) 353 WLFILES += cfe_osl.c 354endif 355 356ifeq ($(OSLRTE),1) 357 WLFILES += hndrte_osl.c 358endif 359 360ifeq ($(OSLNDIS),1) 361 WLFILES += ndshared.c ndis_osl.c 362endif 363 364ifeq ($(CONFIG_USBRNDIS_RETAIL),1) 365 WLFLAGS += -DCONFIG_USBRNDIS_RETAIL 366 WLFILES += wl_ndconfig.c 367 WLFILES += bcmwifi.c 368endif 369 370ifeq ($(NVRAM),1) 371 WLFILES += nvram.c 372endif 373 374ifeq ($(NVRAMVX),1) 375 WLFILES += nvram_rw.c 376endif 377 378ifeq ($(BCMNVRAMR),1) 379 WLFILES += nvram_ro.c sflash.c bcmotp.c 380 WLFLAGS += -DBCMNVRAMR 381else 382 ifeq ($(BCMNVRAMW),1) 383 WLFILES += bcmotp.c 384 endif 385endif 386 387## --- DSLCPE 388ifeq ($(DSLCPE),1) 389 WLFILES += wl_linux_dslcpe.c 390 WLFLAGS += -DDSLCPE 391 WLFLAGS += -DDSLCPE_DELAY 392endif 393 394ifeq ($(WLDIAG),1) 395 WLFLAGS += -DWLDIAG 396 WLFILES += wlc_diag.c 397endif 398 399ifeq ($(WLTIMER),1) 400 WLFLAGS += -DWLTIMER 401endif 402 403ifneq ($(BCMDBG),1) 404 ifeq ($(WLTINYDUMP),1) 405 WLFLAGS += -DWLTINYDUMP 406 endif 407endif 408 409ifeq ($(BCMQT),1) 410 # Set flag to indicate emulated chip 411 WLFLAGS += -DBCMSLTGT -DBCMQT 412 ifeq ($(WLRTE),1) 413 # Use of RTE implies embedded (CPU emulated) 414 WLFLAGS += -DBCMQT_CPU 415 endif 416endif 417 418ifeq ($(BCM4312),1) 419 WLFLAGS += -DBCM4312 420endif 421 422ifeq ($(WLPFN),1) 423 WLFLAGS += -DWLPFN 424 WLFILES += wl_pfn.c 425 ifeq ($(WLPFN_AUTO_CONNECT),1) 426 WLFLAGS += -DWLPFN_AUTO_CONNECT 427 endif 428endif 429 430ifeq ($(TOE),1) 431 WLFLAGS += -DTOE 432 WLFILES += wl_toe.c 433endif 434 435ifeq ($(ARPOE),1) 436 WLFLAGS += -DARPOE 437 WLFILES += wl_arpoe.c 438endif 439 440#wlinfo: 441# @echo "WLFLAGS=\"$(WLFLAGS)\"" 442# @echo "WLFILES=\"$(WLFILES)\"" 443