summaryrefslogtreecommitdiff
path: root/target/linux/wifi/mt7615-patch/0604-mt7615-buildin.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/wifi/mt7615-patch/0604-mt7615-buildin.patch')
-rwxr-xr-xtarget/linux/wifi/mt7615-patch/0604-mt7615-buildin.patch395
1 files changed, 395 insertions, 0 deletions
diff --git a/target/linux/wifi/mt7615-patch/0604-mt7615-buildin.patch b/target/linux/wifi/mt7615-patch/0604-mt7615-buildin.patch
new file mode 100755
index 0000000..d735270
--- /dev/null
+++ b/target/linux/wifi/mt7615-patch/0604-mt7615-buildin.patch
@@ -0,0 +1,395 @@
+Index: linux-3.10.14/drivers/net/wireless/mt_wifi/chips/mt7615.c
+===================================================================
+--- linux-3.10.14.orig/drivers/net/wireless/mt_wifi/chips/mt7615.c
++++ linux-3.10.14/drivers/net/wireless/mt_wifi/chips/mt7615.c
+@@ -43,9 +43,9 @@
+
+ #ifdef CONFIG_AP_SUPPORT
+ #ifdef INTELP6_SUPPORT
+-#define DEFAULT_BIN_FILE "/nvram/MT7615_EEPROM_2G.bin"
++#define DEFAULT_BIN_FILE "/etc/wlan/MT7615_EEPROM_2G.bin"
+ #else
+-#define DEFAULT_BIN_FILE "/etc_ro/wlan/MT7615E_EEPROM1.bin"
++#define DEFAULT_BIN_FILE "/etc/wlan/MT7615E_EEPROM1.bin"
+ #endif
+ #else
+ #define DEFAULT_BIN_FILE "/etc/MT7615E_EEPROM1.bin"
+@@ -53,13 +53,13 @@
+
+ #ifdef MT_SECOND_CARD
+ #ifdef INTELP6_SUPPORT
+-#define SECOND_BIN_FILE "/nvram/MT7615_EEPROM_5G.bin"
++#define SECOND_BIN_FILE "/etc/wlan/MT7615_EEPROM_5G.bin"
+ #else
+-#define SECOND_BIN_FILE "/etc_ro/wlan/MT7615E_EEPROM2.bin"
++#define SECOND_BIN_FILE "/etc/wlan/MT7615E_EEPROM2.bin"
+ #endif
+ #endif /* MT_SECOND_CARD */
+ #ifdef MT_THIRD_CARD
+-#define THIRD_BIN_FILE "/etc_ro/wlan/MT7615E_EEPROM3.bin"
++#define THIRD_BIN_FILE "/etc/wlan/MT7615E_EEPROM3.bin"
+ #endif /* MT_THIRD_CARD */
+
+ extern UCHAR g_BFBackOffMode; // BF Backoff Mode: 2/3/4: apply 2T/3T/4T value in BF backoff table
+Index: linux-3.10.14/drivers/net/wireless/mt_wifi/embedded/common/cmm_profile.c
+===================================================================
+--- linux-3.10.14.orig/drivers/net/wireless/mt_wifi/embedded/common/cmm_profile.c
++++ linux-3.10.14/drivers/net/wireless/mt_wifi/embedded/common/cmm_profile.c
+@@ -5348,7 +5348,7 @@ BOOLEAN RTMP_CardInfoRead(
+ } else {
+ MTWF_LOG(DBG_CAT_CFG, DBG_SUBCAT_ALL, DBG_LVL_ERROR,
+ ("Dat path not found/too big -- Using Defaults!\n"));
+- snprintf(default_buf, sizeof(default_buf), "/etc/Wireless/RT2860AP/RT2860AP%01d.dat", card_match_id +1);
++ snprintf(default_buf, sizeof(default_buf), "/etc/wireless/RT2860AP/RT2860AP%01d.dat", card_match_id +1);
+ NdisMoveMemory(pAd->MC_FileName, default_buf, strlen(default_buf));
+ pAd->MC_FileName[strlen(default_buf)] = '\0';
+ }
+@@ -5359,7 +5359,7 @@ BOOLEAN RTMP_CardInfoRead(
+ } else {
+ MTWF_LOG(DBG_CAT_CFG, DBG_SUBCAT_ALL, DBG_LVL_ERROR,
+ ("BIN path not found/too big -- Using Defaults!\n"));
+- snprintf(default_buf, sizeof(default_buf), "/etc/Wireless/RT2860AP/Eeprom%01d.bin", card_match_id +1);
++ snprintf(default_buf, sizeof(default_buf), "/etc/wireless/RT2860AP/Eeprom%01d.bin", card_match_id +1);
+ NdisMoveMemory(pAd->MC_BinFileName, default_buf, strlen(default_buf));
+ pAd->MC_BinFileName[strlen(default_buf)] = '\0';
+ }
+@@ -5370,7 +5370,7 @@ BOOLEAN RTMP_CardInfoRead(
+ } else {
+ MTWF_LOG(DBG_CAT_CFG, DBG_SUBCAT_ALL, DBG_LVL_ERROR,
+ ("CAL BIN path not found/too big -- Using Defaults!\n"));
+- snprintf(default_buf, sizeof(default_buf), "/etc/Wireless/RT2860AP/Caldata%01d.bin", card_match_id +1);
++ snprintf(default_buf, sizeof(default_buf), "/etc/wireless/RT2860AP/Caldata%01d.bin", card_match_id +1);
+ NdisMoveMemory(pAd->MC_CalBinFileName, default_buf, strlen(default_buf));
+ pAd->MC_CalBinFileName[strlen(default_buf)] = '\0';
+ }
+Index: linux-3.10.14/drivers/net/wireless/mt_wifi/embedded/common/eeprom.c
+===================================================================
+--- linux-3.10.14.orig/drivers/net/wireless/mt_wifi/embedded/common/eeprom.c
++++ linux-3.10.14/drivers/net/wireless/mt_wifi/embedded/common/eeprom.c
+@@ -31,38 +31,38 @@
+
+
+ #ifdef MT_FIRST_CARD
+-#define FIRST_EEPROM_FILE_PATH "/etc_ro/Wireless/RT2860/MT7615_EEPROM_1.bin"
++#define FIRST_EEPROM_FILE_PATH "/etc/wireless/RT2860/MT7615_EEPROM_1.bin"
+ #endif /* MT_FIRST_CARD */
+
+ #ifdef MT_SECOND_CARD
+-#define SECOND_EEPROM_FILE_PATH "/etc_ro/Wireless/iNIC/MT7615_EEPROM_2.bin"
++#define SECOND_EEPROM_FILE_PATH "/etc/wireless/iNIC/MT7615_EEPROM_2.bin"
+ #endif /* MT_SECOND_CARD */
+
+ #if defined(PRE_CAL_TRX_SET1_SUPPORT) || defined(PRE_CAL_TRX_SET2_SUPPORT) || defined(RLM_CAL_CACHE_SUPPORT)
+ #ifdef MT_FIRST_CARD
+ #ifdef INTELP6_SUPPORT
+-#define FIRST_CAL_FILE_PATH "/nvram/MT7615_CALDATA1.bin"
++#define FIRST_CAL_FILE_PATH "/etc/wireless/MT7615_CALDATA1.bin"
+ #else
+-#define FIRST_CAL_FILE_PATH "/etc_ro/Wireless/RT2860/CALDATA1.bin"
++#define FIRST_CAL_FILE_PATH "/etc/wireless/RT2860/CALDATA1.bin"
+ #endif
+ #endif /* MT_FIRST_CARD */
+
+ #ifdef MT_SECOND_CARD
+ #ifdef INTELP6_SUPPORT
+-#define SECOND_CAL_FILE_PATH "/nvram/MT7615_CALDATA2.bin"
++#define SECOND_CAL_FILE_PATH "/etc/wireless/MT7615_CALDATA2.bin"
+ #else
+-#define SECOND_CAL_FILE_PATH "/etc_ro/Wireless/iNIC/CALDATA2.bin"
++#define SECOND_CAL_FILE_PATH "/etc/wireless/iNIC/CALDATA2.bin"
+ #endif
+ #endif /* MT_SECOND_CARD */
+ #endif /* PRE_CAL_TRX_SET1_SUPPORT */
+
+ #ifdef PA_TRIM_SUPPORT
+ #ifdef MT_FIRST_CARD
+-#define FIRST_CAL_BIN_FILE_PATH "/etc_ro/Wireless/RT2860AP/CALIBRATION_DATA_1.bin"
++#define FIRST_CAL_BIN_FILE_PATH "/etc/wireless/RT2860AP/CALIBRATION_DATA_1.bin"
+ #endif /* MT_FIRST_CARD */
+
+ #ifdef MT_SECOND_CARD
+-#define SECOND_CAL_BIN_FILE_PATH "/etc_ro/Wireless/iNIC/CALIBRATION_DATA_2.bin"
++#define SECOND_CAL_BIN_FILE_PATH "/etc/wireless/iNIC/CALIBRATION_DATA_2.bin"
+ #endif /* MT_SECOND_CARD */
+ #endif /* PA_TRIM_SUPPORT */
+
+Index: linux-3.10.14/drivers/net/wireless/mt_wifi/embedded/common/multi_profile.c
+===================================================================
+--- linux-3.10.14.orig/drivers/net/wireless/mt_wifi/embedded/common/multi_profile.c
++++ linux-3.10.14/drivers/net/wireless/mt_wifi/embedded/common/multi_profile.c
+@@ -19,25 +19,25 @@
+ #include "rt_config.h"
+
+ /*Local definition*/
+-#define FIRST_AP_2G_PROFILE_PATH "/etc/Wireless/RT2860/RT2860_2G.dat"
+-#define FIRST_AP_5G_PROFILE_PATH "/etc/Wireless/RT2860/RT2860_5G.dat"
+-#define FIRST_AP_MERGE_PROFILE_PATH "/etc/Wireless/RT2860/RT2860_dbdc.dat"
++#define FIRST_AP_2G_PROFILE_PATH "/etc/wireless/mt7615e/mt7615e.1.2G.dat"
++#define FIRST_AP_5G_PROFILE_PATH "/etc/wireless/mt7615e/mt7615e.1.5G.dat"
++#define FIRST_AP_MERGE_PROFILE_PATH "/etc/wireless/mt7615e/.mt7615e.1.dbdc.dat"
+ #ifdef RT_CFG80211_SUPPORT
+ #define FIRST_AP_5G_DEVNAME "wlanx"
+ #else
+ #define FIRST_AP_5G_DEVNAME "rax"
+ #endif
+-#define SECOND_AP_2G_PROFILE_PATH "/etc/Wireless/iNIC/iNIC_ap_2G.dat"
+-#define SECOND_AP_5G_PROFILE_PATH "/etc/Wireless/iNIC/iNIC_ap_5G.dat"
+-#define SECOND_AP_MERGE_PROFILE_PATH "/etc/Wireless/RT2860/iNIC_ap_dbdc.dat"
++#define SECOND_AP_2G_PROFILE_PATH "/etc/wireless/mt7615e/mt7615e.2.2G.dat"
++#define SECOND_AP_5G_PROFILE_PATH "/etc/wireless/mt7615e/mt7615e.2.5G.dat"
++#define SECOND_AP_MERGE_PROFILE_PATH "/etc/wireless/mt7615e/.mt7615e.2.dbdc.dat"
+ #ifdef RT_CFG80211_SUPPORT
+ #define SECOND_AP_5G_DEVNAME "wlany"
+ #else
+ #define SECOND_AP_5G_DEVNAME "ray"
+ #endif
+-#define THIRD_AP_2G_PROFILE_PATH "/etc/Wireless/WIFI3/RT2870AP_2G.dat"
+-#define THIRD_AP_5G_PROFILE_PATH "/etc/Wireless/WIFI3/RT2870AP_5G.dat"
+-#define THIRD_AP_MERGE_PROFILE_PATH "/etc/Wireless/WIFI3/RT2870AP_dbdc.dat"
++#define THIRD_AP_2G_PROFILE_PATH "/etc/wireless/mt7615e/mt7615e.3.2G.dat"
++#define THIRD_AP_5G_PROFILE_PATH "/etc/wireless/mt7615e/mt7615e.3.5G.dat"
++#define THIRD_AP_MERGE_PROFILE_PATH "/etc/wireless/mt7615e/.mt7615e.3.dbdc.dat"
+ #ifdef RT_CFG80211_SUPPORT
+ #define THIRD_AP_5G_DEVNAME "wlanz"
+ #else
+Index: linux-3.10.14/drivers/net/wireless/mt_wifi/embedded/include/eeprom.h
+===================================================================
+--- linux-3.10.14.orig/drivers/net/wireless/mt_wifi/embedded/include/eeprom.h
++++ linux-3.10.14/drivers/net/wireless/mt_wifi/embedded/include/eeprom.h
+@@ -92,17 +92,17 @@
+ #endif /* WCX_SUPPORT */
+ #endif /* BB_SOC */
+
+-#define EEPROM_DFT_FILE_DIR "/etc_ro/wlan/"
+-#define EEPROM_1ST_FILE_DIR "/etc_ro/Wireless/RT2860/"
+-#define EEPROM_2ND_FILE_DIR "/etc_ro/Wireless/iNIC/"
++#define EEPROM_DFT_FILE_DIR "/etc/wlan/"
++#define EEPROM_1ST_FILE_DIR "/etc/wireless/RT2860/"
++#define EEPROM_2ND_FILE_DIR "/etc/wireless/iNIC/"
+
+ #ifndef EEPROM_DEFAULT_FILE_PATH
+ /* RFIC 2820 */
+-#define EEPROM_DEFAULT_FILE_PATH "/etc_ro/wlan/RT2880_RT2820_AP_2T3R_V1_6.bin"
++#define EEPROM_DEFAULT_FILE_PATH "/etc/wlan/RT2880_RT2820_AP_2T3R_V1_6.bin"
+
+ #ifdef MT7615
+ #undef EEPROM_DEFAULT_FILE_PATH
+-#define EEPROM_DEFAULT_FILE_PATH "/etc_ro/wlan/MT7615_EEPROM.bin"
++#define EEPROM_DEFAULT_FILE_PATH "/etc/wlan/MT7615_EEPROM.bin"
+ #endif /* MT7615 */
+
+
+Index: linux-3.10.14/drivers/net/wireless/mt_wifi/include/os/rt_linux.h
+===================================================================
+--- linux-3.10.14.orig/drivers/net/wireless/mt_wifi/include/os/rt_linux.h
++++ linux-3.10.14/drivers/net/wireless/mt_wifi/include/os/rt_linux.h
+@@ -129,36 +129,36 @@ typedef struct usb_ctrlrequest devctrlre
+ #ifdef CONFIG_AP_SUPPORT
+ #ifdef RTMP_MAC_PCI
+ #if CONFIG_RTPCI_AP_RF_OFFSET == 0x48000
+-#define AP_PROFILE_PATH "/etc/Wireless/iNIC/iNIC_ap.dat"
+-#define AP_RTMP_FIRMWARE_FILE_NAME "/etc_ro/Wireless/iNIC/RT2860AP.bin"
++#define AP_PROFILE_PATH "/etc/wireless/iNIC/iNIC_ap.dat"
++#define AP_RTMP_FIRMWARE_FILE_NAME "/etc/wireless/iNIC/RT2860AP.bin"
+ #else
+-#define AP_PROFILE_PATH "/etc/Wireless/RT2860AP/RT2860AP.dat"
+-#define AP_RTMP_FIRMWARE_FILE_NAME "/etc/Wireless/RT2860AP/RT2860AP.bin"
++#define AP_PROFILE_PATH "/etc/wireless/RT2860AP/RT2860AP.dat"
++#define AP_RTMP_FIRMWARE_FILE_NAME "/etc/wireless/RT2860AP/RT2860AP.bin"
+ #endif
+
+
+ #define AP_DRIVER_VERSION "4.4.1.2"
+ #ifdef MULTIPLE_CARD_SUPPORT
+-#define CARD_INFO_PATH "/etc/Wireless/RT2860AP/RT2860APCard.dat"
++#define CARD_INFO_PATH "/etc/wireless/RT2860AP/RT2860APCard.dat"
+ #endif /* MULTIPLE_CARD_SUPPORT */
+ #endif /* RTMP_MAC_PCI */
+
+
+ #ifdef RTMP_MAC_SDIO
+-#define AP_PROFILE_PATH "/etc/Wireless/RT2870AP/RT2870AP.dat"
++#define AP_PROFILE_PATH "/etc/wireless/RT2870AP/RT2870AP.dat"
+ #define AP_DRIVER_VERSION "4.0.0.3"
+ #endif /* RTMP_MAC_SDIO */
+
+
+ #ifdef SINGLE_SKU_V2
+ #ifdef VENDOR_FEATURE6_SUPPORT
+-#define SINGLE_SKU_TABLE_FILE_NAME "/tmp/.mt7615_SingleSKU.dat"
+-#define BF_GAIN_TABLE_FILE_NAME "/tmp/.mt7615_SingleSKU_BF_Gain.dat"
+-#define BF_SKU_TABLE_FILE_NAME "/tmp/.mt7615_SingleSKU_BF.dat"
+-#else
+-#define SINGLE_SKU_TABLE_FILE_NAME "/etc_ro/Wireless/RT2860AP/7615_SingleSKU.dat"
+-#define BF_GAIN_TABLE_FILE_NAME "/etc_ro/Wireless/RT2860AP/7615_BF_Gain_Table.dat"
+-#define BF_SKU_TABLE_FILE_NAME "/etc_ro/Wireless/RT2860AP/7615_SingleSKU_BF.dat"
++#define SINGLE_SKU_TABLE_FILE_NAME "/tmp/.mt7615e-sku.dat"
++#define BF_GAIN_TABLE_FILE_NAME "/tmp/.mt7615e-bf-gain.dat"
++#define BF_SKU_TABLE_FILE_NAME "/tmp/.mt7615e/mt7615e-sku-bf.dat"
++#else
++#define SINGLE_SKU_TABLE_FILE_NAME "/etc/wireless/mt7615e/mt7615e-sku.dat"
++#define BF_GAIN_TABLE_FILE_NAME "/etc/wireless/mt7615e/mt7615e-bf-gain.dat"
++#define BF_SKU_TABLE_FILE_NAME "/etc/wireless/mt7615e/mt7615e-sku-bf.dat"
+ #endif
+ #endif /* SINGLE_SKU_V2 */
+
+@@ -1812,14 +1812,14 @@ extern int rausb_control_msg(VOID *dev,
+ #define ate_print printk
+ #ifdef RTMP_MAC_PCI
+ #ifdef CONFIG_AP_SUPPORT
+-#define EEPROM_BIN_FILE_NAME "/etc/Wireless/RT2860AP/e2p.bin"
++#define EEPROM_BIN_FILE_NAME "/etc/wireless/RT2860AP/e2p.bin"
+ #endif /* CONFIG_AP_SUPPORT */
+ #endif /* RTMP_MAC_PCI */
+
+
+ #ifdef RTMP_MAC_SDIO
+ #ifdef CONFIG_AP_SUPPORT
+-#define EEPROM_BIN_FILE_NAME "/etc/Wireless/RT2870AP/e2p.bin"
++#define EEPROM_BIN_FILE_NAME "/etc/wireless/RT2870AP/e2p.bin"
+ #endif /* CONFIG_AP_SUPPORT */
+ #endif /* RTMP_MAC_SDIO */
+
+Index: linux-3.10.14/drivers/net/wireless/mt_wifi/os/linux/rt_profile.c
+===================================================================
+--- linux-3.10.14.orig/drivers/net/wireless/mt_wifi/os/linux/rt_profile.c
++++ linux-3.10.14/drivers/net/wireless/mt_wifi/os/linux/rt_profile.c
+@@ -93,47 +93,47 @@ struct dev_type_name_map{
+ #define def_to_str(s) #s
+
+ #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,18,0)) && defined (CONFIG_ANDROID)
+-#define FIRST_EEPROM_FILE_PATH "/data/router/etc_ro/Wireless/RT2860/"
+-#define FIRST_AP_PROFILE_PATH "/data/router/etc/Wireless/RT2860/RT2860.dat"
+-#define FIRST_STA_PROFILE_PATH "/data/router/etc/Wireless/RT2860/RT2860.dat"
++#define FIRST_EEPROM_FILE_PATH "/data/router/etc/wireless/RT2860/"
++#define FIRST_AP_PROFILE_PATH "/data/router/etc/wireless/RT2860/RT2860.dat"
++#define FIRST_STA_PROFILE_PATH "/data/router/etc/wireless/RT2860/RT2860.dat"
+ #define FIRST_CHIP_ID xdef_to_str(MT_FIRST_CARD)
+
+
+-#define SECOND_EEPROM_FILE_PATH "/data/router/etc_ro/Wireless/iNIC/"
+-#define SECOND_AP_PROFILE_PATH "/data/router/etc/Wireless/iNIC/iNIC_ap.dat"
+-#define SECOND_STA_PROFILE_PATH "/data/router/etc/Wireless/iNIC/iNIC_sta.dat"
++#define SECOND_EEPROM_FILE_PATH "/data/router/etc/wireless/iNIC/"
++#define SECOND_AP_PROFILE_PATH "/data/router/etc/wireless/iNIC/iNIC_ap.dat"
++#define SECOND_STA_PROFILE_PATH "/data/router/etc/wireless/iNIC/iNIC_sta.dat"
+
+ #define SECOND_CHIP_ID xdef_to_str(MT_SECOND_CARD)
+
+-#define THIRD_EEPROM_FILE_PATH "/data/router/etc_ro/Wireless/WIFI3/"
+-#define THIRD_AP_PROFILE_PATH "/data/router/etc/Wireless/WIFI3/RT2870AP.dat"
+-#define THIRD_STA_PROFILE_PATH "/data/router/etc/Wireless/WIFI3/RT2870AP.dat"
++#define THIRD_EEPROM_FILE_PATH "/data/router/etc/wireless/WIFI3/"
++#define THIRD_AP_PROFILE_PATH "/data/router/etc/wireless/WIFI3/RT2870AP.dat"
++#define THIRD_STA_PROFILE_PATH "/data/router/etc/wireless/WIFI3/RT2870AP.dat"
+
+ #define THIRD_CHIP_ID xdef_to_str(MT_THIRD_CARD)
+
+ #else
+-#define FIRST_EEPROM_FILE_PATH "/etc_ro/Wireless/RT2860/"
++#define FIRST_EEPROM_FILE_PATH "/etc/wireless/RT2860/"
+ #ifdef INTELP6_SUPPORT
+ #define FIRST_AP_PROFILE_PATH "/tmp/mt76xx_24.dat"
+ #else
+-#define FIRST_AP_PROFILE_PATH "/etc/Wireless/RT2860/RT2860.dat"
++#define FIRST_AP_PROFILE_PATH "/etc/wireless/RT2860/RT2860.dat"
+ #endif
+-#define FIRST_STA_PROFILE_PATH "/etc/Wireless/RT2860/RT2860.dat"
++#define FIRST_STA_PROFILE_PATH "/etc/wireless/RT2860/RT2860.dat"
+ #define FIRST_CHIP_ID xdef_to_str(MT_FIRST_CARD)
+
+-#define SECOND_EEPROM_FILE_PATH "/etc_ro/Wireless/iNIC/"
++#define SECOND_EEPROM_FILE_PATH "/etc/wireless/iNIC/"
+ #ifdef INTELP6_SUPPORT
+ #define SECOND_AP_PROFILE_PATH "/tmp/mt76xx_5.dat"
+ #else
+-#define SECOND_AP_PROFILE_PATH "/etc/Wireless/iNIC/iNIC_ap.dat"
++#define SECOND_AP_PROFILE_PATH "/etc/wireless/iNIC/iNIC_ap.dat"
+ #endif
+-#define SECOND_STA_PROFILE_PATH "/etc/Wireless/iNIC/iNIC_sta.dat"
++#define SECOND_STA_PROFILE_PATH "/etc/wireless/iNIC/iNIC_sta.dat"
+
+ #define SECOND_CHIP_ID xdef_to_str(MT_SECOND_CARD)
+
+-#define THIRD_EEPROM_FILE_PATH "/etc_ro/Wireless/WIFI3/"
+-#define THIRD_AP_PROFILE_PATH "/etc/Wireless/WIFI3/RT2870AP.dat"
+-#define THIRD_STA_PROFILE_PATH "/etc/Wireless/WIFI3/RT2870AP.dat"
++#define THIRD_EEPROM_FILE_PATH "/etc/wireless/WIFI3/"
++#define THIRD_AP_PROFILE_PATH "/etc/wireless/WIFI3/RT2870AP.dat"
++#define THIRD_STA_PROFILE_PATH "/etc/wireless/WIFI3/RT2870AP.dat"
+
+ #define THIRD_CHIP_ID xdef_to_str(MT_THIRD_CARD)
+ #endif /* CONFIG_ANDROID */
+@@ -715,6 +715,13 @@ int GetBrLanNetMask(
+ }
+ in_dev = (struct in_device *)pNetDev->ip_ptr;
+ // get in_ifaddr
++
++ if (!in_dev)
++ {
++ MTWF_LOG(DBG_CAT_CFG, DBG_SUBCAT_ALL, DBG_LVL_OFF, (" in_dev is NULL!\n"));
++ return 0;
++ }
++
+ if_info = in_dev->ifa_list;
+ if( if_info )
+ {
+Index: linux-3.10.14/drivers/net/wireless/mt_wifi_ap/Makefile
+===================================================================
+--- linux-3.10.14.orig/drivers/net/wireless/mt_wifi_ap/Makefile
++++ linux-3.10.14/drivers/net/wireless/mt_wifi_ap/Makefile
+@@ -2,14 +2,38 @@ EXTRA_CFLAGS = -Idrivers/net/wireless/mt
+ -Idrivers/net/wireless/mt_wifi/embedded/include \
+ -Idrivers/net/wireless/mt_wifi/ate/include
+
+-ifeq ($(CONFIG_SUPPORT_OPENWRT),y)
+-EXTRA_CFLAGS = -I$(src)/../src/include \
+- -I$(src)/../src/embedded/include \
+- -I$(src)/../src/ate/include
+-DRV_NAME = mt7628
+-SRC_DIR = ../src/embedded
+-obj-m += $(DRV_NAME).o
+-else
++################################################################################
++ifeq ($(CONFIG_FIRST_IF_EEPROM_PROM),y)
++EXTRA_CFLAGS += -DCONFIG_RT_FIRST_CARD_EEPROM="\"prom\""
++endif
++ifeq ($(CONFIG_FIRST_IF_EEPROM_EFUSE),y)
++EXTRA_CFLAGS += -DCONFIG_RT_FIRST_CARD_EEPROM="\"efuse\""
++endif
++ifeq ($(CONFIG_FIRST_IF_EEPROM_FLASH),y)
++EXTRA_CFLAGS += -DCONFIG_RT_FIRST_CARD_EEPROM="\"flash\""
++endif
++
++ifeq ($(CONFIG_SECOND_IF_EEPROM_PROM),y)
++EXTRA_CFLAGS += -DCONFIG_RT_SECOND_CARD_EEPROM="\"prom\""
++endif
++ifeq ($(CONFIG_SECOND_IF_EEPROM_EFUSE),y)
++EXTRA_CFLAGS += -DCONFIG_RT_SECOND_CARD_EEPROM="\"efuse\""
++endif
++ifeq ($(CONFIG_SECOND_IF_EEPROM_FLASH),y)
++EXTRA_CFLAGS += -DCONFIG_RT_SECOND_CARD_EEPROM="\"flash\""
++endif
++
++ifeq ($(CONFIG_THIRD_IF_EEPROM_PROM),y)
++EXTRA_CFLAGS += -DCONFIG_RT_THIRD_CARD_EEPROM="\"prom\""
++endif
++ifeq ($(CONFIG_THIRD_IF_EEPROM_EFUSE),y)
++EXTRA_CFLAGS += -DCONFIG_RT_THIRD_CARD_EEPROM="\"efuse\""
++endif
++ifeq ($(CONFIG_THIRD_IF_EEPROM_FLASH),y)
++EXTRA_CFLAGS += -DCONFIG_RT_THIRD_CARD_EEPROM="\"flash\""
++endif
++
++################################################################################
+ EXTRA_CFLAGS = -Idrivers/net/wireless/mt_wifi/include \
+ -Idrivers/net/wireless/mt_wifi/embedded/include \
+ -Idrivers/net/wireless/mt_wifi/ate/include
+@@ -17,7 +41,6 @@ DRV_NAME = mt_wifi
+ SRC_DIR = ../mt_wifi
+ SRC_EMBEDDED_DIR = ../mt_wifi/embedded
+ obj-$(CONFIG_MT_AP_SUPPORT) += $(DRV_NAME).o
+-endif
+
+ ########################################################
+ # Common files