Makefile 31 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099
  1. EXTRA_CFLAGS += $(USER_EXTRA_CFLAGS)
  2. EXTRA_CFLAGS += -O1
  3. #EXTRA_CFLAGS += -O3
  4. #EXTRA_CFLAGS += -Wall
  5. #EXTRA_CFLAGS += -Wextra
  6. #EXTRA_CFLAGS += -Werror
  7. #EXTRA_CFLAGS += -pedantic
  8. #EXTRA_CFLAGS += -Wshadow -Wpointer-arith -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes
  9. EXTRA_CFLAGS += -Wno-unused-variable
  10. EXTRA_CFLAGS += -Wno-unused-value
  11. EXTRA_CFLAGS += -Wno-unused-label
  12. EXTRA_CFLAGS += -Wno-unused-parameter
  13. EXTRA_CFLAGS += -Wno-unused-function
  14. EXTRA_CFLAGS += -Wno-unused
  15. EXTRA_CFLAGS += -Wno-uninitialized
  16. EXTRA_CFLAGS += -Wno-int-to-pointer-cast
  17. EXTRA_CFLAGS += -Wno-vla
  18. EXTRA_CFLAGS += -I$(src)/include
  19. CONFIG_AUTOCFG_CP = n
  20. CONFIG_MULTIDRV = n
  21. CONFIG_RTL8192C = n
  22. CONFIG_RTL8192D = n
  23. CONFIG_RTL8723A = n
  24. CONFIG_RTL8188E = n
  25. CONFIG_RTL8812A = y
  26. CONFIG_RTL8821A = y
  27. CONFIG_RTL8192E = n
  28. CONFIG_RTL8723B = n
  29. CONFIG_USB_HCI = y
  30. CONFIG_PCI_HCI = n
  31. CONFIG_SDIO_HCI = n
  32. CONFIG_GSPI_HCI = n
  33. CONFIG_MP_INCLUDED = y
  34. CONFIG_POWER_SAVING = y
  35. CONFIG_USB_AUTOSUSPEND = n
  36. CONFIG_HW_PWRP_DETECTION = n
  37. CONFIG_WIFI_TEST = n
  38. CONFIG_BT_COEXIST = n
  39. CONFIG_RTL8192CU_REDEFINE_1X1 = n
  40. CONFIG_INTEL_WIDI = n
  41. CONFIG_WAPI_SUPPORT = n
  42. CONFIG_EFUSE_CONFIG_FILE = n
  43. CONFIG_EXT_CLK = n
  44. CONFIG_FTP_PROTECT = n
  45. CONFIG_WOWLAN = n
  46. CONFIG_PLATFORM_I386_PC = y
  47. CONFIG_PLATFORM_ANDROID_X86 = n
  48. CONFIG_PLATFORM_JB_X86 = n
  49. CONFIG_PLATFORM_ARM_S3C2K4 = n
  50. CONFIG_PLATFORM_ARM_PXA2XX = n
  51. CONFIG_PLATFORM_ARM_S3C6K4 = n
  52. CONFIG_PLATFORM_ARM_RPI = n
  53. CONFIG_PLATFORM_MIPS_RMI = n
  54. CONFIG_PLATFORM_RTD2880B = n
  55. CONFIG_PLATFORM_MIPS_AR9132 = n
  56. CONFIG_PLATFORM_RTK_DMP = n
  57. CONFIG_PLATFORM_MIPS_PLM = n
  58. CONFIG_PLATFORM_MSTAR389 = n
  59. CONFIG_PLATFORM_MT53XX = n
  60. CONFIG_PLATFORM_ARM_MX51_241H = n
  61. CONFIG_PLATFORM_FS_MX61 = n
  62. CONFIG_PLATFORM_ACTIONS_ATJ227X = n
  63. CONFIG_PLATFORM_TEGRA3_CARDHU = n
  64. CONFIG_PLATFORM_TEGRA4_DALMORE = n
  65. CONFIG_PLATFORM_ARM_TCC8900 = n
  66. CONFIG_PLATFORM_ARM_TCC8920 = n
  67. CONFIG_PLATFORM_ARM_TCC8920_JB42 = n
  68. CONFIG_PLATFORM_ARM_RK2818 = n
  69. CONFIG_PLATFORM_ARM_URBETTER = n
  70. CONFIG_PLATFORM_ARM_TI_PANDA = n
  71. CONFIG_PLATFORM_MIPS_JZ4760 = n
  72. CONFIG_PLATFORM_DMP_PHILIPS = n
  73. CONFIG_PLATFORM_TI_DM365 = n
  74. CONFIG_PLATFORM_MSTAR_TITANIA12 = n
  75. CONFIG_PLATFORM_SZEBOOK = n
  76. CONFIG_PLATFORM_ARM_SUNxI = n
  77. CONFIG_PLATFORM_ARM_SUN6I = n
  78. CONFIG_PLATFORM_ACTIONS_ATM702X = n
  79. CONFIG_PLATFORM_ACTIONS_ATV5201 = n
  80. CONFIG_PLATFORM_PPC = n
  81. CONFIG_DRVEXT_MODULE = n
  82. export TopDIR ?= $(shell pwd)
  83. ########### COMMON #################################
  84. ifeq ($(CONFIG_GSPI_HCI), y)
  85. HCI_NAME = gspi
  86. endif
  87. ifeq ($(CONFIG_SDIO_HCI), y)
  88. HCI_NAME = sdio
  89. endif
  90. ifeq ($(CONFIG_USB_HCI), y)
  91. HCI_NAME = usb
  92. endif
  93. ifeq ($(CONFIG_PCI_HCI), y)
  94. HCI_NAME = pci
  95. endif
  96. _OS_INTFS_FILES := os_dep/osdep_service.o \
  97. os_dep/linux/os_intfs.o \
  98. os_dep/linux/$(HCI_NAME)_intf.o \
  99. os_dep/linux/$(HCI_NAME)_ops_linux.o \
  100. os_dep/linux/ioctl_linux.o \
  101. os_dep/linux/xmit_linux.o \
  102. os_dep/linux/mlme_linux.o \
  103. os_dep/linux/recv_linux.o \
  104. os_dep/linux/ioctl_cfg80211.o \
  105. os_dep/linux/rtw_android.o
  106. ifeq ($(CONFIG_SDIO_HCI), y)
  107. _OS_INTFS_FILES += os_dep/linux/custom_gpio_linux.o
  108. _OS_INTFS_FILES += os_dep/linux/$(HCI_NAME)_ops_linux.o
  109. endif
  110. ifeq ($(CONFIG_GSPI_HCI), y)
  111. _OS_INTFS_FILES += os_dep/linux/custom_gpio_linux.o
  112. _OS_INTFS_FILES += os_dep/linux/$(HCI_NAME)_ops_linux.o
  113. endif
  114. _HAL_INTFS_FILES := hal/hal_intf.o \
  115. hal/hal_com.o \
  116. hal/hal_com_phycfg.o \
  117. hal/hal_phy.o \
  118. hal/led/hal_$(HCI_NAME)_led.o
  119. _OUTSRC_FILES := hal/OUTSRC/odm_debug.o \
  120. hal/OUTSRC/odm_interface.o\
  121. hal/OUTSRC/odm_HWConfig.o\
  122. hal/OUTSRC/odm.o\
  123. hal/OUTSRC/HalPhyRf.o
  124. ########### HAL_RTL8192C #################################
  125. ifeq ($(CONFIG_RTL8192C), y)
  126. RTL871X = rtl8192c
  127. ifeq ($(CONFIG_USB_HCI), y)
  128. MODULE_NAME = 8192cu
  129. endif
  130. ifeq ($(CONFIG_PCI_HCI), y)
  131. MODULE_NAME = 8192ce
  132. endif
  133. EXTRA_CFLAGS += -DCONFIG_RTL8192C
  134. _HAL_INTFS_FILES += \
  135. hal/$(RTL871X)/$(RTL871X)_sreset.o \
  136. hal/$(RTL871X)/$(RTL871X)_xmit.o
  137. _HAL_INTFS_FILES += hal/$(RTL871X)/$(RTL871X)_hal_init.o \
  138. hal/$(RTL871X)/$(RTL871X)_phycfg.o \
  139. hal/$(RTL871X)/$(RTL871X)_rf6052.o \
  140. hal/$(RTL871X)/$(RTL871X)_dm.o \
  141. hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
  142. hal/$(RTL871X)/$(RTL871X)_cmd.o \
  143. hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
  144. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
  145. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
  146. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o
  147. _HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
  148. ifeq ($(CONFIG_MP_INCLUDED), y)
  149. _HAL_INTFS_FILES += hal/$(RTL871X)/$(RTL871X)_mp.o
  150. endif
  151. _OUTSRC_FILES += hal/OUTSRC/$(RTL871X)/odm_RTL8192C.o\
  152. hal/OUTSRC/$(RTL871X)/HalDMOutSrc8192C_CE.o
  153. ifeq ($(CONFIG_USB_HCI), y)
  154. _OUTSRC_FILES += hal/OUTSRC/$(RTL871X)/Hal8192CUFWImg_CE.o \
  155. hal/OUTSRC/$(RTL871X)/Hal8192CUPHYImg_CE.o \
  156. hal/OUTSRC/$(RTL871X)/Hal8192CUMACImg_CE.o
  157. endif
  158. ifeq ($(CONFIG_PCI_HCI), y)
  159. _OUTSRC_FILES += hal/OUTSRC/$(RTL871X)/Hal8192CEFWImg_CE.o \
  160. hal/OUTSRC/$(RTL871X)/Hal8192CEPHYImg_CE.o \
  161. hal/OUTSRC/$(RTL871X)/Hal8192CEMACImg_CE.o
  162. endif
  163. endif
  164. ########### HAL_RTL8192D #################################
  165. ifeq ($(CONFIG_RTL8192D), y)
  166. RTL871X = rtl8192d
  167. ifeq ($(CONFIG_USB_HCI), y)
  168. MODULE_NAME = 8192du
  169. endif
  170. ifeq ($(CONFIG_PCI_HCI), y)
  171. MODULE_NAME = 8192de
  172. endif
  173. EXTRA_CFLAGS += -DCONFIG_RTL8192D
  174. _HAL_INTFS_FILES += \
  175. hal/$(RTL871X)/$(RTL871X)_xmit.o
  176. _HAL_INTFS_FILES += hal/$(RTL871X)/$(RTL871X)_hal_init.o \
  177. hal/$(RTL871X)/$(RTL871X)_phycfg.o \
  178. hal/$(RTL871X)/$(RTL871X)_rf6052.o \
  179. hal/$(RTL871X)/$(RTL871X)_dm.o \
  180. hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
  181. hal/$(RTL871X)/$(RTL871X)_cmd.o \
  182. hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
  183. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
  184. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
  185. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o
  186. _HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
  187. ifeq ($(CONFIG_MP_INCLUDED), y)
  188. _HAL_INTFS_FILES += hal/$(RTL871X)/$(RTL871X)_mp.o
  189. endif
  190. _OUTSRC_FILES += hal/OUTSRC/$(RTL871X)/odm_RTL8192D.o\
  191. hal/OUTSRC/$(RTL871X)/HalDMOutSrc8192D_CE.o
  192. ifeq ($(CONFIG_USB_HCI), y)
  193. _OUTSRC_FILES += hal/OUTSRC/$(RTL871X)/Hal8192DUFWImg_CE.o \
  194. hal/OUTSRC/$(RTL871X)/Hal8192DUPHYImg_CE.o \
  195. hal/OUTSRC/$(RTL871X)/Hal8192DUMACImg_CE.o
  196. endif
  197. ifeq ($(CONFIG_PCI_HCI), y)
  198. _OUTSRC_FILES += hal/OUTSRC/$(RTL871X)/Hal8192DEFWImg_CE.o \
  199. hal/OUTSRC/$(RTL871X)/Hal8192DEPHYImg_CE.o \
  200. hal/OUTSRC/$(RTL871X)/Hal8192DEMACImg_CE.o
  201. endif
  202. endif
  203. ########### HAL_RTL8723A #################################
  204. ifeq ($(CONFIG_RTL8723A), y)
  205. RTL871X = rtl8723a
  206. ifeq ($(CONFIG_GSPI_HCI), y)
  207. MODULE_NAME = 8723as
  208. endif
  209. ifeq ($(CONFIG_SDIO_HCI), y)
  210. MODULE_NAME = 8723as
  211. endif
  212. ifeq ($(CONFIG_USB_HCI), y)
  213. MODULE_NAME = 8723au
  214. endif
  215. ifeq ($(CONFIG_PCI_HCI), y)
  216. MODULE_NAME = 8723ae
  217. endif
  218. EXTRA_CFLAGS += -DCONFIG_RTL8723A
  219. _HAL_INTFS_FILES += hal/HalPwrSeqCmd.o \
  220. hal/$(RTL871X)/Hal8723PwrSeq.o\
  221. hal/$(RTL871X)/$(RTL871X)_xmit.o \
  222. hal/$(RTL871X)/$(RTL871X)_sreset.o
  223. _HAL_INTFS_FILES += hal/$(RTL871X)/$(RTL871X)_hal_init.o \
  224. hal/$(RTL871X)/$(RTL871X)_phycfg.o \
  225. hal/$(RTL871X)/$(RTL871X)_rf6052.o \
  226. hal/$(RTL871X)/$(RTL871X)_dm.o \
  227. hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
  228. hal/$(RTL871X)/$(RTL871X)_cmd.o \
  229. hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
  230. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
  231. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
  232. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o
  233. ifeq ($(CONFIG_SDIO_HCI), y)
  234. _HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
  235. else
  236. ifeq ($(CONFIG_GSPI_HCI), y)
  237. _HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
  238. else
  239. _HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
  240. endif
  241. endif
  242. ifeq ($(CONFIG_MP_INCLUDED), y)
  243. _HAL_INTFS_FILES += hal/$(RTL871X)/$(RTL871X)_mp.o
  244. endif
  245. ifeq ($(CONFIG_BT_COEXIST), y)
  246. _HAL_INTFS_FILES += hal/$(RTL871X)/rtl8723a_bt-coexist.o
  247. endif
  248. ifeq ($(CONFIG_GSPI_HCI), y)
  249. _OUTSRC_FILES += hal/OUTSRC/$(RTL871X)/Hal8723SHWImg_CE.o
  250. endif
  251. ifeq ($(CONFIG_SDIO_HCI), y)
  252. _OUTSRC_FILES += hal/OUTSRC/$(RTL871X)/Hal8723SHWImg_CE.o
  253. endif
  254. ifeq ($(CONFIG_USB_HCI), y)
  255. _OUTSRC_FILES += hal/OUTSRC/$(RTL871X)/Hal8723UHWImg_CE.o
  256. endif
  257. ifeq ($(CONFIG_PCI_HCI), y)
  258. _OUTSRC_FILES += hal/OUTSRC/$(RTL871X)/Hal8723EHWImg_CE.o
  259. endif
  260. #hal/OUTSRC/$(RTL871X)/HalHWImg8723A_FW.o
  261. _OUTSRC_FILES += hal/OUTSRC/$(RTL871X)/HalHWImg8723A_BB.o\
  262. hal/OUTSRC/$(RTL871X)/HalHWImg8723A_MAC.o\
  263. hal/OUTSRC/$(RTL871X)/HalHWImg8723A_RF.o\
  264. hal/OUTSRC/$(RTL871X)/odm_RegConfig8723A.o
  265. _OUTSRC_FILES += hal/OUTSRC/rtl8192c/HalDMOutSrc8192C_CE.o
  266. endif
  267. ########### HAL_RTL8188E #################################
  268. ifeq ($(CONFIG_RTL8188E), y)
  269. RTL871X = rtl8188e
  270. ifeq ($(CONFIG_SDIO_HCI), y)
  271. MODULE_NAME = 8189es
  272. endif
  273. ifeq ($(CONFIG_USB_HCI), y)
  274. MODULE_NAME = 8188eu
  275. endif
  276. ifeq ($(CONFIG_PCI_HCI), y)
  277. MODULE_NAME = 8188ee
  278. endif
  279. EXTRA_CFLAGS += -DCONFIG_RTL8188E
  280. _HAL_INTFS_FILES += hal/HalPwrSeqCmd.o \
  281. hal/$(RTL871X)/Hal8188EPwrSeq.o\
  282. hal/$(RTL871X)/$(RTL871X)_xmit.o\
  283. hal/$(RTL871X)/$(RTL871X)_sreset.o
  284. _HAL_INTFS_FILES += hal/$(RTL871X)/$(RTL871X)_hal_init.o \
  285. hal/$(RTL871X)/$(RTL871X)_phycfg.o \
  286. hal/$(RTL871X)/$(RTL871X)_rf6052.o \
  287. hal/$(RTL871X)/$(RTL871X)_dm.o \
  288. hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
  289. hal/$(RTL871X)/$(RTL871X)_cmd.o \
  290. hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
  291. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
  292. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
  293. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o
  294. ifeq ($(CONFIG_SDIO_HCI), y)
  295. _HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
  296. else
  297. ifeq ($(CONFIG_GSPI_HCI), y)
  298. _HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
  299. else
  300. _HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
  301. endif
  302. endif
  303. ifeq ($(CONFIG_MP_INCLUDED), y)
  304. _HAL_INTFS_FILES += hal/$(RTL871X)/$(RTL871X)_mp.o
  305. endif
  306. #hal/OUTSRC/$(RTL871X)/Hal8188EFWImg_CE.o
  307. _OUTSRC_FILES += hal/OUTSRC/$(RTL871X)/HalHWImg8188E_MAC.o\
  308. hal/OUTSRC/$(RTL871X)/HalHWImg8188E_BB.o\
  309. hal/OUTSRC/$(RTL871X)/HalHWImg8188E_RF.o\
  310. hal/OUTSRC/$(RTL871X)/HalHWImg8188E_FW.o\
  311. hal/OUTSRC/$(RTL871X)/HalPhyRf_8188e.o\
  312. hal/OUTSRC/$(RTL871X)/odm_RegConfig8188E.o\
  313. hal/OUTSRC/$(RTL871X)/Hal8188ERateAdaptive.o\
  314. hal/OUTSRC/$(RTL871X)/odm_RTL8188E.o
  315. endif
  316. ########### HAL_RTL8192E #################################
  317. ifeq ($(CONFIG_RTL8192E), y)
  318. RTL871X = rtl8192e
  319. ifeq ($(CONFIG_SDIO_HCI), y)
  320. MODULE_NAME = 8192es
  321. endif
  322. ifeq ($(CONFIG_USB_HCI), y)
  323. MODULE_NAME = 8192eu
  324. endif
  325. ifeq ($(CONFIG_PCI_HCI), y)
  326. MODULE_NAME = 8192ee
  327. endif
  328. EXTRA_CFLAGS += -DCONFIG_RTL8192E
  329. _HAL_INTFS_FILES += hal/HalPwrSeqCmd.o \
  330. hal/$(RTL871X)/Hal8192EPwrSeq.o\
  331. hal/$(RTL871X)/$(RTL871X)_xmit.o\
  332. hal/$(RTL871X)/$(RTL871X)_sreset.o
  333. _HAL_INTFS_FILES += hal/$(RTL871X)/$(RTL871X)_hal_init.o \
  334. hal/$(RTL871X)/$(RTL871X)_phycfg.o \
  335. hal/$(RTL871X)/$(RTL871X)_rf6052.o \
  336. hal/$(RTL871X)/$(RTL871X)_dm.o \
  337. hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
  338. hal/$(RTL871X)/$(RTL871X)_cmd.o \
  339. hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
  340. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
  341. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
  342. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o
  343. ifeq ($(CONFIG_SDIO_HCI), y)
  344. _HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
  345. else
  346. ifeq ($(CONFIG_GSPI_HCI), y)
  347. _HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
  348. else
  349. _HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
  350. endif
  351. endif
  352. ifeq ($(CONFIG_MP_INCLUDED), y)
  353. _HAL_INTFS_FILES += hal/$(RTL871X)/$(RTL871X)_mp.o
  354. endif
  355. #hal/OUTSRC/$(RTL871X)/HalHWImg8188E_FW.o
  356. _OUTSRC_FILES += hal/OUTSRC/$(RTL871X)/HalHWImg8192E_MAC.o\
  357. hal/OUTSRC/$(RTL871X)/HalHWImg8192E_BB.o\
  358. hal/OUTSRC/$(RTL871X)/HalHWImg8192E_RF.o\
  359. hal/OUTSRC/$(RTL871X)/HalHWImg8192E_FW.o\
  360. hal/OUTSRC/$(RTL871X)/HalPhyRf_8192e.o\
  361. hal/OUTSRC/$(RTL871X)/odm_RegConfig8192E.o\
  362. hal/OUTSRC/$(RTL871X)/odm_RTL8192E.o
  363. endif
  364. ########### HAL_RTL8812A_RTL8821A #################################
  365. ifneq ($(CONFIG_RTL8812A)_$(CONFIG_RTL8821A), n_n)
  366. RTL871X = rtl8812a
  367. ifeq ($(CONFIG_USB_HCI), y)
  368. MODULE_NAME = 8812au
  369. endif
  370. ifeq ($(CONFIG_PCI_HCI), y)
  371. MODULE_NAME = 8812ae
  372. endif
  373. ifeq ($(CONFIG_SDIO_HCI), y)
  374. MODULE_NAME = 8812as
  375. endif
  376. _HAL_INTFS_FILES += hal/HalPwrSeqCmd.o \
  377. hal/$(RTL871X)/Hal8812PwrSeq.o \
  378. hal/$(RTL871X)/Hal8821APwrSeq.o\
  379. hal/$(RTL871X)/$(RTL871X)_xmit.o\
  380. hal/$(RTL871X)/$(RTL871X)_sreset.o
  381. _HAL_INTFS_FILES += hal/$(RTL871X)/$(RTL871X)_hal_init.o \
  382. hal/$(RTL871X)/$(RTL871X)_phycfg.o \
  383. hal/$(RTL871X)/$(RTL871X)_rf6052.o \
  384. hal/$(RTL871X)/$(RTL871X)_dm.o \
  385. hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
  386. hal/$(RTL871X)/$(RTL871X)_cmd.o \
  387. hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
  388. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
  389. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
  390. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o
  391. ifeq ($(CONFIG_SDIO_HCI), y)
  392. _HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
  393. else
  394. ifeq ($(CONFIG_GSPI_HCI), y)
  395. _HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
  396. else
  397. _HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops_linux.o
  398. endif
  399. endif
  400. ifeq ($(CONFIG_MP_INCLUDED), y)
  401. _HAL_INTFS_FILES += hal/$(RTL871X)/$(RTL871X)_mp.o
  402. endif
  403. ifeq ($(CONFIG_RTL8812A), y)
  404. EXTRA_CFLAGS += -DCONFIG_RTL8812A
  405. _OUTSRC_FILES += hal/OUTSRC/$(RTL871X)/HalHWImg8812A_FW.o\
  406. hal/OUTSRC/$(RTL871X)/HalHWImg8812A_MAC.o\
  407. hal/OUTSRC/$(RTL871X)/HalHWImg8812A_BB.o\
  408. hal/OUTSRC/$(RTL871X)/HalHWImg8812A_RF.o\
  409. hal/OUTSRC/$(RTL871X)/HalHWImg8812A_TestChip_FW.o\
  410. hal/OUTSRC/$(RTL871X)/HalHWImg8812A_TestChip_MAC.o\
  411. hal/OUTSRC/$(RTL871X)/HalHWImg8812A_TestChip_BB.o\
  412. hal/OUTSRC/$(RTL871X)/HalHWImg8812A_TestChip_RF.o\
  413. hal/OUTSRC/$(RTL871X)/HalPhyRf_8812A.o\
  414. hal/OUTSRC/$(RTL871X)/odm_RegConfig8812A.o
  415. endif
  416. ifeq ($(CONFIG_RTL8821A), y)
  417. ifeq ($(CONFIG_RTL8812A), n)
  418. ifeq ($(CONFIG_USB_HCI), y)
  419. MODULE_NAME := 8821au
  420. endif
  421. ifeq ($(CONFIG_PCI_HCI), y)
  422. MODULE_NAME := 8821ae
  423. endif
  424. endif
  425. ifeq ($(CONFIG_SDIO_HCI), y)
  426. MODULE_NAME := 8821as
  427. endif
  428. EXTRA_CFLAGS += -DCONFIG_RTL8821A
  429. _OUTSRC_FILES += hal/OUTSRC/rtl8821a/HalHWImg8821A_FW.o\
  430. hal/OUTSRC/rtl8821a/HalHWImg8821A_MAC.o\
  431. hal/OUTSRC/rtl8821a/HalHWImg8821A_BB.o\
  432. hal/OUTSRC/rtl8821a/HalHWImg8821A_RF.o\
  433. hal/OUTSRC/rtl8821a/HalHWImg8821A_TestChip_MAC.o\
  434. hal/OUTSRC/rtl8821a/HalHWImg8821A_TestChip_BB.o\
  435. hal/OUTSRC/rtl8821a/HalHWImg8821A_TestChip_RF.o\
  436. hal/OUTSRC/rtl8812a/HalPhyRf_8812A.o\
  437. hal/OUTSRC/rtl8821a/HalPhyRf_8821A.o\
  438. hal/OUTSRC/rtl8821a/odm_RegConfig8821A.o
  439. endif
  440. endif
  441. ########### HAL_RTL8723B #################################
  442. ifeq ($(CONFIG_RTL8723B), y)
  443. RTL871X = rtl8723b
  444. MODULE_NAME = 8723bs
  445. EXTRA_CFLAGS += -DCONFIG_RTL8723B
  446. _HAL_INTFS_FILES += hal/HalPwrSeqCmd.o \
  447. hal/$(RTL871X)/Hal8723BPwrSeq.o\
  448. hal/$(RTL871X)/$(RTL871X)_sreset.o
  449. _HAL_INTFS_FILES += hal/$(RTL871X)/$(RTL871X)_hal_init.o \
  450. hal/$(RTL871X)/$(RTL871X)_phycfg.o \
  451. hal/$(RTL871X)/$(RTL871X)_rf6052.o \
  452. hal/$(RTL871X)/$(RTL871X)_dm.o \
  453. hal/$(RTL871X)/$(RTL871X)_rxdesc.o \
  454. hal/$(RTL871X)/$(RTL871X)_cmd.o \
  455. hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_halinit.o \
  456. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_led.o \
  457. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_xmit.o \
  458. hal/$(RTL871X)/$(HCI_NAME)/rtl$(MODULE_NAME)_recv.o
  459. _HAL_INTFS_FILES += hal/$(RTL871X)/$(HCI_NAME)/$(HCI_NAME)_ops.o
  460. ifeq ($(CONFIG_MP_INCLUDED), y)
  461. _HAL_INTFS_FILES += hal/$(RTL871X)/$(RTL871X)_mp.o
  462. endif
  463. ifeq ($(CONFIG_BT_COEXIST), y)
  464. _HAL_INTFS_FILES += hal/$(RTL871X)/rtl8723b_bt-coexist.o
  465. endif
  466. _OUTSRC_FILES += hal/OUTSRC/$(RTL871X)/HalHWImg8723B_BB.o\
  467. hal/OUTSRC/$(RTL871X)/HalHWImg8723B_MAC.o\
  468. hal/OUTSRC/$(RTL871X)/HalHWImg8723B_RF.o\
  469. hal/OUTSRC/$(RTL871X)/HalHWImg8723B_FW.o\
  470. hal/OUTSRC/$(RTL871X)/HalHWImg8723B_MP.o\
  471. hal/OUTSRC/$(RTL871X)/odm_RegConfig8723B.o\
  472. hal/OUTSRC/$(RTL871X)/HalPhyRf_8723B.o\
  473. hal/OUTSRC/$(RTL871X)/odm_RTL8723B.o
  474. endif
  475. ########### AUTO_CFG #################################
  476. ifeq ($(CONFIG_AUTOCFG_CP), y)
  477. ifeq ($(CONFIG_MULTIDRV), y)
  478. $(shell cp $(TopDIR)/autoconf_multidrv_$(HCI_NAME)_linux.h $(TopDIR)/include/autoconf.h)
  479. else
  480. ifeq ($(CONFIG_RTL8188E)$(CONFIG_SDIO_HCI),yy)
  481. $(shell cp $(TopDIR)/autoconf_rtl8189e_$(HCI_NAME)_linux.h $(TopDIR)/include/autoconf.h)
  482. else
  483. $(shell cp $(TopDIR)/autoconf_$(RTL871X)_$(HCI_NAME)_linux.h $(TopDIR)/include/autoconf.h)
  484. endif
  485. endif
  486. endif
  487. ########### END OF PATH #################################
  488. ifeq ($(CONFIG_USB_HCI), y)
  489. ifeq ($(CONFIG_USB_AUTOSUSPEND), y)
  490. EXTRA_CFLAGS += -DCONFIG_USB_AUTOSUSPEND
  491. endif
  492. endif
  493. ifeq ($(CONFIG_MP_INCLUDED), y)
  494. #MODULE_NAME := $(MODULE_NAME)_mp
  495. EXTRA_CFLAGS += -DCONFIG_MP_INCLUDED
  496. endif
  497. ifeq ($(CONFIG_POWER_SAVING), y)
  498. EXTRA_CFLAGS += -DCONFIG_POWER_SAVING
  499. endif
  500. ifeq ($(CONFIG_HW_PWRP_DETECTION), y)
  501. EXTRA_CFLAGS += -DCONFIG_HW_PWRP_DETECTION
  502. endif
  503. ifeq ($(CONFIG_WIFI_TEST), y)
  504. EXTRA_CFLAGS += -DCONFIG_WIFI_TEST
  505. endif
  506. ifeq ($(CONFIG_BT_COEXIST), y)
  507. EXTRA_CFLAGS += -DCONFIG_BT_COEXIST
  508. endif
  509. ifeq ($(CONFIG_RTL8192CU_REDEFINE_1X1), y)
  510. EXTRA_CFLAGS += -DRTL8192C_RECONFIG_TO_1T1R
  511. endif
  512. ifeq ($(CONFIG_INTEL_WIDI), y)
  513. EXTRA_CFLAGS += -DCONFIG_INTEL_WIDI
  514. endif
  515. ifeq ($(CONFIG_WAPI_SUPPORT), y)
  516. EXTRA_CFLAGS += -DCONFIG_WAPI_SUPPORT
  517. endif
  518. ifeq ($(CONFIG_EFUSE_CONFIG_FILE), y)
  519. EXTRA_CFLAGS += -DCONFIG_EFUSE_CONFIG_FILE
  520. endif
  521. ifeq ($(CONFIG_EXT_CLK), y)
  522. EXTRA_CFLAGS += -DCONFIG_EXT_CLK
  523. endif
  524. ifeq ($(CONFIG_FTP_PROTECT), y)
  525. EXTRA_CFLAGS += -DCONFIG_FTP_PROTECT
  526. endif
  527. ifeq ($(CONFIG_RTL8188E), y)
  528. ifeq ($(CONFIG_WOWLAN), y)
  529. EXTRA_CFLAGS += -DCONFIG_WOWLAN
  530. endif
  531. endif
  532. ifeq ($(CONFIG_PLATFORM_I386_PC), y)
  533. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
  534. SUBARCH := $(shell uname -m | sed -e s/i.86/i386/)
  535. ARCH ?= $(SUBARCH)
  536. CROSS_COMPILE ?=
  537. KVER ?= $(shell uname -r)
  538. KSRC ?= /lib/modules/$(KVER)/build
  539. MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/
  540. INSTALL_PREFIX :=
  541. endif
  542. ifeq ($(CONFIG_PLATFORM_ACTIONS_ATM702X), y)
  543. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_ACTIONS_ATM702X
  544. #ARCH := arm
  545. ARCH := $(R_ARCH)
  546. #CROSS_COMPILE := arm-none-linux-gnueabi-
  547. CROSS_COMPILE := $(R_CROSS_COMPILE)
  548. KVER := 3.4.0
  549. #KSRC ?= ../../../../build/out/kernel
  550. KSRC ?= $(KERNEL_BUILD_PATH)
  551. MODULE_NAME :=wlan
  552. endif
  553. ifeq ($(CONFIG_PLATFORM_TI_AM3517), y)
  554. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_SHUTTLE
  555. CROSS_COMPILE := arm-eabi-
  556. KSRC ?= $(shell pwd)/../../../Android/kernel
  557. ARCH := arm
  558. endif
  559. ifeq ($(CONFIG_PLATFORM_MSTAR_TITANIA12), y)
  560. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_MSTAR_TITANIA12
  561. ARCH:=mips
  562. CROSS_COMPILE:= /usr/src/Mstar_kernel/mips-4.3/bin/mips-linux-gnu-
  563. KVER := 2.6.28.9
  564. KSRC ?= /usr/src/Mstar_kernel/2.6.28.9/
  565. endif
  566. ifeq ($(CONFIG_PLATFORM_ANDROID_X86), y)
  567. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
  568. SUBARCH := $(shell uname -m | sed -e s/i.86/i386/)
  569. ARCH := $(SUBARCH)
  570. CROSS_COMPILE := /media/DATA-2/android-x86/ics-x86_20120130/prebuilt/linux-x86/toolchain/i686-unknown-linux-gnu-4.2.1/bin/i686-unknown-linux-gnu-
  571. KSRC ?= /media/DATA-2/android-x86/ics-x86_20120130/out/target/product/generic_x86/obj/kernel
  572. MODULE_NAME :=wlan
  573. endif
  574. ifeq ($(CONFIG_PLATFORM_JB_X86), y)
  575. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
  576. EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
  577. EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
  578. EXTRA_CFLAGS += -DCONFIG_P2P_IPS
  579. SUBARCH := $(shell uname -m | sed -e s/i.86/i386/)
  580. ARCH := $(SUBARCH)
  581. CROSS_COMPILE := /home/android_sdk/android-x86_JB/prebuilts/gcc/linux-x86/x86/i686-linux-android-4.7/bin/i686-linux-android-
  582. KSRC ?= /home/android_sdk/android-x86_JB/out/target/product/x86/obj/kernel/
  583. MODULE_NAME :=wlan
  584. endif
  585. ifeq ($(CONFIG_PLATFORM_ARM_PXA2XX), y)
  586. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
  587. ARCH := arm
  588. CROSS_COMPILE := arm-none-linux-gnueabi-
  589. KVER := 2.6.34.1
  590. KSRC ?= /usr/src/linux-2.6.34.1
  591. endif
  592. ifeq ($(CONFIG_PLATFORM_ARM_S3C2K4), y)
  593. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
  594. ARCH := arm
  595. CROSS_COMPILE := arm-linux-
  596. KVER := 2.6.24.7_$(ARCH)
  597. KSRC ?= /usr/src/kernels/linux-$(KVER)
  598. endif
  599. ifeq ($(CONFIG_PLATFORM_ARM_S3C6K4), y)
  600. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
  601. ARCH := arm
  602. CROSS_COMPILE := arm-none-linux-gnueabi-
  603. KVER := 2.6.34.1
  604. KSRC ?= /usr/src/linux-2.6.34.1
  605. endif
  606. ifeq ($(CONFIG_PLATFORM_ARM_RPI), y)
  607. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
  608. ARCH := arm
  609. CROSS_COMPILE :=
  610. KVER ?= $(shell uname -r)
  611. KSRC ?= /lib/modules/$(KVER)/build
  612. MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/
  613. endif
  614. ifeq ($(CONFIG_PLATFORM_RTD2880B), y)
  615. EXTRA_CFLAGS += -DCONFIG_BIG_ENDIAN -DCONFIG_PLATFORM_RTD2880B
  616. ARCH:=
  617. CROSS_COMPILE:=
  618. KVER ?=
  619. KSRC:=
  620. endif
  621. ifeq ($(CONFIG_PLATFORM_MIPS_RMI), y)
  622. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
  623. ARCH:=mips
  624. CROSS_COMPILE:=mipsisa32r2-uclibc-
  625. KVER ?=
  626. KSRC:= /root/work/kernel_realtek
  627. endif
  628. ifeq ($(CONFIG_PLATFORM_MIPS_PLM), y)
  629. EXTRA_CFLAGS += -DCONFIG_BIG_ENDIAN
  630. ARCH:=mips
  631. CROSS_COMPILE:=mipsisa32r2-uclibc-
  632. KVER ?=
  633. KSRC:= /root/work/kernel_realtek
  634. endif
  635. ifeq ($(CONFIG_PLATFORM_MSTAR389), y)
  636. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_MSTAR389
  637. ARCH:=mips
  638. CROSS_COMPILE:= mips-linux-gnu-
  639. KVER := 2.6.28.10
  640. KSRC:= /home/mstar/mstar_linux/2.6.28.9/
  641. endif
  642. ifeq ($(CONFIG_PLATFORM_MIPS_AR9132), y)
  643. EXTRA_CFLAGS += -DCONFIG_BIG_ENDIAN
  644. ARCH := mips
  645. CROSS_COMPILE := mips-openwrt-linux-
  646. KSRC ?= /home/alex/test_openwrt/tmp/linux-2.6.30.9
  647. endif
  648. ifeq ($(CONFIG_PLATFORM_DMP_PHILIPS), y)
  649. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DRTK_DMP_PLATFORM
  650. ARCH := mips
  651. #CROSS_COMPILE:=/usr/local/msdk-4.3.6-mips-EL-2.6.12.6-0.9.30.3/bin/mipsel-linux-
  652. CROSS_COMPILE:=/usr/local/toolchain_mipsel/bin/mipsel-linux-
  653. KSRC ?=/usr/local/Jupiter/linux-2.6.12
  654. endif
  655. ifeq ($(CONFIG_PLATFORM_RTK_DMP), y)
  656. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DRTK_DMP_PLATFORM
  657. ARCH:=mips
  658. CROSS_COMPILE:=mipsel-linux-
  659. KVER ?=
  660. KSRC ?= /usr/src/DMP_Kernel/jupiter/linux-2.6.12
  661. endif
  662. ifeq ($(CONFIG_PLATFORM_MT53XX), y)
  663. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_MT53XX
  664. ARCH:= arm
  665. CROSS_COMPILE:= arm11_mtk_le-
  666. KVER := 2.6.27
  667. KSRC?= /proj/mtk00802/BD_Compare/BDP/Dev/BDP_V301/BDP_Linux/linux-2.6.27
  668. endif
  669. ifeq ($(CONFIG_PLATFORM_ARM_MX51_241H), y)
  670. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_WISTRON_PLATFORM
  671. ARCH := arm
  672. CROSS_COMPILE := /opt/freescale/usr/local/gcc-4.1.2-glibc-2.5-nptl-3/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-
  673. KVER := 2.6.31
  674. KSRC ?= /lib/modules/2.6.31-770-g0e46b52/source
  675. endif
  676. ifeq ($(CONFIG_PLATFORM_FS_MX61), y)
  677. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
  678. ARCH := arm
  679. CROSS_COMPILE := /home/share/CusEnv/FreeScale/arm-eabi-4.4.3/bin/arm-eabi-
  680. KSRC ?= /home/share/CusEnv/FreeScale/FS_kernel_env
  681. endif
  682. ifeq ($(CONFIG_PLATFORM_ACTIONS_ATJ227X), y)
  683. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ACTIONS_ATJ227X
  684. ARCH := mips
  685. CROSS_COMPILE := /home/cnsd4/project/actions/tools-2.6.27/bin/mipsel-linux-gnu-
  686. KVER := 2.6.27
  687. KSRC ?= /home/cnsd4/project/actions/linux-2.6.27.28
  688. endif
  689. ifeq ($(CONFIG_PLATFORM_TI_DM365), y)
  690. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_TI_DM365
  691. ARCH := arm
  692. CROSS_COMPILE := /home/cnsd4/Appro/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin/arm_v5t_le-
  693. KVER := 2.6.18
  694. KSRC ?= /home/cnsd4/Appro/mv_pro_5.0/montavista/pro/devkit/lsp/ti-davinci/linux-dm365
  695. endif
  696. ifeq ($(CONFIG_PLATFORM_TEGRA3_CARDHU), y)
  697. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
  698. # default setting for Android 4.1, 4.2
  699. EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
  700. EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
  701. EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
  702. EXTRA_CFLAGS += -DCONFIG_P2P_IPS
  703. ARCH := arm
  704. CROSS_COMPILE := /home/android_sdk/nvidia/tegra-16r3-partner-android-4.1_20120723/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
  705. KSRC ?= /home/android_sdk/nvidia/tegra-16r3-partner-android-4.1_20120723/out/target/product/cardhu/obj/KERNEL
  706. MODULE_NAME := wlan
  707. endif
  708. ifeq ($(CONFIG_PLATFORM_TEGRA4_DALMORE), y)
  709. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
  710. # default setting for Android 4.1, 4.2
  711. EXTRA_CFLAGS += -DRTW_ENABLE_WIFI_CONTROL_FUNC
  712. EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
  713. EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
  714. EXTRA_CFLAGS += -DCONFIG_P2P_IPS
  715. ARCH := arm
  716. CROSS_COMPILE := /home/android_sdk/nvidia/tegra-17r9-partner-android-4.2-dalmore_20130131/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi-
  717. KSRC ?= /home/android_sdk/nvidia/tegra-17r9-partner-android-4.2-dalmore_20130131/out/target/product/dalmore/obj/KERNEL
  718. MODULE_NAME := wlan
  719. endif
  720. ifeq ($(CONFIG_PLATFORM_ARM_TCC8900), y)
  721. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
  722. ARCH := arm
  723. CROSS_COMPILE := /home/android_sdk/Telechips/SDK_2304_20110613/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
  724. KSRC ?= /home/android_sdk/Telechips/SDK_2304_20110613/kernel
  725. MODULE_NAME := wlan
  726. endif
  727. ifeq ($(CONFIG_PLATFORM_ARM_TCC8920), y)
  728. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
  729. ARCH := arm
  730. CROSS_COMPILE := /home/android_sdk/Telechips/v12.06_r1-tcc-android-4.0.4/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
  731. KSRC ?= /home/android_sdk/Telechips/v12.06_r1-tcc-android-4.0.4/kernel
  732. MODULE_NAME := wlan
  733. endif
  734. ifeq ($(CONFIG_PLATFORM_ARM_TCC8920_JB42), y)
  735. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
  736. # default setting for Android 4.1, 4.2
  737. EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
  738. EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
  739. EXTRA_CFLAGS += -DCONFIG_P2P_IPS
  740. ARCH := arm
  741. CROSS_COMPILE := /home/android_sdk/Telechips/v13.03_r1-tcc-android-4.2.2_ds_patched/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi-
  742. KSRC ?= /home/android_sdk/Telechips/v13.03_r1-tcc-android-4.2.2_ds_patched/kernel
  743. MODULE_NAME := wlan
  744. endif
  745. ifeq ($(CONFIG_PLATFORM_ARM_RK2818), y)
  746. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDROID -DCONFIG_PLATFORM_ROCKCHIPS -DCONFIG_MINIMAL_MEMORY_USAGE
  747. ARCH := arm
  748. CROSS_COMPILE := /usr/src/release_fae_version/toolchain/arm-eabi-4.4.0/bin/arm-eabi-
  749. KSRC ?= /usr/src/release_fae_version/kernel25_A7_281x
  750. MODULE_NAME := wlan
  751. endif
  752. ifeq ($(CONFIG_PLATFORM_ARM_URBETTER), y)
  753. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN #-DCONFIG_MINIMAL_MEMORY_USAGE
  754. ARCH := arm
  755. CROSS_COMPILE := /media/DATA-1/urbetter/arm-2009q3/bin/arm-none-linux-gnueabi-
  756. KSRC ?= /media/DATA-1/urbetter/ics-urbetter/kernel
  757. MODULE_NAME := wlan
  758. endif
  759. ifeq ($(CONFIG_PLATFORM_ARM_TI_PANDA), y)
  760. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN #-DCONFIG_MINIMAL_MEMORY_USAGE
  761. ARCH := arm
  762. #CROSS_COMPILE := /media/DATA-1/aosp/ics-aosp_20111227/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
  763. #KSRC ?= /media/DATA-1/aosp/android-omap-panda-3.0_20120104
  764. CROSS_COMPILE := /media/DATA-1/android-4.0/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
  765. KSRC ?= /media/DATA-1/android-4.0/panda_kernel/omap
  766. MODULE_NAME := wlan
  767. endif
  768. ifeq ($(CONFIG_PLATFORM_MIPS_JZ4760), y)
  769. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_MINIMAL_MEMORY_USAGE
  770. ARCH ?= mips
  771. CROSS_COMPILE ?= /mnt/sdb5/Ingenic/Umido/mips-4.3/bin/mips-linux-gnu-
  772. KSRC ?= /mnt/sdb5/Ingenic/Umido/kernel
  773. endif
  774. ifeq ($(CONFIG_PLATFORM_SZEBOOK), y)
  775. EXTRA_CFLAGS += -DCONFIG_BIG_ENDIAN
  776. ARCH:=arm
  777. CROSS_COMPILE:=/opt/crosstool2/bin/armeb-unknown-linux-gnueabi-
  778. KVER := 2.6.31.6
  779. KSRC:= ../code/linux-2.6.31.6-2020/
  780. endif
  781. #Add setting for MN10300
  782. ifeq ($(CONFIG_PLATFORM_MN10300), y)
  783. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_MN10300
  784. ARCH := mn10300
  785. CROSS_COMPILE := mn10300-linux-
  786. KVER := 2.6.32.2
  787. KSRC ?= /home/winuser/work/Plat_sLD2T_V3010/usr/src/linux-2.6.32.2
  788. INSTALL_PREFIX :=
  789. endif
  790. ifeq ($(CONFIG_PLATFORM_ARM_SUNxI), y)
  791. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ARM_SUNxI
  792. ARCH := arm
  793. CROSS_COMPILE := arm-none-linux-gnueabi-
  794. KVER := 3.0.8
  795. #KSRC:= ../lichee/linux-3.0/
  796. endif
  797. ifeq ($(CONFIG_PLATFORM_ARM_SUN6I), y)
  798. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
  799. EXTRA_CFLAGS += -DCONFIG_PLATFORM_ARM_SUN6I
  800. EXTRA_CFLAGS += -DCONFIG_USE_USB_BUFFER_ALLOC_TX
  801. # default setting for Android 4.1, 4.2
  802. EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
  803. EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 -DRTW_USE_CFG80211_STA_EVENT
  804. EXTRA_CFLAGS += -DCONFIG_P2P_IPS
  805. ARCH := arm
  806. CROSS_COMPILE := arm-none-linux-gnueabi-
  807. KVER := 3.3.0
  808. #KSRC:= ../lichee/linux-3.3/
  809. endif
  810. ifeq ($(CONFIG_PLATFORM_ACTIONS_ATV5201), y)
  811. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ACTIONS_ATV5201
  812. ARCH := mips
  813. CROSS_COMPILE := mipsel-linux-gnu-
  814. KVER := $(KERNEL_VER)
  815. KSRC:= $(CFGDIR)/../../kernel/linux-$(KERNEL_VER)
  816. endif
  817. ifeq ($(CONFIG_PLATFORM_PPC), y)
  818. EXTRA_CFLAGS += -DCONFIG_BIG_ENDIAN
  819. SUBARCH := $(shell uname -m | sed -e s/ppc/powerpc/)
  820. ARCH ?= $(SUBARCH)
  821. CROSS_COMPILE ?=
  822. KVER ?= $(shell uname -r)
  823. KSRC ?= /lib/modules/$(KVER)/build
  824. MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/
  825. INSTALL_PREFIX :=
  826. endif
  827. ifeq ($(CONFIG_MULTIDRV), y)
  828. ifeq ($(CONFIG_SDIO_HCI), y)
  829. MODULE_NAME := rtw_sdio
  830. endif
  831. ifeq ($(CONFIG_USB_HCI), y)
  832. MODULE_NAME := rtw_usb
  833. endif
  834. ifeq ($(CONFIG_PCI_HCI), y)
  835. MODULE_NAME := rtw_pci
  836. endif
  837. endif
  838. ifneq ($(USER_MODULE_NAME),)
  839. MODULE_NAME := $(USER_MODULE_NAME)
  840. endif
  841. ifneq ($(KERNELRELEASE),)
  842. rtk_core := core/rtw_cmd.o \
  843. core/rtw_security.o \
  844. core/rtw_debug.o \
  845. core/rtw_io.o \
  846. core/rtw_ioctl_query.o \
  847. core/rtw_ioctl_set.o \
  848. core/rtw_ieee80211.o \
  849. core/rtw_mlme.o \
  850. core/rtw_mlme_ext.o \
  851. core/rtw_wlan_util.o \
  852. core/rtw_vht.o \
  853. core/rtw_pwrctrl.o \
  854. core/rtw_rf.o \
  855. core/rtw_recv.o \
  856. core/rtw_sta_mgt.o \
  857. core/rtw_ap.o \
  858. core/rtw_xmit.o \
  859. core/rtw_p2p.o \
  860. core/rtw_tdls.o \
  861. core/rtw_br_ext.o \
  862. core/rtw_iol.o \
  863. core/rtw_sreset.o\
  864. core/efuse/rtw_efuse.o
  865. $(MODULE_NAME)-y += $(rtk_core)
  866. $(MODULE_NAME)-$(CONFIG_INTEL_WIDI) += core/rtw_intel_widi.o
  867. $(MODULE_NAME)-$(CONFIG_WAPI_SUPPORT) += core/rtw_wapi.o \
  868. core/rtw_wapi_sms4.o
  869. $(MODULE_NAME)-y += $(_OS_INTFS_FILES)
  870. $(MODULE_NAME)-y += $(_HAL_INTFS_FILES)
  871. $(MODULE_NAME)-y += $(_OUTSRC_FILES)
  872. $(MODULE_NAME)-$(CONFIG_MP_INCLUDED) += core/rtw_mp.o \
  873. core/rtw_mp_ioctl.o
  874. ifeq ($(CONFIG_RTL8723A), y)
  875. $(MODULE_NAME)-$(CONFIG_MP_INCLUDED)+= core/rtw_bt_mp.o
  876. endif
  877. ifeq ($(CONFIG_RTL8723B), y)
  878. $(MODULE_NAME)-$(CONFIG_MP_INCLUDED)+= core/rtw_bt_mp.o
  879. endif
  880. obj-$(CONFIG_RTL8812AU_8821AU) := $(MODULE_NAME).o
  881. else
  882. export CONFIG_RTL8812AU_8821AU = m
  883. all: modules
  884. modules:
  885. $(MAKE) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) -C $(KSRC) M=$(shell pwd) modules
  886. strip:
  887. $(CROSS_COMPILE)strip $(MODULE_NAME).ko --strip-unneeded
  888. install:
  889. install -p -m 644 $(MODULE_NAME).ko $(MODDESTDIR)
  890. /sbin/depmod -a ${KVER}
  891. uninstall:
  892. rm -f $(MODDESTDIR)/$(MODULE_NAME).ko
  893. /sbin/depmod -a ${KVER}
  894. config_r:
  895. @echo "make config"
  896. /bin/bash script/Configure script/config.in
  897. .PHONY: modules clean
  898. clean:
  899. cd hal/OUTSRC/ ; rm -fr */*.mod.c */*.mod */*.o */.*.cmd */*.ko
  900. cd hal/OUTSRC/ ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
  901. cd hal/led ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
  902. cd hal ; rm -fr */*/*.mod.c */*/*.mod */*/*.o */*/.*.cmd */*/*.ko
  903. cd hal ; rm -fr */*.mod.c */*.mod */*.o */.*.cmd */*.ko
  904. cd hal ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
  905. cd core/efuse ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
  906. cd core ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
  907. cd os_dep/linux ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
  908. cd os_dep ; rm -fr *.mod.c *.mod *.o .*.cmd *.ko
  909. rm -fr Module.symvers ; rm -fr Module.markers ; rm -fr modules.order
  910. rm -fr *.mod.c *.mod *.o .*.cmd *.ko *~
  911. rm -fr .tmp_versions
  912. endif