4 KVER := $(shell uname -r)
5 MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/
7 ifeq ($(shell uname -r|cut -d. -f1,2), 2.6)
8 ###################### KERNEL 2.6 ################################
9 ifeq ($(NIC_SELECT),RTL8192CE)
11 EXTRA_CFLAGS = -DRTL8192CE
12 EXTRA_CFLAGS += -DEEPROM_OLD_FORMAT_SUPPORT=0 \
13 -DRTL8192SU_DISABLE_CCK_RATE=0 \
15 -DRTL92SE_FPGA_VERIFY=0 \
16 -DSIMULATE_ETHERNET=0 \
17 -DSUPERMAC_92D_ENABLE=0 \
18 -DEARLYMODE_ENABLE_FOR_92D=0 \
19 -DRTL8192S_DISABLE_FW_DM=0 \
20 -DMP_CCK_WORKAROUND=0 \
21 -DRTL8192SE_DISABLE_MGNT_QUEUE=0 \
22 -DRTL8190_Download_Firmware_From_Header=1 \
23 -DMUTUAL_AUTHENTICATION=1 \
30 -DENABLE_GPIO_RADIO_CTL \
36 -DUSE_FW_SOURCE_IMG_FILE \
37 -DEFUSE_REPG_WORKAROUND \
46 ifeq ($(NIC_SELECT),RTL8192SE)
48 EXTRA_CFLAGS = -DRTL8192SE
49 EXTRA_CFLAGS += -DEEPROM_OLD_FORMAT_SUPPORT=0 \
50 -DRTL92SE_FPGA_VERIFY=0 \
51 -DDEMO_BOARD_SUPPORT=1 \
52 -DRTL8192SU_DISABLE_CCK_RATE=0 \
53 -DRTL8192S_DISABLE_FW_DM=0 \
57 -DRTL8192S_PREPARE_FOR_NORMAL_RELEASE=1 \
61 -DENABLE_GPIO_RADIO_CTL \
62 -DRTL8190_Download_Firmware_From_Header=1 \
66 -DUSE_FW_SOURCE_IMG_FILE \
75 -DRTL8192S_WAPI_SUPPORT \
80 -DEFUSE_REPG_WORKAROUN \
85 #[1] CONFIG_MP is for MP test,
86 # you should close IPS/LPS/GPIO/ASPM
87 #[2] In order to support CRDA, RFKILL
88 # CONFIG_CFG_80211 need to be enabled at first.
89 #[3] In order to support CRDA,
90 # DOT11D need to be enabled at first.
91 #[4] CRDA and RFKILL can be enabled individually.
95 ifeq ($(NIC_SELECT),RTL8190P)
97 EXTRA_CFLAGS += -DRTL8190P \
98 -DUSE_FW_SOURCE_IMG_FILE \
99 -DEEPROM_OLD_FORMAT_SUPPORT=1 \
108 ifeq ($(NIC_SELECT),RTL8192E)
109 sub_folder = rtl8192e
110 EXTRA_CFLAGS+=-DRTL8192E \
111 -DEEPROM_OLD_FORMAT_SUPPORT=1 \
112 -DUSE_FW_SOURCE_IMG_FILE \
115 -DENABLE_GPIO_RADIO_CTL \
120 -DCONFIG_RTL8192_IO_MAP \
121 -DCONFIG_ASPM_OR_D3 \
126 ifeq ($(NIC_SELECT),RTL8191SE_MESH)
127 sub_folder = rtl8192s
128 EXTRA_CFLAGS += -DRTL8192SE \
129 -DEEPROM_OLD_FORMAT_SUPPORT=0 \
130 -DRTL92SE_FPGA_VERIFY=0 \
131 -DDEMO_BOARD_SUPPORT=1 \
132 -DRTL8192SU_DISABLE_CCK_RATE=0 \
133 -DRTL8192S_DISABLE_FW_DM=0 \
137 -DRTL8192S_PREPARE_FOR_NORMAL_RELEASE=1 \
139 -DRTL8190_Download_Firmware_From_Header=1 \
140 -DEFUSE_REPG_WORKAROUND \
143 -DENABLE_GPIO_RADIO_CTL \
146 -DCONFIG_ASPM_OR_D3 \
147 -DCUSTOMER_ID_INTEL_CMPC \
148 -DMESH_8192_SPECIFIED \
149 -D_RTL8192_EXT_PATCH_ \
151 -DTREE_BASED_ROUTING_ENABLE \
152 -DMESH_PATHSEL_DBG_LV=0 \
153 -DMESH_PATHSEL_DBG_SIMPLE=0 \
154 -DMESH_PATHSEL_DBG_TEST=0 \
155 -DBUILT_IN_MSHCLASS \
157 -DUSE_FW_SOURCE_IMG_FILE \
162 -DCOMPATIBLE_WITH_RALINK_MESH \
164 -DCONFIG_FW_SETCHAN \
165 -DRTL8192S_WAPI_SUPPORT \
167 -D_ENABLE_SW_BEACON \
168 -DEFUSE_REPG_WORKAROUND \
175 ifeq ($(NIC_SELECT),RTL8192CE_MESH)
176 sub_folder = rtl8192c
177 EXTRA_CFLAGS = -DRTL8192CE
178 EXTRA_CFLAGS += -DEEPROM_OLD_FORMAT_SUPPORT=0 \
179 -DRTL8192SU_DISABLE_CCK_RATE=0 \
181 -DRTL92SE_FPGA_VERIFY=0 \
182 -DSIMULATE_ETHERNET=0 \
183 -DSUPERMAC_92D_ENABLE=0 \
184 -DEARLYMODE_ENABLE_FOR_92D=0 \
185 -DRTL8192S_DISABLE_FW_DM=0 \
186 -DMP_CCK_WORKAROUND=0 \
187 -DRTL8192SE_DISABLE_MGNT_QUEUE=0 \
188 -DRTL8190_Download_Firmware_From_Header=1 \
189 -DMUTUAL_AUTHENTICATION=1 \
196 -DCONFIG_ASPM_OR_D3 \
197 -DENABLE_GPIO_RADIO_CTL \
200 -DEFUSE_REPG_WORKAROUND \
201 -DCUSTOMER_ID_INTEL_CMPC \
202 -DMESH_8192_SPECIFIED \
203 -D_RTL8192_EXT_PATCH_ \
205 -DTREE_BASED_ROUTING_ENABLE \
206 -DMESH_PATHSEL_DBG_LV=0 \
207 -DMESH_PATHSEL_DBG_SIMPLE=0 \
208 -DMESH_PATHSEL_DBG_TEST=0 \
209 -DBUILT_IN_MSHCLASS \
212 -D_ENABLE_SW_BEACON \
213 -DUSE_FW_SOURCE_IMG_FILE \
214 -DCOMPATIBLE_WITH_RALINK_MESH \
215 -DEFUSE_REPG_WORKAROUND \
223 #it will fail to compile in suse linux enterprise 10 sp2. This flag is to solve this problem.
224 ifeq ($(shell uname -r | cut -d. -f1,2,3,4), 2.6.16.60-0)
225 EXTRA_CFLAGS += -DOPENSUSE_SLED=1
227 EXTRA_CFLAGS += -DOPENSUSE_SLED=0
230 # Switch AP will fail in moblin2. This flag is to solve this issue.
231 ifeq ($(shell uname -r | cut -d. -f6 | cut -d- -f1), moblin2)
232 EXTRA_CFLAGS += -DFOR_MOBLIN
235 EXTRA_CFLAGS += -I$(TOPDIR)/drivers/net/wireless
236 EXTRA_CFLAGS += -std=gnu89
238 EXTRA_CFLAGS += -mhard-float -DCONFIG_FORCE_HARD_FLOAT=y
239 EXTRA_CFLAGS += -DTHOMAS_TURBO
240 #flag for single module compile
241 EXTRA_CFLAGS += -DBUILT_IN_RTLLIB
242 #EXTRA_CFLAGS += -DCONFIG_RTLWIFI_DEBUGFS
243 ifeq ($(NIC_SELECT),RTL8190P)
244 r8190_pci-objs := rtl_core.o \
254 rtl8192e/r8190P_hwimg.o \
255 rtl8192e/r8190P_rtl8256.o \
256 rtl8192e/r8192E_dev.o \
257 rtl8192e/r8192E_phy.o \
258 rtl8192e/r8192E_firmware.o \
259 rtl8192e/r8192E_cmdpkt.o \
260 ../../rtllib/rtllib_rx.o \
261 ../../rtllib/rtllib_softmac.o \
262 ../../rtllib/rtllib_tx.o \
263 ../../rtllib/rtllib_wx.o \
264 ../../rtllib/rtllib_module.o \
265 ../../rtllib/rtllib_softmac_wx.o \
266 ../../rtllib/rtl819x_HTProc.o \
267 ../../rtllib/rtl819x_TSProc.o \
268 ../../rtllib/rtl819x_BAProc.o \
269 ../../rtllib/dot11d.o \
270 ../../rtllib/rtllib_crypt.o \
271 ../../rtllib/rtllib_crypt_tkip.o \
272 ../../rtllib/rtllib_crypt_ccmp.o \
273 ../../rtllib/rtllib_crypt_wep.o
277 ifeq ($(NIC_SELECT),RTL8192E)
278 r8192e_pci-objs := rtl_core.o \
288 rtl8192e/r8192E_dev.o \
289 rtl8192e/r8192E_phy.o \
290 rtl8192e/r8192E_firmware.o \
291 rtl8192e/r8192E_cmdpkt.o \
292 rtl8192e/r8192E_hwimg.o \
293 rtl8192e/r8190P_rtl8256.o \
294 ../../rtllib/rtllib_rx.o \
295 ../../rtllib/rtllib_softmac.o \
296 ../../rtllib/rtllib_tx.o \
297 ../../rtllib/rtllib_wx.o \
298 ../../rtllib/rtllib_module.o \
299 ../../rtllib/rtllib_softmac_wx.o \
300 ../../rtllib/rtl819x_HTProc.o \
301 ../../rtllib/rtl819x_TSProc.o \
302 ../../rtllib/rtl819x_BAProc.o \
303 ../../rtllib/dot11d.o \
304 ../../rtllib/rtllib_crypt.o \
305 ../../rtllib/rtllib_crypt_tkip.o \
306 ../../rtllib/rtllib_crypt_ccmp.o \
307 ../../rtllib/rtllib_crypt_wep.o
308 obj-m := r8192e_pci.o
310 ifeq ($(NIC_SELECT),RTL8192SE)
311 r8192se_pci-objs := rtl_core.o \
323 rtl8192s/r8192S_dev.o \
324 rtl8192s/r8192S_Efuse.o \
325 rtl8192s/r8192S_phy.o \
326 rtl8192s/r8192S_firmware.o \
327 rtl8192s/r8192S_rtl6052.o \
328 rtl8192s/r8192S_hwimg.o \
329 rtl8192s/r8192S_led.o \
330 rtl8192s/r8192S_mp.o \
331 rtl8192s/r8192S_scan.o \
333 rtllib/rtllib_softmac.o \
336 rtllib/rtllib_module.o \
337 rtllib/rtllib_softmac_wx.o \
338 rtllib/rtl819x_HTProc.o \
339 rtllib/rtl819x_TSProc.o \
340 rtllib/rtl819x_BAProc.o \
342 rtllib/rtllib_crypt.o \
343 rtllib/rtllib_crypt_tkip.o \
344 rtllib/rtllib_crypt_ccmp.o \
345 rtllib/rtllib_crypt_wep.o \
347 rtllib/wapi_interface.o
348 # rtl8192e/r8190P_rtl8256.o
349 obj-m := r8192se_pci.o
352 ifeq ($(NIC_SELECT),RTL8192CE)
353 r8192ce_pci-objs := rtl_core.o \
362 rtl8192c/r8192C_dev.o \
363 rtl8192c/r8192C_Efuse.o \
364 rtl8192c/r8192C_phy.o \
365 rtl8192c/r8192C_firmware.o \
366 rtl8192c/r8192C_dm.o \
367 rtl8192c/r8192C_rtl6052.o \
368 rtl8192c/r8192C_hwimg.o \
369 rtl8192c/r8192C_led.o \
370 rtl8192c/r8192C_com.o \
371 ../../rtllib/rtllib_rx.o \
372 ../../rtllib/rtllib_softmac.o \
373 ../../rtllib/rtllib_tx.o \
374 ../../rtllib/rtllib_wx.o \
375 ../../rtllib/rtllib_module.o \
376 ../../rtllib/rtllib_softmac_wx.o \
377 ../../rtllib/rtl819x_HTProc.o \
378 ../../rtllib/rtl819x_TSProc.o \
379 ../../rtllib/rtl819x_BAProc.o \
380 ../../rtllib/dot11d.o \
381 ../../rtllib/rtllib_crypt.o \
382 ../../rtllib/rtllib_crypt_tkip.o \
383 ../../rtllib/rtllib_crypt_ccmp.o \
384 ../../rtllib/rtllib_crypt_wep.o \
386 ../../btlib/bt_aes.o \
387 ../../btlib/bt_rc4.o \
388 ../../btlib/bt_md5c.o \
389 ../../btlib/bt_kmsm_hmac.o \
390 ../../btlib/bt_kmsm_prf.o \
391 ../../btlib/bt_kmsm_eapolkey.o \
392 ../../btlib/bt_hci.o \
393 ../../btlib/bt_handlePacket.o \
394 ../../btlib/bt_wifi.o
395 obj-m := r8192ce_pci.o
398 ifeq ($(NIC_SELECT),RTL8191SE_MESH)
399 r8192se_pci_mesh-objs := rtl_core.o \
412 rtl8192s/r8192S_dev.o \
413 rtl8192s/r8192S_Efuse.o \
414 rtl8192s/r8192S_phy.o \
415 rtl8192s/r8192S_firmware.o \
416 rtl8192s/r8192S_rtl6052.o \
417 rtl8192s/r8192S_hwimg.o \
418 rtl8192s/r8192S_led.o \
419 rtl8192s/r8192S_mp.o \
420 rtl8192s/r8192S_scan.o \
421 ../../rtllib/rtllib_rx.o \
422 ../../rtllib/rtllib_softmac.o \
423 ../../rtllib/rtllib_tx.o \
424 ../../rtllib/rtllib_wx.o \
425 ../../rtllib/rtllib_module.o \
426 ../../rtllib/rtllib_softmac_wx.o \
427 ../../rtllib/rtl819x_HTProc.o \
428 ../../rtllib/rtl819x_TSProc.o \
429 ../../rtllib/rtl819x_BAProc.o \
430 ../../rtllib/dot11d.o \
431 ../../rtllib/rtllib_crypt.o \
432 ../../rtllib/rtllib_crypt_tkip.o \
433 ../../rtllib/rtllib_crypt_ccmp.o \
434 ../../rtllib/rtllib_crypt_wep.o \
435 ../../mshclass/msh_class.o \
436 ../../mshclass/mesh_8192_util.o \
437 ../../mshclass/rtl8192_mesh.o \
438 ../../mshclass/rtl8192s_sme.o \
439 ../../mshclass/rtl8192_proc.o \
440 ../../mshclass/8192s_pathsel.o \
441 ../../mshclass/hash_table.o \
442 ../../mshclass/rtl8192_sha1.o \
443 ../../mshclass/rtl8192_sha256.o \
444 ../../mshclass/rtl8192_aes.o \
445 ../../mshclass/mesh_abbr_handshk.o \
446 ../../mshclass/rtl8192_bn_ctx.o \
447 ../../mshclass/rtl8192_bn_asm.o \
448 ../../mshclass/rtl8192_bn_gcd.o \
449 ../../mshclass/rtl8192_bn_mont.o \
450 ../../mshclass/rtl8192_bn_recp.o \
451 ../../mshclass/rtl8192_bn_lib.o \
452 ../../mshclass/mesh_ath.o \
453 ../../mshclass/pathselection.o \
454 ../../mshclass/tree_proactive.o
455 # rtl8192e/r8190P_rtl8256.o
456 obj-m := r8192se_pci_mesh.o
459 ifeq ($(NIC_SELECT),RTL8192CE_MESH)
460 r8192ce_pci_mesh-objs := rtl_core.o \
470 rtl8192c/r8192C_dev.o \
471 rtl8192c/r8192C_Efuse.o \
472 rtl8192c/r8192C_phy.o \
473 rtl8192c/r8192C_firmware.o \
474 rtl8192c/r8192C_dm.o \
475 rtl8192c/r8192C_rtl6052.o \
476 rtl8192c/r8192C_hwimg.o \
477 rtl8192c/r8192C_led.o \
478 rtl8192c/r8192C_com.o \
479 rtl8192c/r8192C_PhyParam.o \
480 ../../rtllib/rtllib_rx.o \
481 ../../rtllib/rtllib_softmac.o \
482 ../../rtllib/rtllib_tx.o \
483 ../../rtllib/rtllib_wx.o \
484 ../../rtllib/rtllib_module.o \
485 ../../rtllib/rtllib_softmac_wx.o \
486 ../../rtllib/rtl819x_HTProc.o \
487 ../../rtllib/rtl819x_TSProc.o \
488 ../../rtllib/rtl819x_BAProc.o \
489 ../../rtllib/dot11d.o \
490 ../../rtllib/rtllib_crypt.o \
491 ../../rtllib/rtllib_crypt_tkip.o \
492 ../../rtllib/rtllib_crypt_ccmp.o \
493 ../../rtllib/rtllib_crypt_wep.o \
494 ../../mshclass/msh_class.o \
495 ../../mshclass/mesh_8192_util.o \
496 ../../mshclass/rtl8192_mesh.o \
497 ../../mshclass/rtl8192s_sme.o \
498 ../../mshclass/rtl8192_proc.o \
499 ../../mshclass/8192s_pathsel.o \
500 ../../mshclass/hash_table.o \
501 ../../mshclass/rtl8192_sha1.o \
502 ../../mshclass/rtl8192_sha256.o \
503 ../../mshclass/rtl8192_aes.o \
504 ../../mshclass/mesh_abbr_handshk.o \
505 ../../mshclass/rtl8192_bn_ctx.o \
506 ../../mshclass/rtl8192_bn_asm.o \
507 ../../mshclass/rtl8192_bn_gcd.o \
508 ../../mshclass/rtl8192_bn_mont.o \
509 ../../mshclass/rtl8192_bn_recp.o \
510 ../../mshclass/rtl8192_bn_lib.o \
511 ../../mshclass/mesh_ath.o \
512 ../../mshclass/pathselection.o \
513 ../../mshclass/tree_proactive.o
515 obj-m := r8192ce_pci_mesh.o
518 KSRC := /lib/modules/$(KVER)/build
520 IMG_DIR := /lib/firmware/
524 $(MAKE) -C $(KSRC) M=$(PWD) CC=$(CC) modules
526 ifeq ($(NIC_SELECT),RTL8190P)
527 install -p -m 644 r8190_pci.ko $(MODDESTDIR)
529 ifeq ($(NIC_SELECT),RTL8192E)
530 install -p -m 644 r8192e_pci.ko $(MODDESTDIR)
532 ifeq ($(NIC_SELECT),RTL8192SE)
533 install -p -m 644 r8192se_pci.ko $(MODDESTDIR)
535 ifeq ($(NIC_SELECT),RTL8192CE)
536 install -p -m 644 r8192ce_pci.ko $(MODDESTDIR)
538 ifeq ($(NIC_SELECT),RTL8191SE_MESH)
539 mkdir /usr/share/enhanced-easy-network -p
540 cp ../../script/mesh-tools /usr/share/enhanced-easy-network/ -rf
541 cp ../../script/mesh.conf /etc/
542 cp ../../script/wpa_mesh_tkip.conf /etc/
543 cp ../../script/wpa_mesh_ccmp.conf /etc/
544 chmod 777 ../../script/do_install
545 ../../script/do_install
546 install -p -m 644 r8192se_pci_mesh.ko $(MODDESTDIR)
548 ifeq ($(NIC_SELECT),RTL8192CE_MESH)
549 mkdir /usr/share/enhanced-easy-network -p
550 cp ../../script/mesh-tools /usr/share/enhanced-easy-network/ -rf
551 cp ../../script/mesh.conf /etc/
552 cp ../../script/wpa_mesh_tkip.conf /etc/
553 cp ../../script/wpa_mesh_ccmp.conf /etc/
554 chmod 777 ../../script/do_install
555 ../../script/do_install
556 install -p -m 644 r8192ce_pci_mesh.ko $(MODDESTDIR)
560 @#copy firmware img to target fold
561 $(shell [ -d "$(IMG_DIR)/`uname -r`" ] && cp -fr $(RTL819x_FIRM_DIR)/$(NIC_SELECT) $(IMG_DIR)/`uname -r`/.)
562 $(shell [ ! -d "$(IMG_DIR)/`uname -r`" ] && cp -fr $(RTL819x_FIRM_DIR)/$(NIC_SELECT) $(IMG_DIR)/.)
564 ifeq ($(NIC_SELECT),RTL8190P)
565 $(shell [ -d $(MODDESTDIR) ] && rm -f $(MODDESTDIR)/r8190_pci.ko)
567 ifeq ($(NIC_SELECT),RTL8192E)
568 $(shell [ -d $(MODDESTDIR) ] && rm -f $(MODDESTDIR)/r8192e_pci.ko)
570 ifeq ($(NIC_SELECT),RTL8192SE)
571 $(shell [ -d $(MODDESTDIR) ] && rm -f $(MODDESTDIR)/r8192se_pci.ko)
573 ifeq ($(NIC_SELECT),RTL8192CE)
574 $(shell [ -d $(MODDESTDIR) ] && rm -f $(MODDESTDIR)/r8192ce_pci.ko)
576 ifeq ($(NIC_SELECT),RTL8191SE_MESH)
577 rm -f /etc/wpa_mesh_tkip.conf
578 rm -f /etc/wpa_mesh_ccmp.conf
579 $(shell [ -d $(MODDESTDIR) ] && rm -f $(MODDESTDIR)/r8192se_pci_mesh.ko)
582 @#delete the firmware img
583 @rm -fr /lib/firmware/$(NIC_SELECT)
584 @rm -fr /lib/firmware/`uname -r`/$(NIC_SELECT)
586 ###################### KERNEL 2.4 ################################
588 KSRC := /lib/modules/$(KVER)/build
589 CONFIG_FILE := $(KSRC)/include/linux/autoconf.h
590 CFLAGS += -DLINUX -D__KERNEL__ -DMODULE -O2 -pipe -Wall
591 CFLAGS += -I$(KSRC)/include -I.
592 CFLAGS += -DMODVERSIONS -DEXPORT_SYMTAB -include $(KSRC)/include/linux/modversions.h
593 #CFLAGS += -D__NO_VERSION__ -DEXPORT_SYMTAB
595 ifeq ($(NIC_SELECT),RTL8190P)
596 sub_folder = rtl8192e
598 CFLAGS+=-DEEPROM_OLD_FORMAT_SUPPORT=1
599 #CFLAGS +=-DCONFIG_RTLWIFI_DEBUGFS
602 ifeq ($(NIC_SELECT),RTL8192E)
603 sub_folder = rtl8192e
605 CFLAGS+=-DEEPROM_OLD_FORMAT_SUPPORT=1
606 CFLAGS+=-DENABLE_GPIO_RADIO_CTL
607 #CFLAGS += -DENABLE_IPS
608 #CFLAGS += -DENABLE_IPS
609 #CFLAGS +=-DCONFIG_RTLWIFI_DEBUGFS
612 ifeq ($(NIC_SELECT),RTL8192SE)
613 sub_folder = rtl8192s
614 CFLAGS += -DRTL8192SE
615 CFLAGS += -DEEPROM_OLD_FORMAT_SUPPORT=0
616 CFLAGS += -DRTL92SE_FPGA_VERIFY=0
617 CFLAGS += -DDEMO_BOARD_SUPPORT=1
618 CFLAGS += -DRTL8192SU_DISABLE_CCK_RATE=0
619 CFLAGS += -DRTL8192S_DISABLE_FW_DM=0
620 CFLAGS += -DHAL_MAC_ENABLE=1
621 CFLAGS += -DHAL_BB_ENABLE=1
622 CFLAGS += -DHAL_RF_ENABLE=1
623 CFLAGS += -DRTL8192S_PREPARE_FOR_NORMAL_RELEASE=1
624 CFLAGS += -DDISABLE_BB_RF=0
625 CFLAGS += -DRTL8190_Download_Firmware_From_Header=1
626 #CFLAGS += -DRTL8192S_WAPI_SUPPORT=1
627 #CFLAGS +=-DCONFIG_RTLWIFI_DEBUGFS
628 #CFLAGS += -DCONFIG_PM_RTL
629 #CFLAGS += -DENABLE_GPIO_RADIO_CTL
630 #EXTRA_CFLAGS += -DCONFIG_PM
631 #EXTRA_CFLAGS += -DENABLE_IPS
632 #EXTRA_CFLAGS += -DENABLE_LPS
633 #EXTRA_CFLAGS += -DCONFIG_ASPM_OR_D3
634 #CFLAGS += -DENABLE_AMSDU
635 #CFLAGS += -DADHOC_11N
638 ifeq ($(NIC_SELECT),RTL8191SE_MESH)
639 sub_folder = rtl8192s
640 CFLAGS += -DRTL8192SE
641 CFLAGS +=-DEEPROM_OLD_FORMAT_SUPPORT=1
642 #CFLAGS +=-DCONFIG_RTLWIFI_DEBUGFS
643 CFLAGS += -DEEPROM_OLD_FORMAT_SUPPORT=0
644 CFLAGS += -DRTL92SE_FPGA_VERIFY=0
645 CFLAGS += -DDEMO_BOARD_SUPPORT=1
646 CFLAGS += -DRTL8192SU_DISABLE_CCK_RATE=0
647 CFLAGS += -DRTL8192S_DISABLE_FW_DM=0
648 CFLAGS += -DHAL_MAC_ENABLE=1
649 CFLAGS += -DHAL_BB_ENABLE=1
650 CFLAGS += -DHAL_RF_ENABLE=1
651 CFLAGS += -DRTL8192S_PREPARE_FOR_NORMAL_RELEASE=1
652 CFLAGS += -DDISABLE_BB_RF=0
653 CFLAGS += -DCONFIG_PM_RTL
654 CFLAGS += -DENABLE_GPIO_RADIO_CTL
655 CFLAGS += -DRTL8190_Download_Firmware_From_Header=1
656 CFLAGS += -DENABLE_IPS
657 CFLAGS += -DENABLE_LPS
658 CFLAGS += -DCONFIG_ASPM_OR_D3
659 CFLAGS += -D_RTL8192_EXT_PATCH_ \
660 -DMESH_8192_SPECIFIED \
662 -DTREE_BASED_ROUTING_ENABLE \
663 -DMESH_PATHSEL_DBG_LV=0 \
664 -DMESH_PATHSEL_DBG_SIMPLE=0 \
665 -DMESH_PATHSEL_DBG_TEST=0\
666 -DBUILT_IN_MSHCLASS \
667 -DCUSTOMER_ID_INTEL_CMPC \
670 CFLAGS += -DTHOMAS_TURBO
671 CFLAGS += -DENABLE_DOT11D
673 #flag for single module compile
674 CFLAGS += -DBUILT_IN_RTLLIB
675 CFLAGS += -DBUILT_IN_CRYPTO
676 #CFLAGS += -DENABLE_TKIP11N
678 SMP := $(shell $(CC) $(CFLAGS) -E -dM $(CONFIG_FILE) | \
679 grep CONFIG_SMP | awk '{print $$3}')
686 OBJS := ${patsubst %.c, %.o, ${wildcard *.c}}
688 ifeq ($(NIC_SELECT),RTL8190P)
701 rtl8192e/r8190P_rtl8256.o \
702 rtl8192e/r8190P_hwimg.o \
703 rtl8192e/r8192E_dev.o \
704 rtl8192e/r8192E_cmdpkt.o\
705 rtl8192e/r8192E_firmware.o \
706 rtl8192e/r8192E_phy.o \
707 ../../rtllib/rtllib_rx.o \
708 ../../rtllib/rtllib_softmac.o \
709 ../../rtllib/rtllib_tx.o \
710 ../../rtllib/rtllib_wx.o \
711 ../../rtllib/rtllib_module.o \
712 ../../rtllib/rtllib_softmac_wx.o \
713 ../../rtllib/rtl819x_HTProc.o \
714 ../../rtllib/rtl819x_TSProc.o \
715 ../../rtllib/rtl819x_BAProc.o \
716 ../../rtllib/dot11d.o \
717 ../../rtllib/rtllib_crypt.o \
718 ../../rtllib/rtllib_crypt_tkip.o \
719 ../../rtllib/rtllib_crypt_ccmp.o \
720 ../../rtllib/rtllib_crypt_wep.o \
722 ../../rtllib/compress.o \
723 ../../rtllib/digest.o \
724 ../../rtllib/cipher.o \
725 ../../rtllib/scatterwalk.o \
726 ../../rtllib/arc4.o \
727 ../../rtllib/michael_mic.o \
733 install -p -m 644 r8190_pci.o $(MODDESTDIR)
736 $(shell [ -d $(MODDESTDIR) ] && rm -f $(MODDESTDIR)/r8190_pci.o)
740 ifeq ($(NIC_SELECT),RTL8192E)
753 rtl8192e/r8192E_dev.o \
754 rtl8192e/r8190P_rtl8256.o \
755 rtl8192e/r8192E_hwimg.o \
756 rtl8192e/r8192E_cmdpkt.o\
757 rtl8192e/r8192E_firmware.o \
758 rtl8192e/r8192E_phy.o \
759 ../../rtllib/rtllib_rx.o \
760 ../../rtllib/rtllib_softmac.o \
761 ../../rtllib/rtllib_tx.o \
762 ../../rtllib/rtllib_wx.o \
763 ../../rtllib/rtllib_module.o \
764 ../../rtllib/rtllib_softmac_wx.o \
765 ../../rtllib/rtl819x_HTProc.o \
766 ../../rtllib/rtl819x_TSProc.o \
767 ../../rtllib/rtl819x_BAProc.o \
768 ../../rtllib/dot11d.o \
769 ../../rtllib/rtllib_crypt.o \
770 ../../rtllib/rtllib_crypt_tkip.o \
771 ../../rtllib/rtllib_crypt_ccmp.o \
772 ../../rtllib/rtllib_crypt_wep.o \
774 ../../rtllib/compress.o \
775 ../../rtllib/digest.o \
776 ../../rtllib/cipher.o \
777 ../../rtllib/scatterwalk.o \
778 ../../rtllib/arc4.o \
779 ../../rtllib/michael_mic.o \
785 install -p -m 644 r8192e_pci.o $(MODDESTDIR)
788 $(shell [ -d $(MODDESTDIR) ] && rm -f $(MODDESTDIR)/r8192e_pci.o)
792 ifeq ($(NIC_SELECT),RTL8192SE)
794 r8192se_pci.o: rtl_core.o \
804 rtl8192s/r8192S_dev.o \
805 rtl8192s/r8192S_Efuse.o \
806 rtl8192s/r8192S_firmware.o \
807 rtl8192s/r8192S_hwimg.o \
808 rtl8192s/r8192S_led.o \
809 rtl8192s/r8192S_phy.o \
810 rtl8192s/r8192S_rtl6052.o \
811 ../../rtllib/rtllib_rx.o \
812 ../../rtllib/rtllib_softmac.o \
813 ../../rtllib/rtllib_tx.o \
814 ../../rtllib/rtllib_wx.o \
815 ../../rtllib/rtllib_module.o \
816 ../../rtllib/rtllib_softmac_wx.o \
817 ../../rtllib/rtl819x_HTProc.o \
818 ../../rtllib/rtl819x_TSProc.o \
819 ../../rtllib/rtl819x_BAProc.o \
820 ../../rtllib/dot11d.o \
821 ../../rtllib/rtllib_crypt.o \
822 ../../rtllib/rtllib_crypt_tkip.o \
823 ../../rtllib/rtllib_crypt_ccmp.o \
824 ../../rtllib/rtllib_crypt_wep.o \
826 ../../rtllib/compress.o \
827 ../../rtllib/digest.o \
828 ../../rtllib/cipher.o \
829 ../../rtllib/scatterwalk.o \
830 ../../rtllib/arc4.o \
831 ../../rtllib/michael_mic.o \
833 ../../rtllib/proc.o \
834 ../../rtllib/wapi.o \
835 ../../rtllib/wapi_interface.o
836 # rtl8192e/r8192E_cmdpkt.o
837 # rtl8192e/r8190P_rtl8256.o
839 install:r8192se_pci.o
840 install -p -m 644 r8192se_pci.o $(MODDESTDIR)
843 $(shell [ -d $(MODDESTDIR) ] && rm -f $(MODDESTDIR)/r8192se_pci.o)
847 ifeq ($(NIC_SELECT),RTL8191SE_MESH )
848 all:r8192se_pci_mesh.o
849 r8192se_pci_mesh.o: \
861 rtl8192s/r8192S_dev.o \
862 rtl8192s/r8192S_Efuse.o \
863 rtl8192s/r8192S_firmware.o \
864 rtl8192s/r8192S_hwimg.o \
865 rtl8192s/r8192S_led.o \
866 rtl8192s/r8192S_phy.o \
867 rtl8192s/r8192S_rtl6052.o \
868 ../../rtllib/rtllib_rx.o \
869 ../../rtllib/rtllib_softmac.o \
870 ../../rtllib/rtllib_tx.o \
871 ../../rtllib/rtllib_wx.o \
872 ../../rtllib/rtllib_module.o \
873 ../../rtllib/rtllib_softmac_wx.o \
874 ../../rtllib/rtl819x_HTProc.o \
875 ../../rtllib/rtl819x_TSProc.o \
876 ../../rtllib/rtl819x_BAProc.o \
877 ../../rtllib/dot11d.o \
878 ../../rtllib/rtllib_crypt.o \
879 ../../rtllib/rtllib_crypt_tkip.o \
880 ../../rtllib/rtllib_crypt_ccmp.o \
881 ../../rtllib/rtllib_crypt_wep.o \
882 ../../mshclass/msh_class.o \
883 ../../mshclass/mesh_8192_util.o \
884 ../../mshclass/rtl8192_mesh.o \
885 ../../mshclass/rtl8192s_sme.o \
886 ../../mshclass/rtl8192_proc.o \
887 ../../mshclass/8192s_pathsel.o \
888 ../../mshclass/hash_table.o \
889 ../../mshclass/pathselection.o \
890 ../../mshclass/tree_proactive.o \
891 ../../mshclass/hash_table.o \
892 ../../mshclass/sha1.o \
893 ../../mshclass/sha256.o \
894 ../../mshclass/aes.o \
895 ../../mshclass/mesh_abbr_handshk.o \
896 ../../mshclass/bn_ctx.o \
897 ../../mshclass/bn_asm.o \
898 ../../mshclass/bn_gcd.o \
899 ../../mshclass/bn_mont.o \
900 ../../mshclass/bn_recp.o \
901 ../../mshclass/bn_lib.o \
902 ../../mshclass/mesh_ath.o
903 # rtl8192e/r8190P_rtl8256.o \
904 # rtl8192e/r8192E_cmdpkt.o
906 install:r8192se_pci_mesh.o
907 install -p -m 644 r8192se_pci_mesh.o $(MODDESTDIR)
910 $(shell [ -d $(MODDESTDIR) ] && rm -f $(MODDESTDIR)/r8192se_pci_mesh.o)
917 rm -fr *.mod.c *.mod *.o .*.cmd *.ko *~
919 rm -fr Modules.symvers
920 rm -fr Module.symvers
921 rm -fr Module.markers
924 @make -C $(sub_folder)/ clean