summaryrefslogtreecommitdiff
path: root/package/ramips/drivers/mt76x2e/patches
diff options
context:
space:
mode:
Diffstat (limited to 'package/ramips/drivers/mt76x2e/patches')
-rw-r--r--package/ramips/drivers/mt76x2e/patches/001-build.patch30
-rw-r--r--package/ramips/drivers/mt76x2e/patches/002-peak_TP_downgrade.patch14
-rw-r--r--package/ramips/drivers/mt76x2e/patches/002-startup_exception_division_0.patch13
-rw-r--r--package/ramips/drivers/mt76x2e/patches/003-kickout_msg_fail.patch55
4 files changed, 112 insertions, 0 deletions
diff --git a/package/ramips/drivers/mt76x2e/patches/001-build.patch b/package/ramips/drivers/mt76x2e/patches/001-build.patch
new file mode 100644
index 0000000..fa47d55
--- /dev/null
+++ b/package/ramips/drivers/mt76x2e/patches/001-build.patch
@@ -0,0 +1,30 @@
+Index: mt76x2e-3.0.4.0/rlt_wifi_ap/Makefile
+===================================================================
+--- mt76x2e-3.0.4.0.orig/rlt_wifi_ap/Makefile
++++ mt76x2e-3.0.4.0/rlt_wifi_ap/Makefile
+@@ -1,12 +1,6 @@
+-ifeq ($(CONFIG_SUPPORT_OPENWRT),y)
+-EXTRA_CFLAGS = -I$(src)/../src/include -I$(src)/../src/ate/include
++EXTRA_CFLAGS = -I$(src)/../rlt_wifi/include -I$(src)/../rlt_wifi/ate/include
+ DRV_NAME = mt76x2e
+-RT_WIFI_DIR = ../src
+-else
+-EXTRA_CFLAGS = -Idrivers/net/wireless/rlt_wifi/include -Idrivers/net/wireless/rlt_wifi/ate/include
+-DRV_NAME = rlt_wifi
+ RT_WIFI_DIR = ../rlt_wifi
+-endif
+
+ ########################################################
+ # Common files
+@@ -649,11 +643,7 @@ endif
+ #
+ # Root
+ #
+-ifeq ($(CONFIG_SUPPORT_OPENWRT),y)
+ obj-m += $(DRV_NAME).o
+-else
+-obj-$(CONFIG_RLT_AP_SUPPORT) += $(DRV_NAME).o
+-endif
+
+ $(DRV_NAME)-objs += $(cmm_objs) $(asic_objs) $(chip_objs) $(rate_objs)\
+ $(spec_objs) $(func_objs) $(ap_objs) $(os_objs)
diff --git a/package/ramips/drivers/mt76x2e/patches/002-peak_TP_downgrade.patch b/package/ramips/drivers/mt76x2e/patches/002-peak_TP_downgrade.patch
new file mode 100644
index 0000000..6d2ad8d
--- /dev/null
+++ b/package/ramips/drivers/mt76x2e/patches/002-peak_TP_downgrade.patch
@@ -0,0 +1,14 @@
+Index: mt76x2e-3.0.4.0/rlt_wifi/common/cmm_data.c
+===================================================================
+--- mt76x2e-3.0.4.0.orig/rlt_wifi/common/cmm_data.c
++++ mt76x2e-3.0.4.0/rlt_wifi/common/cmm_data.c
+@@ -1997,8 +1997,7 @@ VOID RTMPDeQueuePacket(
+ #endif /* DBG_TX_RING_DEPTH */
+ #endif /* DBG_DIAGNOSE */
+
+- if (FreeNumber[QueIdx] <= 5 ||
+- (pAd->RalinkCounters.OneSecTxRetryOkCount + pAd->RalinkCounters.OneSecTxNoRetryOkCount) <= (TX_RING_SIZE >> 1))
++ if (FreeNumber[QueIdx] <= 5 )
+ {
+ /* free Tx(QueIdx) resources*/
+ RTMPFreeTXDUponTxDmaDone(pAd, QueIdx);
diff --git a/package/ramips/drivers/mt76x2e/patches/002-startup_exception_division_0.patch b/package/ramips/drivers/mt76x2e/patches/002-startup_exception_division_0.patch
new file mode 100644
index 0000000..58f8171
--- /dev/null
+++ b/package/ramips/drivers/mt76x2e/patches/002-startup_exception_division_0.patch
@@ -0,0 +1,13 @@
+Index: mt76x2e-3.0.4.0/rlt_wifi/common/cmm_info.c
+===================================================================
+--- mt76x2e-3.0.4.0.orig/rlt_wifi/common/cmm_info.c
++++ mt76x2e-3.0.4.0/rlt_wifi/common/cmm_info.c
+@@ -2131,7 +2131,7 @@ VOID RTMPSetPhyMode(RTMP_ADAPTER *pAd, U
+ {
+ #ifdef CONFIG_AP_SUPPORT
+ IF_DEV_CONFIG_OPMODE_ON_AP(pAd)
+- if (pAd->CommonCfg.Channel != 0)
++ //if (pAd->CommonCfg.Channel != 0)
+ pAd->CommonCfg.Channel = FirstChannel(pAd);
+ #endif /* CONFIG_AP_SUPPORT */
+ #ifdef CONFIG_STA_SUPPORT
diff --git a/package/ramips/drivers/mt76x2e/patches/003-kickout_msg_fail.patch b/package/ramips/drivers/mt76x2e/patches/003-kickout_msg_fail.patch
new file mode 100644
index 0000000..5130c3a
--- /dev/null
+++ b/package/ramips/drivers/mt76x2e/patches/003-kickout_msg_fail.patch
@@ -0,0 +1,55 @@
+Index: mt76x2e-3.0.4.0/rlt_wifi/ap/ap.c
+===================================================================
+--- mt76x2e-3.0.4.0.orig/rlt_wifi/ap/ap.c
++++ mt76x2e-3.0.4.0/rlt_wifi/ap/ap.c
+@@ -707,7 +707,8 @@ DBGPRINT(RT_DEBUG_OFF, ("%s(): AP Set Ce
+
+ #ifdef RTMP_MAC_PCI
+ //enable IRQ after init ready
+- RTMP_IRQ_ENABLE(pAd);
++ //RTMP_IRQ_ENABLE(pAd);
++ RTMP_MAC_RX_ENABLE(pAd);
+ #endif /*RTMP_MAC_PCI*/
+
+ #ifdef WAPI_SUPPORT
+@@ -817,7 +818,8 @@ VOID APStop(
+
+ #ifdef RTMP_MAC_PCI
+ //disable IRQ before init ready
+- RTMP_ASIC_INTERRUPT_DISABLE(pAd);
++ //RTMP_ASIC_INTERRUPT_DISABLE(pAd);
++ RTMP_MAC_RX_DISABLE(pAd);
+ #endif /*RTMP_MAC_PCI*/
+ MacTableReset(pAd);
+
+Index: mt76x2e-3.0.4.0/rlt_wifi/include/mac_ral/mac_pci.h
+===================================================================
+--- mt76x2e-3.0.4.0.orig/rlt_wifi/include/mac_ral/mac_pci.h
++++ mt76x2e-3.0.4.0/rlt_wifi/include/mac_ral/mac_pci.h
+@@ -319,6 +319,26 @@ typedef enum _RTMP_TX_DONE_MASK{
+ } while(0)
+
+
++ /* Disable MAC RX */
++#define RTMP_MAC_RX_DISABLE(pAd) \
++ do{ \
++ UINT32 value; \
++ RTMP_IO_READ32(pAd, MAC_SYS_CTRL, &value); \
++ value &= ~(1<<3); \
++ RTMP_IO_WRITE32(pAd, MAC_SYS_CTRL, value); \
++ } while(0)
++
++
++ /* Enable MAC RX */
++#define RTMP_MAC_RX_ENABLE(pAd) \
++ do{ \
++ UINT32 value; \
++ RTMP_IO_READ32(pAd, MAC_SYS_CTRL, &value); \
++ value |= (1<<3); \
++ RTMP_IO_WRITE32(pAd, MAC_SYS_CTRL, value); \
++ } while(0)
++
++
+
+ /* ----------------- MLME Related MACRO ----------------- */
+ // TODO: shiang-usw, need to verify this to make sure that's solid enough!