--- /dev/null
+From bc37a7ebc267e400fc4e9886b7197b4b866763d1 Mon Sep 17 00:00:00 2001
+From: Lorenzo Bianconi <lorenzo@kernel.org>
+Date: Thu, 21 Dec 2023 10:41:18 +0100
+Subject: [PATCH] wifi: mt76: mt7996: fix fw loading timeout
+
+Fix the following firmware loading error due to a wrong dma register
+configuration if wed is disabled.
+
+[ 8.245881] mt7996e_hif 0001:01:00.0: assign IRQ: got 128
+[ 8.251308] mt7996e_hif 0001:01:00.0: enabling device (0000 -> 0002)
+[ 8.257674] mt7996e_hif 0001:01:00.0: enabling bus mastering
+[ 8.263488] mt7996e 0000:01:00.0: assign IRQ: got 126
+[ 8.268537] mt7996e 0000:01:00.0: enabling device (0000 -> 0002)
+[ 8.274551] mt7996e 0000:01:00.0: enabling bus mastering
+[ 28.648773] mt7996e 0000:01:00.0: Message 00000010 (seq 1) timeout
+[ 28.654959] mt7996e 0000:01:00.0: Failed to get patch semaphore
+[ 29.661033] mt7996e: probe of 0000:01:00.0 failed with error -11
+
+Suggested-by: Sujuan Chen" <sujuan.chen@mediatek.com>
+Fixes: 4920a3a1285f ("wifi: mt76: mt7996: set DMA mask to 36 bits for boards with more than 4GB of RAM")
+Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
+Signed-off-by: Felix Fietkau <nbd@nbd.name>
+---
+ mt7996/dma.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+--- a/mt7996/dma.c
++++ b/mt7996/dma.c
+@@ -237,7 +237,8 @@ void mt7996_dma_start(struct mt7996_dev
+ MT_WFDMA0_GLO_CFG_TX_DMA_EN |
+ MT_WFDMA0_GLO_CFG_RX_DMA_EN |
+ MT_WFDMA0_GLO_CFG_OMIT_TX_INFO |
+- MT_WFDMA0_GLO_CFG_OMIT_RX_INFO_PFET2);
++ MT_WFDMA0_GLO_CFG_OMIT_RX_INFO_PFET2 |
++ MT_WFDMA0_GLO_CFG_EXT_EN);
+
+ if (dev->hif2)
+ mt76_set(dev, MT_WFDMA0_GLO_CFG + hif1_ofs,