summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/nmi_android4.4_driver/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/nmi_android4.4_driver/Makefile')
-rwxr-xr-xdrivers/net/wireless/nmi_android4.4_driver/Makefile845
1 files changed, 845 insertions, 0 deletions
diff --git a/drivers/net/wireless/nmi_android4.4_driver/Makefile b/drivers/net/wireless/nmi_android4.4_driver/Makefile
new file mode 100755
index 00000000..127b59c3
--- /dev/null
+++ b/drivers/net/wireless/nmi_android4.4_driver/Makefile
@@ -0,0 +1,845 @@
+#############################################################################################
+#
+# The supported Target List. ( TARGET_PLATFORM = Core Name + Code Name + Product Name )
+# Input one of the list below in TARGET_PLATFORM.
+# If new target is needed, Add item in the list below and Fill the relative options later.
+#
+# 1. TARGET_AML8726M3_MESON_VI30
+# 2. TARGET_MTK6575M_EAGLE75V1
+# 3. TARGET_ALLWINNER_A10_EVB
+# 4. TARGET_PANDABOARD_ES_EVB
+# 5. TARGET_VIA_WMS8304
+# 6. TARGET_VIA_WM8880
+# 7. TARGET_ALLWINNER_A20
+# 8. TARGET_ALLWINNER_A23
+# 9. TARGET_CLG_CLM9722
+# 10. TARGET_ALLWINNER_A31
+# 11. TARGET_RKXXXX
+#
+#############################################################################################
+
+
+#TARGET_PLATFORM = TARGET_AML8726M3_MESON_VI30
+#TARGET_PLATFORM = TARGET_ALLWINNER_A10_EVB
+#TARGET_PLATFORM = TARGET_PANDABOARD_ES_EVB
+#TARGET_PLATFORM = TARGET_VIA_WMS8304
+TARGET_PLATFORM = TARGET_VIA_WM8880
+#TARGET_PLATFORM = TARGET_CLG_CLM9722
+#TARGET_PLATFORM = TARGET_AMBRELLA
+#TARGET_PLATFORM = TARGET_LINUX_X86
+#TARGET_PLATFORM = TARGET_ALLWINNER_A20
+#TARGET_PLATFORM = TARGET_ALLWINNER_A23
+#TARGET_PLATFORM = TARGET_ALLWINNER_A31
+#TARGET_PLATFORM = TARGET_RKXXXX
+
+#############################################################################################
+# Makefile generated by johnny
+#
+# If you want to use the current Makefile in another platform, modify environment value below.
+# 1. TARGET_PLATFORM
+# 2. NMC1000_SRC_VERSION [define for NMC1000 Driver Version ( This has to be equal to Driver folder and Firmware file name )]
+# NMC1000_FW_VERSION [ Not define by default. But if there is the updated bin additionally, 1,2,3,... ]
+# 3. MODULE_NAME
+# 4. DEBFLAGS
+# 5. bus type
+# 6. Additional Bus type
+# 7. CONFIG_DEBUGFS_ENABLE
+# 8. Host AP
+#############################################################################################
+
+################################################################
+# Amlogic
+################################################################
+ifeq ($(strip $(TARGET_PLATFORM)), TARGET_AML8726M3_MESON_VI30)
+
+# 1.
+ TARGET_ARCH = PLAT_AML8726_M3
+
+# 2.
+ NMC1000_SRC_VERSION = 5.1
+
+# 3.
+ MODULE_NAME = nmi_wifi
+
+# 4.
+ DEBFLAGS = -O -g
+
+# 5.
+ ifeq ($(strip $(CONFIG_NMC1XXX_USE_SDIO_BUS)),y)
+ BUS_TYPE = NMI_SDIO
+ else
+ BUS_TYPE = NMI_SPI
+ endif
+
+# 6.
+ ifeq ($(strip $(CONFIG_NMC1XXX_HW_OOB_INTR)),y)
+ IRQ_MODE = USE_EXT_IRQ_FOR_SDIO
+ else
+
+ endif
+
+# 7.
+ ifeq ($(strip $(CONFIG_NMC1XXX_ENABLE_DEBUGFS)),y)
+ EXTRA_CFLAGS += -DNMC_DEBUGFS
+ endif
+
+endif
+
+
+################################################################
+# MediaTek
+################################################################
+ifeq ($(strip $(TARGET_PLATFORM)), TARGET_MTK6575M_EAGLE75V1)
+
+# 1.
+ TARGET_ARCH = PLAT_MT6575M
+
+# 2.
+ NMC1000_SRC_VERSION = 4.0
+
+# 3.
+ MODULE_NAME = nmi_wifi
+ CONFIG_NMC1XXX_WIFI_MODULE=m
+
+# 4.
+ DEBFLAGS = -O -g
+
+# 5.
+ ifeq ($(strip $(CONFIG_NMC1XXX_USE_SDIO_BUS)),y)
+ BUS_TYPE = NMI_SDIO
+ else
+ BUS_TYPE = NMI_SPI
+ endif
+
+# 6.
+ ifeq ($(strip $(CONFIG_NMC1XXX_HW_OOB_INTR)),y)
+ EXTRA_CFLAGS += -DNMI_SDIO_IRQ_GPIO
+ endif
+
+# 7.
+ ifeq ($(strip $(CONFIG_NMC1XXX_ENABLE_DEBUGFS)),y)
+ EXTRA_CFLAGS += -DNMC_DEBUGFS
+ endif
+
+endif
+
+################################################################
+# Allwinner (A10 EVB)
+################################################################
+ifeq ($(strip $(TARGET_PLATFORM)), TARGET_ALLWINNER_A10_EVB)
+
+# 1.
+ TARGET_ARCH = PLAT_ALLWINNER_A10
+
+# 2.
+ NMC1000_SRC_VERSION = 6.2
+ NMC1000_FW_VERSION = 1
+
+# 3.
+ MODULE_NAME = nmi_wifi
+ CONFIG_NMC1XXX_WIFI_MODULE=m
+
+# 4.
+ DEBFLAGS = -O -g
+
+# 5.
+ BUS_TYPE = NMI_SDIO
+
+# 6.
+ ifeq ($(strip $(CONFIG_NMC1XXX_HW_OOB_INTR)),y)
+ EXTRA_CFLAGS += -DNMI_SDIO_IRQ_GPIO
+ endif
+
+endif
+
+################################################################
+# Allwinner (A20)
+################################################################
+ifeq ($(strip $(TARGET_PLATFORM)), TARGET_ALLWINNER_A20)
+
+# 1.
+ TARGET_ARCH = PLAT_ALLWINNER_A20
+
+# 2.
+ NMC1000_SRC_VERSION = 9.3
+ PATCHLEVEL = 3
+ NMC1000_FW_VERSION = 0
+
+# 3.
+ MODULE_NAME = nmi_wifi
+
+# 4.
+ DEBFLAGS = -O -g
+
+# 5.
+ ifeq ($(strip $(CONFIG_NMC1XXX_USE_SDIO_BUS)),y)
+ BUS_TYPE = NMI_SDIO
+ else
+ BUS_TYPE = NMI_SPI
+ endif
+
+# 6.
+ ifeq ($(strip $(CONFIG_NMC1XXX_HW_OOB_INTR)),y)
+ IRQ_MODE = USE_EXT_IRQ_FOR_SDIO
+ else
+
+ endif
+
+# 7.
+ ifeq ($(strip $(CONFIG_NMC1XXX_ENABLE_DEBUGFS)),y)
+ EXTRA_CFLAGS += -DNMC_DEBUGFS
+ endif
+
+endif
+
+################################################################
+# Allwinner (A23)
+################################################################
+ifeq ($(strip $(TARGET_PLATFORM)), TARGET_ALLWINNER_A23)
+
+# 1.
+ TARGET_ARCH = PLAT_ALLWINNER_A23
+
+# 2.
+ NMC1000_SRC_VERSION = 9.3
+ PATCHLEVEL = 3
+ NMC1000_FW_VERSION = 0
+
+# 3.
+ MODULE_NAME = nmi_wifi
+
+# 4.
+ DEBFLAGS = -O -g
+
+# 5.
+ ifeq ($(strip $(CONFIG_NMC1XXX_USE_SDIO_BUS)),y)
+ BUS_TYPE = NMI_SDIO
+ else
+ BUS_TYPE = NMI_SPI
+ endif
+
+# 6.
+ ifeq ($(strip $(CONFIG_NMC1XXX_HW_OOB_INTR)),y)
+ IRQ_MODE = USE_EXT_IRQ_FOR_SDIO
+ else
+
+ endif
+
+# 7.
+ ifeq ($(strip $(CONFIG_NMC1XXX_ENABLE_DEBUGFS)),y)
+ EXTRA_CFLAGS += -DNMC_DEBUGFS
+ endif
+
+endif
+
+################################################################
+# Allwinner (A31)
+################################################################
+ifeq ($(strip $(TARGET_PLATFORM)), TARGET_ALLWINNER_A31)
+
+# 1.
+ TARGET_ARCH = PLAT_ALLWINNER_A31
+
+# 2.
+ NMC1000_SRC_VERSION = 9.3
+ PATCHLEVEL = 6
+ NMC1000_FW_VERSION = 0
+
+# 3.
+ MODULE_NAME = nmi_wifi
+
+# 4.
+ DEBFLAGS = -O -g
+
+# 5.
+ ifeq ($(strip $(CONFIG_NMC1XXX_USE_SDIO_BUS)),y)
+ BUS_TYPE = NMI_SDIO
+ else
+ BUS_TYPE = NMI_SPI
+ endif
+
+# 6.
+ ifeq ($(strip $(CONFIG_NMC1XXX_HW_OOB_INTR)),y)
+ IRQ_MODE = USE_EXT_IRQ_FOR_SDIO
+ else
+
+ endif
+
+# 7.
+ ifeq ($(strip $(CONFIG_NMC1XXX_ENABLE_DEBUGFS)),y)
+ EXTRA_CFLAGS += -DNMC_DEBUGFS
+ endif
+
+endif
+
+################################################################
+# Pandaboard
+################################################################
+ifeq ($(strip $(TARGET_PLATFORM)), TARGET_PANDABOARD_ES_EVB)
+
+# 1.
+ TARGET_ARCH = PLAT_PANDA_ES_OMAP4460
+
+# 2.
+ NMC1000_SRC_VERSION = 7.0
+ #NMC1000_FW_VERSION = 1
+
+# 3.
+ MODULE_NAME = nmi_wifi
+ CONFIG_NMC1XXX_WIFI_MODULE=m
+
+# 4.
+ DEBFLAGS = -O -g
+
+# 5.
+ BUS_TYPE = NMI_SDIO
+endif
+
+################################################################
+# VIA WM8801 ( == Masking Name)
+################################################################
+ifeq ($(strip $(TARGET_PLATFORM)), TARGET_VIA_WMS8304)
+
+# 1.
+ TARGET_ARCH = PLAT_WMS8304
+
+# 2.
+ NMC1000_SRC_VERSION = 6.2
+ #NMC1000_FW_VERSION = 1
+
+# 3.
+ MODULE_NAME = nmc1000
+ CONFIG_NMC1XXX_WIFI_MODULE=m
+
+# 4.
+ DEBFLAGS = -O -g
+
+# 5.
+ ifeq ($(strip $(CONFIG_NMC1XXX_USE_SDIO_BUS)),y)
+ BUS_TYPE = NMI_SDIO
+ else
+ BUS_TYPE = NMI_SPI
+ endif
+
+# 6.
+ ifeq ($(strip $(CONFIG_NMC1XXX_HW_OOB_INTR)),y)
+ #EXTRA_CFLAGS += -DNMI_SDIO_IRQ_GPIO
+ IRQ_MODE = USE_EXT_IRQ_FOR_SDIO
+ endif
+
+# 7.
+ ifeq ($(strip $(CONFIG_NMC1XXX_ENABLE_DEBUGFS)),y)
+ EXTRA_CFLAGS += -DNMC_DEBUGFS
+ endif
+
+endif
+
+################################################################
+# VIA WM8880 ( == Masking Name)
+################################################################
+ifeq ($(strip $(TARGET_PLATFORM)), TARGET_VIA_WM8880)
+
+# 1.
+ TARGET_ARCH = PLAT_WM8880
+
+# 2.
+ NMC1000_SRC_VERSION = 9.3
+ PATCHLEVEL = 6
+ NMC1000_FW_VERSION = 0
+
+# 3.
+ MODULE_NAME = nmc1000_android4.4
+ CONFIG_NMC1XXX_WIFI_MODULE=m
+
+# 4.
+ DEBFLAGS = -O -g
+
+# 5.
+ CONFIG_NMC1XXX_USE_SDIO_BUS = y
+ ifeq ($(strip $(CONFIG_NMC1XXX_USE_SDIO_BUS)),y)
+ BUS_TYPE = NMI_SDIO
+ else
+ BUS_TYPE = NMI_SPI
+ endif
+
+# 6.
+ CONFIG_NMC1XXX_HW_OOB_INTR = y
+ ifeq ($(strip $(CONFIG_NMC1XXX_HW_OOB_INTR)),y)
+ #EXTRA_CFLAGS += -DNMI_SDIO_IRQ_GPIO
+ IRQ_MODE = USE_EXT_IRQ_FOR_SDIO
+ endif
+
+# 7.
+ ifeq ($(strip $(CONFIG_NMC1XXX_ENABLE_DEBUGFS)),y)
+ EXTRA_CFLAGS += -DNMC_DEBUGFS
+ endif
+
+endif
+
+################################################################
+# CORELOGIC CLM9722
+################################################################
+ifeq ($(strip $(TARGET_PLATFORM)), TARGET_CLG_CLM9722)
+
+# 1.
+ TARGET_ARCH = PLAT_CLM9722
+
+# 2.
+ NMC1000_SRC_VERSION = 7.2
+ PATCHLEVEL = 4
+ NMC1000_FW_VERSION = 3
+
+# 3.
+ MODULE_NAME = nmi_wifi
+ CONFIG_NMC1XXX_WIFI_MODULE=m
+
+# 4.
+ DEBFLAGS = -O -g
+
+# 5.
+ ifeq ($(strip $(CONFIG_NMC1XXX_USE_SDIO_BUS)),y)
+ BUS_TYPE = NMI_SDIO
+ else
+ BUS_TYPE = NMI_SPI
+ endif
+
+# 6.
+ ifeq ($(strip $(CONFIG_NMC1XXX_HW_OOB_INTR)),y)
+ #EXTRA_CFLAGS += -DNMI_SDIO_IRQ_GPIO
+ IRQ_MODE = USE_EXT_IRQ_FOR_SDIO
+ endif
+
+# 7.
+ ifeq ($(strip $(CONFIG_NMC1XXX_ENABLE_DEBUGFS)),y)
+ EXTRA_CFLAGS += -DNMC_DEBUGFS
+ endif
+
+endif
+
+################################################################
+# Rockchip
+################################################################
+ifeq ($(strip $(TARGET_PLATFORM)), TARGET_RKXXXX)
+
+# 1.
+ TARGET_ARCH = PLAT_RKXXXX
+
+# 2.
+ NMC1000_SRC_VERSION = 9.3
+ PATCHLEVEL = 4
+ NMC1000_FW_VERSION = 0
+
+# 3.
+ MODULE_NAME = nmc1000
+ CONFIG_NMC1XXX_WIFI_MODULE=m
+
+# 4.
+ DEBFLAGS = -O -g
+
+# 5.
+ ifeq ($(strip $(CONFIG_NMC1XXX_USE_SDIO_BUS)),y)
+ BUS_TYPE = NMI_SDIO
+ else
+ BUS_TYPE = NMI_SPI
+ endif
+
+# 6.
+ ifeq ($(strip $(CONFIG_NMC1XXX_HW_OOB_INTR)),y)
+ IRQ_MODE = USE_EXT_IRQ_FOR_SDIO
+ endif
+
+# 7.
+ ifeq ($(strip $(CONFIG_NMC1XXX_ENABLE_DEBUGFS)),y)
+ EXTRA_CFLAGS += -DNMC_DEBUGFS
+ endif
+
+endif
+
+
+#################################################################
+# AMBRELLA LINUX PLATFORM
+#################################################################
+ifeq ($(strip $(TARGET_PLATFORM)), TARGET_AMBRELLA)
+ TARGET_ARCH = PLAT_AMBRELLA
+ NMC1000_SRC_VERSION = 7.2
+ PATCHLEVEL = 4
+ NMC1000_FW_VERSION = 3
+
+ MODULE_NAME = nmi_wifi
+ CONFIG_NMC1XXX_WIFI_MODULE=m
+ DEBFLAGS = -O -g
+
+ ifeq ($(strip $(CONFIG_NMC1XXX_USE_SDIO_BUS)), y)
+ BUS_TYPE = NMI_SDIO
+ else
+ BUS_TYPE = NMI_SPI
+ endif
+
+ ifeq ($(strip $(CONFIG_NMC1XXX_HW_OOB_INTR)), y)
+ IRQ_MODE = USE_EXT_IRQ_FOR_SDIO
+ endif
+
+ ifeq ($(strip, $(CONFIG_NMC1XXX_ENABLE_DEBUGFS)), y)
+ EXTRA_CFLAGS += -DNMC_DEBUGFS
+ endif
+endif
+######################################################################################
+
+#################################################################
+# AMBRELLA LINUX PLATFORM
+#################################################################
+ifeq ($(strip $(TARGET_PLATFORM)), TARGET_LINUX_X86)
+ TARGET_ARCH = PLAT_UBUNTU_X86
+ NMC1000_SRC_VERSION = 7.2
+ NMC1000_FW_VERSION = 2
+ MODULE_NAME = nmi_wifi
+ CONFIG_NMC1XXX_WIFI_MODULE=m
+ DEBFLAGS = -O -g
+
+ BUS_TYPE = NMI_SDIO
+
+ #IRQ_MODE = USE_EXT_IRQ_FOR_SDIO
+ #EXTRA_CFLAGS += -DNMC_DEBUGFS
+ endif
+######################################################################################
+
+#_____________________________________________________________________________________
+
+# 1.
+EXTRA_CFLAGS += -D$(TARGET_ARCH)
+
+# 2.
+NMC1000_STA_FW_VERSION = STA_FIRMWARE=\"wifi_firmware$(NMC1000_SRC_VERSION).$(NMC1000_FW_VERSION).bin\"
+NMC1000_AP_FW_VERSION = AP_FIRMWARE=\"wifi_firmware_ap$(NMC1000_SRC_VERSION).$(NMC1000_FW_VERSION).bin\"
+NMC1000_P2P_CONCURRENCY_FIRMWARE = P2P_CONCURRENCY_FIRMWARE=\"wifi_firmware_p2p_concurrency$(NMC1000_SRC_VERSION).$(NMC1000_FW_VERSION).bin\"
+
+#EXTRA_CFLAGS += -D$(NMC1000_STA_FW_VERSION)
+#EXTRA_CFLAGS += -D$(NMC1000_AP_FW_VERSION)
+#EXTRA_CFLAGS += -D$(NMC1000_P2P_CONCURRENCY_FIRMWARE)
+
+EXTRA_CFLAGS += -D__DRIVER_VERSION__=\"$(NMC1000_SRC_VERSION).$(PATCHLEVEL)\"
+
+ifeq ($(strip $(NMC1000_SRC_VERSION)), 3.2)
+ EXTRA_CFLAGS += -DNMC_ASIC_A0
+ EXTRA_CFLAGS += -DPLL_WORKAROUND
+ EXTRA_CFLAGS += -DCONNECT_DIRECT
+endif
+
+ifeq ($(strip $(NMC1000_SRC_VERSION)), 4.0)
+ EXTRA_CFLAGS += -DNMC_ASIC_A0
+ EXTRA_CFLAGS += -DPLL_WORKAROUND
+ EXTRA_CFLAGS += -DCONNECT_DIRECT
+ EXTRA_CFLAGS += -DNMI_PARSE_SCAN_IN_HOST
+endif
+
+ifeq ($(strip $(NMC1000_SRC_VERSION)), 5.0)
+ EXTRA_CFLAGS += -DNMC_ASIC_A0
+ EXTRA_CFLAGS += -DPLL_WORKAROUND
+ EXTRA_CFLAGS += -DCONNECT_DIRECT
+ EXTRA_CFLAGS += -DNMI_PARSE_SCAN_IN_HOST
+endif
+
+ifeq ($(strip $(NMC1000_SRC_VERSION)), 5.1)
+ EXTRA_CFLAGS += -DNMC_ASIC_A0
+ EXTRA_CFLAGS += -DPLL_WORKAROUND
+ EXTRA_CFLAGS += -DCONNECT_DIRECT
+ EXTRA_CFLAGS += -DNMI_PARSE_SCAN_IN_HOST
+endif
+
+ifeq ($(strip $(NMC1000_SRC_VERSION)), 5.2)
+ EXTRA_CFLAGS += -DNMC_ASIC_A0
+ EXTRA_CFLAGS += -DPLL_WORKAROUND
+ EXTRA_CFLAGS += -DCONNECT_DIRECT
+ EXTRA_CFLAGS += -DNMI_PARSE_SCAN_IN_HOST
+
+ # EXTRA_CFLAGS += -DNMI_AP_EXTERNAL_MLME
+endif
+
+ifeq ($(strip $(NMC1000_SRC_VERSION)), 6.0)
+ EXTRA_CFLAGS += -DNMC_ASIC_A0
+ EXTRA_CFLAGS += -DPLL_WORKAROUND
+ EXTRA_CFLAGS += -DCONNECT_DIRECT
+ EXTRA_CFLAGS += -DNMI_PARSE_SCAN_IN_HOST
+ EXTRA_CFLAGS += -DREG_0XF6_NOT_CLEAR_BUG_FIX
+
+ #Use external 1.4V VDD_VCO
+ # EXTRA_CFLAGS += -DVCO_14_SUPPLY
+
+endif
+
+ifeq ($(strip $(NMC1000_SRC_VERSION)), 6.1)
+ EXTRA_CFLAGS += -DNMC_ASIC_A0
+ EXTRA_CFLAGS += -DPLL_WORKAROUND
+ EXTRA_CFLAGS += -DCONNECT_DIRECT
+ EXTRA_CFLAGS += -DNMI_PARSE_SCAN_IN_HOST
+ EXTRA_CFLAGS += -DREG_0XF6_NOT_CLEAR_BUG_FIX
+
+ #Use external 1.4V VDD_VCO
+ # EXTRA_CFLAGS += -DVCO_14_SUPPLY
+
+ #johnny private debug (default use)
+ #EXTRA_CFLAGS += -DUNUSE_POWER_MGMT
+endif
+
+ifeq ($(strip $(NMC1000_SRC_VERSION)), 6.2)
+ EXTRA_CFLAGS += -DNMC_ASIC_A0
+ EXTRA_CFLAGS += -DPLL_WORKAROUND
+ EXTRA_CFLAGS += -DCONNECT_DIRECT
+ EXTRA_CFLAGS += -DNMI_PARSE_SCAN_IN_HOST
+ EXTRA_CFLAGS += -DREG_0XF6_NOT_CLEAR_BUG_FIX
+
+ #Use external 1.4V VDD_VCO
+ # EXTRA_CFLAGS += -DVCO_14_SUPPLY
+
+ #johnny private debug (default use)
+ #EXTRA_CFLAGS += -DUNUSE_POWER_MGMT
+
+ #Host AP
+ #FULLY_HOSTING_AP = Y
+endif #6.2
+
+ifeq ($(strip $(NMC1000_SRC_VERSION)), 7.0)
+ EXTRA_CFLAGS += -DNMC_ASIC_A0
+ EXTRA_CFLAGS += -DPLL_WORKAROUND
+ EXTRA_CFLAGS += -DCONNECT_DIRECT
+ EXTRA_CFLAGS += -DNMI_PARSE_SCAN_IN_HOST
+ #EXTRA_CFLAGS += -DREG_0XF6_NOT_CLEAR_BUG_FIX
+
+ ifeq ($(strip $(NMC1000_FW_VERSION)), 2)
+ EXTRA_CFLAGS += -DTCP_ACK_FILTER
+ endif
+
+ ifeq ($(strip $(NMC1000_FW_VERSION)), 3)
+ EXTRA_CFLAGS += -DTCP_ACK_FILTER
+ endif
+
+ ifeq ($(strip $(NMC1000_FW_VERSION)), 4)
+ EXTRA_CFLAGS += -DAGING_ALG
+ EXTRA_CFLAGS += -DDISABLE_PWRSAVE_AND_SCAN_DURING_IP
+ endif
+
+ #Use external 1.4V VDD_VCO
+ # EXTRA_CFLAGS += -DVCO_14_SUPPLY
+
+ #Host AP
+ #FULLY_HOSTING_AP = Y
+
+ #firmware log prints in the host
+ #EXTRA_CFLAGS += -DSWITCH_LOG_TERMINAL
+
+ # to support SoftAP mode
+ EXTRA_CFLAGS += -DNMI_AP_EXTERNAL_MLME
+ EXTRA_CFLAGS += -DSTATIC_MACADDRESS
+endif #7.0
+
+ifeq ($(strip $(NMC1000_SRC_VERSION)), 7.1)
+ EXTRA_CFLAGS += -DNMC_ASIC_A0
+ EXTRA_CFLAGS += -DPLL_WORKAROUND
+ EXTRA_CFLAGS += -DCONNECT_DIRECT
+ EXTRA_CFLAGS += -DNMI_PARSE_SCAN_IN_HOST
+ #EXTRA_CFLAGS += -DREG_0XF6_NOT_CLEAR_BUG_FIX
+
+ #Use external 1.4V VDD_VCO
+ # EXTRA_CFLAGS += -DVCO_14_SUPPLY
+
+ #Host AP
+ #FULLY_HOSTING_AP = Y
+
+ #firmware log prints in the host
+ #EXTRA_CFLAGS += -DSWITCH_LOG_TERMINAL
+
+ # to support SoftAP mode
+ EXTRA_CFLAGS += -DNMI_AP_EXTERNAL_MLME
+
+ EXTRA_CFLAGS += -DDISABLE_PWRSAVE_AND_SCAN_DURING_IP
+
+ ifeq ($(strip $(BUS_TYPE)),NMI_SDIO)
+ EXTRA_CFLAGS += -DNMI_SDIO -DNMI_OPTIMIZE_SLEEP_INT
+ endif
+
+ EXTRA_CFLAGS += -DTCP_ACK_FILTER
+ EXTRA_CFLAGS += -DSTATIC_MACADDRESS
+endif #7.1
+
+ifeq ($(strip $(NMC1000_SRC_VERSION)), 7.2)
+ EXTRA_CFLAGS += -DNMC_ASIC_A0
+ EXTRA_CFLAGS += -DPLL_WORKAROUND
+ EXTRA_CFLAGS += -DCONNECT_DIRECT
+ EXTRA_CFLAGS += -DNMI_PARSE_SCAN_IN_HOST
+ #EXTRA_CFLAGS += -DREG_0XF6_NOT_CLEAR_BUG_FIX
+
+ #Use external 1.4V VDD_VCO
+ # EXTRA_CFLAGS += -DVCO_14_SUPPLY
+
+ #firmware log prints in the host
+ #EXTRA_CFLAGS += -DSWITCH_LOG_TERMINAL
+
+ # to support SoftAP mode
+ #EXTRA_CFLAGS += -DNMI_AP_EXTERNAL_MLME
+
+ ifeq ($(strip $(BUS_TYPE)),NMI_SDIO)
+ EXTRA_CFLAGS += -DNMI_SDIO -DNMI_OPTIMIZE_SLEEP_INT
+ endif
+
+ #EXTRA_CFLAGS += -DTCP_ACK_FILTER
+ EXTRA_CFLAGS += -DAGING_ALG
+ EXTRA_CFLAGS += -DDISABLE_PWRSAVE_AND_SCAN_DURING_IP
+ EXTRA_CFLAGS += -DSTATIC_MACADDRESS
+
+ #Host AP (?????)
+ #FULLY_HOSTING_AP = Y
+ #EXTRA_CFLAGS += -DNMI_FULLY_HOSTING_AP
+
+ ifeq ($(strip $(NMC1000_FW_VERSION)),2)
+ # Check boot status
+ EXTRA_CFLAGS += -DCOMPLEMENT_BOOT
+ endif
+
+ ifeq ($(strip $(NMC1000_FW_VERSION)), 3)
+ EXTRA_CFLAGS += -DCOMPLEMENT_BOOT
+ endif
+endif #7.2
+
+
+ifeq ($(findstring 9.,$(NMC1000_SRC_VERSION)), 9.)
+ EXTRA_CFLAGS += -DNMC_ASIC_A0
+ EXTRA_CFLAGS += -DPLL_WORKAROUND
+ EXTRA_CFLAGS += -DCONNECT_DIRECT
+ EXTRA_CFLAGS += -DNMI_PARSE_SCAN_IN_HOST
+ #EXTRA_CFLAGS += -DREG_0XF6_NOT_CLEAR_BUG_FIX
+
+ #Use external 1.4V VDD_VCO
+ # EXTRA_CFLAGS += -DVCO_14_SUPPLY
+
+ #firmware log prints in the host
+ #EXTRA_CFLAGS += -DSWITCH_LOG_TERMINAL
+
+ # to support SoftAP mode
+ #EXTRA_CFLAGS += -DNMI_AP_EXTERNAL_MLME
+
+ ifeq ($(strip $(BUS_TYPE)),NMI_SDIO)
+ EXTRA_CFLAGS += -DNMI_SDIO -DNMI_OPTIMIZE_SLEEP_INT
+ endif
+
+ #EXTRA_CFLAGS += -DTCP_ACK_FILTER
+ EXTRA_CFLAGS += -DAGING_ALG
+ EXTRA_CFLAGS += -DDISABLE_PWRSAVE_AND_SCAN_DURING_IP
+
+ #Host AP (?????)
+ #FULLY_HOSTING_AP = Y
+ #EXTRA_CFLAGS += -DNMI_FULLY_HOSTING_AP
+
+ #EXTRA_CFLAGS += -DXTAL_24
+ #EXTRA_CFLAGS += -DDISABLE_NMC_UART
+
+ #[[ Add KR Team
+ EXTRA_CFLAGS += -DSTATIC_MACADDRESS
+ EXTRA_CFLAGS += -DCOMPLEMENT_BOOT
+ #EXTRA_CFLAGS += -DFW_VERSION_VERIFICATION
+
+ ifeq ($(strip $(CONFIG_NMC1XXX_PREALLOCATE_DURING_SYSTEM_BOOT)),y)
+ EXTRA_CFLAGS += -DNMC_PREALLOC_AT_BOOT
+ # for rx_buffer
+ EXTRA_CFLAGS += -DMEMORY_STATIC
+ else
+ ifeq ($(strip $(CONFIG_NMC1XXX_PREALLOCATE_AT_LOADING_DRIVER)),y)
+ EXTRA_CFLAGS += -DMEMORY_STATIC
+ EXTRA_CFLAGS += -DNMC_PREALLOC_AT_INSMOD
+ else
+ ifeq ($(strip $(CONFIG_NMC1XXX_DYNAMICALLY_ALLOCATE_MEMROY)),y)
+ EXTRA_CFLAGS += -DNMC_NORMAL_ALLOC
+ endif
+ endif
+ endif
+ #]]
+
+endif #9.X
+
+
+NMC1000_ROOT_PATH = $(src)/src/driver/linux
+NMC1000_SRC_PATH = src/driver/linux
+
+# 3.
+obj-$(CONFIG_NMC1XXX_WIFI_MODULE) += $(MODULE_NAME).o
+
+# 4.
+EXTRA_CFLAGS += $(DEBFLAGS)
+
+# 5.
+EXTRA_CFLAGS += -D$(BUS_TYPE)
+
+# 6.
+ifeq ($(strip $(IRQ_MODE)), USE_EXT_IRQ_FOR_SDIO)
+ EXTRA_CFLAGS += -DNMI_SDIO_IRQ_GPIO
+endif
+
+OUT_ARCH = ARM-3.0
+
+EXTRA_CFLAGS += -I$(NMC1000_ROOT_PATH)/../../NMI_OsWrapper/include/
+EXTRA_CFLAGS += -I$(NMC1000_ROOT_PATH)/../../
+EXTRA_CFLAGS += -I$(NMC1000_ROOT_PATH)/../include
+EXTRA_CFLAGS += -I$(NMC1000_ROOT_PATH)/../
+EXTRA_CFLAGS += -I$(NMC1000_ROOT_PATH)/include
+EXTRA_CFLAGS += -DNMI_PLATFORM=NMI_LINUXKERNEL
+EXTRA_CFLAGS += -Wno-unused-function
+EXTRA_CFLAGS += -DUSE_WIRELESS
+#EXTRA_CFLAGS += -DNMC1000_SINGLE_TRANSFER
+
+
+#EXTRA_CFLAGS += -L$(NMC1000_ROOT_PATH)/../binary/linux/$(OUT_ARCH) -lNMI_WiFi_Driver
+
+ifneq ($(KERNELRELEASE),)
+
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/source/NMI_WFI_NetDevice.o
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/source/NMI_WFI_CfgOperations.o
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/source/linux_wlan.o
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/source/linux_mon.o
+
+ # 5.
+ ifeq ($(strip $(BUS_TYPE)),NMI_SDIO)
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/source/linux_wlan_sdio.o
+ else
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/source/linux_wlan_spi.o
+ endif
+
+ # 7.
+ ifeq ($(strip $(CONFIG_NMC1XXX_ENABLE_DEBUGFS)),y)
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/source/nmi_debugfs.o
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/source/nmi_queue.o
+ endif
+
+ # OS Wrapper #
+ #$(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/../../NMI_OsWrapper/binary/linux/$(OUT_ARCH)/NMI_OsWrapper.a
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/../../NMI_OsWrapper/source/linuxkernel/source/NMI_Memory.o
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/../../NMI_OsWrapper/source/linuxkernel/source/NMI_MsgQueue.o
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/../../NMI_OsWrapper/source/linuxkernel/source/NMI_Semaphore.o
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/../../NMI_OsWrapper/source/linuxkernel/source/NMI_Sleep.o
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/../../NMI_OsWrapper/source/linuxkernel/source/NMI_StrUtils.o
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/../../NMI_OsWrapper/source/linuxkernel/source/NMI_Thread.o
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/../../NMI_OsWrapper/source/linuxkernel/source/NMI_Time.o
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/../../NMI_OsWrapper/source/linuxkernel/source/NMI_Timer.o
+
+ # NMC1000 Core #
+ #$(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/../binary/linux/$(OUT_ARCH)/NMI_WiFi_Driver.a
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/../core_configurator/CoreConfigurator.o
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/../nmi_driver_interface/host_interface.o
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/../core_simulator/FIFO_Buffer.o
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/../nmi_sdio.o
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/../nmi_spi.o
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/../nmi_wlan_cfg.o
+ifeq ($(strip $(NMC1000_SRC_VERSION)), 7.2)
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/../nmi_wlan.o
+endif
+
+ # 8.
+ ifeq ($(strip $(FULLY_HOSTING_AP)), Y)
+ $(MODULE_NAME)-objs += $(NMC1000_SRC_PATH)/../NMI_host_AP.o
+ endif
+
+else
+
+ CONFIG_NMC1XXX_ENABLE_DEBUGFS = y
+
+
+endif
+