diff options
Diffstat (limited to 'drivers/net/wireless/nmi_android4.4_driver/Makefile')
-rwxr-xr-x | drivers/net/wireless/nmi_android4.4_driver/Makefile | 845 |
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 + |