From e3e12f52b214121840b44c91de5b3e5af5d3eb84 Mon Sep 17 00:00:00 2001
From: hc <hc@nodka.com>
Date: Mon, 06 Nov 2023 03:04:41 +0000
Subject: [PATCH] rk3568 rt init

---
 kernel/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_static_buf.c |  115 ++++++++++++++++++++++++++++++---------------------------
 1 files changed, 61 insertions(+), 54 deletions(-)

diff --git a/kernel/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_static_buf.c b/kernel/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_static_buf.c
index d288788..f1c44f0 100644
--- a/kernel/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_static_buf.c
+++ b/kernel/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_static_buf.c
@@ -7,7 +7,7 @@
 #include <linux/err.h>
 #include <linux/skbuff.h>
 
-#define	DHD_STATIC_VERSION_STR		"101.10.361.24 (wlan=r892223-20220916-1)"
+#define	DHD_STATIC_VERSION_STR		"101.10.361.26 (wlan=r892223-20221011-1)"
 #define STATIC_ERROR_LEVEL	BIT(0)
 #define STATIC_TRACE_LEVEL	BIT(1)
 #define STATIC_MSG_LEVEL	BIT(0)
@@ -32,12 +32,19 @@
 		} \
 	} while (0)
 
-#define BCMDHD_SDIO
-#define BCMDHD_PCIE
-//#define BCMDHD_USB
+#ifdef DHD_STATIC_IN_DRIVER
+#if ANDROID_VERSION > 0
+#define CONFIG_BCMDHD_VTS { : = y}
+#define CONFIG_BCMDHD_DEBUG { : = y}
+#endif
+#else
+#define BCMSDIO
+#define BCMPCIE
+//#define BCMDBUS
 #define CONFIG_BCMDHD_VTS { : = y}
 #define CONFIG_BCMDHD_DEBUG { : = y}
 //#define BCMDHD_UNUSE_MEM
+#endif
 
 #ifndef MAX_NUM_ADAPTERS
 #define MAX_NUM_ADAPTERS	1
@@ -45,28 +52,28 @@
 
 enum dhd_prealloc_index {
 	DHD_PREALLOC_PROT = 0,
-#if defined(BCMDHD_SDIO)
+#if defined(BCMSDIO)
 	DHD_PREALLOC_RXBUF = 1,
 	DHD_PREALLOC_DATABUF = 2,
-#endif /* BCMDHD_SDIO */
+#endif /* BCMSDIO */
 	DHD_PREALLOC_OSL_BUF = 3,
 	DHD_PREALLOC_SKB_BUF = 4,
 	DHD_PREALLOC_WIPHY_ESCAN0 = 5,
 	DHD_PREALLOC_WIPHY_ESCAN1 = 6,
 	DHD_PREALLOC_DHD_INFO = 7,
-#if defined(BCMDHD_SDIO) || defined(BCMDHD_USB)
+#if defined(BCMSDIO) || defined(BCMDBUS)
 	DHD_PREALLOC_DHD_WLFC_INFO = 8,
-#endif /* BCMDHD_SDIO | BCMDHD_USB */
-#ifdef BCMDHD_PCIE
+#endif /* BCMSDIO | BCMDBUS */
+#ifdef BCMPCIE
 	DHD_PREALLOC_IF_FLOW_LKUP = 9,
-#endif /* BCMDHD_PCIE */
+#endif /* BCMPCIE */
 	DHD_PREALLOC_MEMDUMP_BUF = 10,
 #if defined(CONFIG_BCMDHD_VTS) || defined(CONFIG_BCMDHD_DEBUG)
 	DHD_PREALLOC_MEMDUMP_RAM = 11,
 #endif /* CONFIG_BCMDHD_VTS | CONFIG_BCMDHD_DEBUG */
-#if defined(BCMDHD_SDIO) || defined(BCMDHD_USB)
+#if defined(BCMSDIO) || defined(BCMDBUS)
 	DHD_PREALLOC_DHD_WLFC_HANGER = 12,
-#endif /* BCMDHD_SDIO | BCMDHD_USB */
+#endif /* BCMSDIO | BCMDBUS */
 	DHD_PREALLOC_PKTID_MAP = 13,
 	DHD_PREALLOC_PKTID_MAP_IOCTL = 14,
 #if defined(CONFIG_BCMDHD_VTS) || defined(CONFIG_BCMDHD_DEBUG)
@@ -98,7 +105,7 @@
 #define DHD_PREALLOC_DATABUF_SIZE	(64 * 1024)
 #define DHD_PREALLOC_OSL_BUF_SIZE	(STATIC_BUF_MAX_NUM * STATIC_BUF_SIZE)
 #define DHD_PREALLOC_WIPHY_ESCAN0_SIZE	(64 * 1024)
-#define DHD_PREALLOC_DHD_INFO_SIZE	(42 * 1024)
+#define DHD_PREALLOC_DHD_INFO_SIZE	(43 * 1024)
 #if defined(CONFIG_BCMDHD_VTS) || defined(CONFIG_BCMDHD_DEBUG)
 #define DHD_PREALLOC_MEMDUMP_RAM_SIZE	(1290 * 1024)
 #endif /* CONFIG_BCMDHD_VTS | CONFIG_BCMDHD_DEBUG */
@@ -133,20 +140,20 @@
 #define DHD_SKB_2PAGE_BUFSIZE	(PAGE_SIZE * 2)
 #define DHD_SKB_4PAGE_BUFSIZE	(PAGE_SIZE * 4)
 
-#ifdef BCMDHD_PCIE
+#ifdef BCMPCIE
 #define DHD_SKB_1PAGE_BUF_NUM	0
 #define DHD_SKB_2PAGE_BUF_NUM	192
-#elif defined(BCMDHD_SDIO)
+#elif defined(BCMSDIO)
 #define DHD_SKB_1PAGE_BUF_NUM	8
 #define DHD_SKB_2PAGE_BUF_NUM	8
-#endif /* BCMDHD_PCIE */
+#endif /* BCMPCIE */
 #define DHD_SKB_4PAGE_BUF_NUM	1
 
 /* The number is defined in linux_osl.c
  * WLAN_SKB_1_2PAGE_BUF_NUM => STATIC_PKT_1_2PAGE_NUM
  * WLAN_SKB_BUF_NUM => STATIC_PKT_MAX_NUM
  */
-#if defined(BCMDHD_SDIO) || defined(BCMDHD_PCIE)
+#if defined(BCMSDIO) || defined(BCMPCIE)
 #define WLAN_SKB_1_2PAGE_BUF_NUM ((DHD_SKB_1PAGE_BUF_NUM) + \
 		(DHD_SKB_2PAGE_BUF_NUM))
 #define WLAN_SKB_BUF_NUM ((WLAN_SKB_1_2PAGE_BUF_NUM) + (DHD_SKB_4PAGE_BUF_NUM))
@@ -173,9 +180,9 @@
 void *wlan_static_dhd_event_ring_buf[MAX_NUM_ADAPTERS] = {};
 void *wlan_static_nan_event_ring_buf[MAX_NUM_ADAPTERS] = {};
 
-#if defined(BCMDHD_SDIO) || defined(BCMDHD_PCIE)
+#if defined(BCMSDIO) || defined(BCMPCIE)
 static struct sk_buff *wlan_static_skb[MAX_NUM_ADAPTERS][WLAN_SKB_BUF_NUM] = {};
-#endif /* BCMDHD_SDIO | BCMDHD_PCIE */
+#endif /* BCMSDIO | BCMPCIE */
 
 void *
 dhd_wlan_mem_prealloc(
@@ -198,18 +205,18 @@
 	if (section == DHD_PREALLOC_PROT)
 		return wlan_static_prot[index];
 
-#if defined(BCMDHD_SDIO)
+#if defined(BCMSDIO)
 	if (section == DHD_PREALLOC_RXBUF)
 		return wlan_static_rxbuf[index];
 
 	if (section == DHD_PREALLOC_DATABUF)
 		return wlan_static_databuf[index];
-#endif /* BCMDHD_SDIO */
+#endif /* BCMSDIO */
 
-#if defined(BCMDHD_SDIO) || defined(BCMDHD_PCIE)
+#if defined(BCMSDIO) || defined(BCMPCIE)
 	if (section == DHD_PREALLOC_SKB_BUF)
 		return wlan_static_skb[index];
-#endif /* BCMDHD_SDIO | BCMDHD_PCIE */
+#endif /* BCMSDIO | BCMPCIE */
 
 	if (section == DHD_PREALLOC_WIPHY_ESCAN0)
 		return wlan_static_scan_buf0[index];
@@ -234,7 +241,7 @@
 		}
 		return wlan_static_dhd_info_buf[index];
 	}
-#if defined(BCMDHD_SDIO) || defined(BCMDHD_USB)
+#if defined(BCMSDIO) || defined(BCMDBUS)
 	if (section == DHD_PREALLOC_DHD_WLFC_INFO) {
 		if (size > WLAN_DHD_WLFC_BUF_SIZE) {
 			DHD_STATIC_ERROR("request DHD_WLFC_INFO(%lu) > %d\n",
@@ -243,8 +250,8 @@
 		}
 		return wlan_static_dhd_wlfc_info_buf[index];
 	}
-#endif /* BCMDHD_SDIO | BCMDHD_USB */
-#ifdef BCMDHD_PCIE
+#endif /* BCMSDIO | BCMDBUS */
+#ifdef BCMPCIE
 	if (section == DHD_PREALLOC_IF_FLOW_LKUP)  {
 		if (size > DHD_PREALLOC_IF_FLOW_LKUP_SIZE) {
 			DHD_STATIC_ERROR("request DHD_IF_FLOW_LKUP(%lu) > %d\n",
@@ -253,7 +260,7 @@
 		}
 		return wlan_static_if_flow_lkup[index];
 	}
-#endif /* BCMDHD_PCIE */
+#endif /* BCMPCIE */
 #if defined(CONFIG_BCMDHD_VTS) || defined(CONFIG_BCMDHD_DEBUG)
 	if (section == DHD_PREALLOC_MEMDUMP_RAM) {
 		if (size > DHD_PREALLOC_MEMDUMP_RAM_SIZE) {
@@ -264,7 +271,7 @@
 		return wlan_static_dhd_memdump_ram_buf[index];
 	}
 #endif /* CONFIG_BCMDHD_VTS | CONFIG_BCMDHD_DEBUG */
-#if defined(BCMDHD_SDIO) || defined(BCMDHD_USB)
+#if defined(BCMSDIO) || defined(BCMDBUS)
 	if (section == DHD_PREALLOC_DHD_WLFC_HANGER) {
 		if (size > DHD_PREALLOC_DHD_WLFC_HANGER_SIZE) {
 			DHD_STATIC_ERROR("request DHD_WLFC_HANGER(%lu) > %d\n",
@@ -273,7 +280,7 @@
 		}
 		return wlan_static_dhd_wlfc_hanger_buf[index];
 	}
-#endif /* BCMDHD_SDIO | BCMDHD_USB */
+#endif /* BCMSDIO | BCMDBUS */
 #if defined(CONFIG_BCMDHD_VTS) || defined(CONFIG_BCMDHD_DEBUG)
 	if (section == DHD_PREALLOC_DHD_LOG_DUMP_BUF) {
 		if (size > DHD_PREALLOC_DHD_LOG_DUMP_BUF_SIZE) {
@@ -350,18 +357,18 @@
 static void
 dhd_deinit_wlan_mem(int index)
 {
-#if defined(BCMDHD_SDIO) || defined(BCMDHD_PCIE)
+#if defined(BCMSDIO) || defined(BCMPCIE)
 	int i;
-#endif /* BCMDHD_SDIO | BCMDHD_PCIE */
+#endif /* BCMSDIO | BCMPCIE */
 
 	if (wlan_static_prot[index])
 		kfree(wlan_static_prot[index]);
-#if defined(BCMDHD_SDIO)
+#if defined(BCMSDIO)
 	if (wlan_static_rxbuf[index])
 		kfree(wlan_static_rxbuf[index]);
 	if (wlan_static_databuf[index])
 		kfree(wlan_static_databuf[index]);
-#endif /* BCMDHD_SDIO */
+#endif /* BCMSDIO */
 	if (wlan_static_osl_buf[index])
 		kfree(wlan_static_osl_buf[index]);
 	if (wlan_static_scan_buf0[index])
@@ -370,22 +377,22 @@
 		kfree(wlan_static_scan_buf1[index]);
 	if (wlan_static_dhd_info_buf[index])
 		kfree(wlan_static_dhd_info_buf[index]);
-#if defined(BCMDHD_SDIO) || defined(BCMDHD_USB)
+#if defined(BCMSDIO) || defined(BCMDBUS)
 	if (wlan_static_dhd_wlfc_info_buf[index])
 		kfree(wlan_static_dhd_wlfc_info_buf[index]);
-#endif /* BCMDHD_SDIO | BCMDHD_USB */
-#ifdef BCMDHD_PCIE
+#endif /* BCMSDIO | BCMDBUS */
+#ifdef BCMPCIE
 	if (wlan_static_if_flow_lkup[index])
 		kfree(wlan_static_if_flow_lkup[index]);
-#endif /* BCMDHD_PCIE */
+#endif /* BCMPCIE */
 #if defined(CONFIG_BCMDHD_VTS) || defined(CONFIG_BCMDHD_DEBUG)
 	if (wlan_static_dhd_memdump_ram_buf[index])
 		kfree(wlan_static_dhd_memdump_ram_buf[index]);
 #endif /* CONFIG_BCMDHD_VTS | CONFIG_BCMDHD_DEBUG */
-#if defined(BCMDHD_SDIO) || defined(BCMDHD_USB)
+#if defined(BCMSDIO) || defined(BCMDBUS)
 	if (wlan_static_dhd_wlfc_hanger_buf[index])
 		kfree(wlan_static_dhd_wlfc_hanger_buf[index]);
-#endif /* BCMDHD_SDIO | BCMDHD_USB */
+#endif /* BCMSDIO | BCMDBUS */
 #if defined(CONFIG_BCMDHD_VTS) || defined(CONFIG_BCMDHD_DEBUG)
 	if (wlan_static_dhd_log_dump_buf[index])
 		kfree(wlan_static_dhd_log_dump_buf[index]);
@@ -405,12 +412,12 @@
 		kfree(wlan_static_nan_event_ring_buf[index]);
 #endif /* BCMDHD_UNUSE_MEM */
 
-#if defined(BCMDHD_SDIO) || defined(BCMDHD_PCIE)
+#if defined(BCMSDIO) || defined(BCMPCIE)
 	for (i=0; i<WLAN_SKB_BUF_NUM; i++) {
 		if (wlan_static_skb[index][i])
 			dev_kfree_skb(wlan_static_skb[index][i]);
 	}
-#endif /* BCMDHD_SDIO | BCMDHD_PCIE */
+#endif /* BCMSDIO | BCMPCIE */
 
 	return;
 }
@@ -418,12 +425,12 @@
 static int
 dhd_init_wlan_mem(int index)
 {
-#if defined(BCMDHD_SDIO) || defined(BCMDHD_PCIE)
+#if defined(BCMSDIO) || defined(BCMPCIE)
 	int i;
 #endif
 	unsigned long size = 0;
 
-#if defined(BCMDHD_SDIO) || defined(BCMDHD_PCIE)
+#if defined(BCMSDIO) || defined(BCMPCIE)
 	for (i = 0; i < WLAN_SKB_BUF_NUM; i++)
 		wlan_static_skb[index][i] = NULL;
 
@@ -444,16 +451,16 @@
 		DHD_STATIC_TRACE("section %d skb[%d], size=%ld\n",
 			DHD_PREALLOC_SKB_BUF, i, DHD_SKB_2PAGE_BUFSIZE);
 	}
-#endif /* BCMDHD_SDIO | BCMDHD_PCIE */
+#endif /* BCMSDIO | BCMPCIE */
 
-#if defined(BCMDHD_SDIO)
+#if defined(BCMSDIO)
 	wlan_static_skb[index][i] = dev_alloc_skb(DHD_SKB_4PAGE_BUFSIZE);
 	if (!wlan_static_skb[index][i])
 		goto err_mem_alloc;
 	size += DHD_SKB_4PAGE_BUFSIZE;
 	DHD_STATIC_TRACE("section %d skb[%d], size=%ld\n",
 		DHD_PREALLOC_SKB_BUF, i, DHD_SKB_4PAGE_BUFSIZE);
-#endif /* BCMDHD_SDIO */
+#endif /* BCMSDIO */
 
 	wlan_static_prot[index] = kmalloc(DHD_PREALLOC_PROT_SIZE, GFP_KERNEL);
 	if (!wlan_static_prot[index])
@@ -462,7 +469,7 @@
 	DHD_STATIC_TRACE("section %d, size=%d\n",
 		DHD_PREALLOC_PROT, DHD_PREALLOC_PROT_SIZE);
 
-#if defined(BCMDHD_SDIO)
+#if defined(BCMSDIO)
 	wlan_static_rxbuf[index] = kmalloc(DHD_PREALLOC_RXBUF_SIZE, GFP_KERNEL);
 	if (!wlan_static_rxbuf[index])
 		goto err_mem_alloc;
@@ -476,7 +483,7 @@
 	size += DHD_PREALLOC_DATABUF_SIZE;
 	DHD_STATIC_TRACE("section %d, size=%d\n",
 		DHD_PREALLOC_DATABUF, DHD_PREALLOC_DATABUF_SIZE);
-#endif /* BCMDHD_SDIO */
+#endif /* BCMSDIO */
 
 	wlan_static_osl_buf[index] = kmalloc(DHD_PREALLOC_OSL_BUF_SIZE, GFP_KERNEL);
 	if (!wlan_static_osl_buf[index])
@@ -499,23 +506,23 @@
 	DHD_STATIC_TRACE("section %d, size=%d\n",
 		DHD_PREALLOC_DHD_INFO, DHD_PREALLOC_DHD_INFO_SIZE);
 
-#if defined(BCMDHD_SDIO) || defined(BCMDHD_USB)
+#if defined(BCMSDIO) || defined(BCMDBUS)
 	wlan_static_dhd_wlfc_info_buf[index] = kmalloc(WLAN_DHD_WLFC_BUF_SIZE, GFP_KERNEL);
 	if (!wlan_static_dhd_wlfc_info_buf[index])
 		goto err_mem_alloc;
 	size += WLAN_DHD_WLFC_BUF_SIZE;
 	DHD_STATIC_TRACE("section %d, size=%d\n",
 		DHD_PREALLOC_DHD_WLFC_INFO, WLAN_DHD_WLFC_BUF_SIZE);
-#endif /* BCMDHD_SDIO | BCMDHD_USB */
+#endif /* BCMSDIO | BCMDBUS */
 
-#ifdef BCMDHD_PCIE
+#ifdef BCMPCIE
 	wlan_static_if_flow_lkup[index] = kmalloc(DHD_PREALLOC_IF_FLOW_LKUP_SIZE, GFP_KERNEL);
 	if (!wlan_static_if_flow_lkup[index])
 		goto err_mem_alloc;
 	size += DHD_PREALLOC_IF_FLOW_LKUP_SIZE;
 	DHD_STATIC_TRACE("section %d, size=%d\n",
 		DHD_PREALLOC_IF_FLOW_LKUP, DHD_PREALLOC_IF_FLOW_LKUP_SIZE);
-#endif /* BCMDHD_PCIE */
+#endif /* BCMPCIE */
 
 #if defined(CONFIG_BCMDHD_VTS) || defined(CONFIG_BCMDHD_DEBUG)
 	wlan_static_dhd_memdump_ram_buf[index] = kmalloc(DHD_PREALLOC_MEMDUMP_RAM_SIZE, GFP_KERNEL);
@@ -526,14 +533,14 @@
 		DHD_PREALLOC_MEMDUMP_RAM, DHD_PREALLOC_MEMDUMP_RAM_SIZE);
 #endif /* CONFIG_BCMDHD_VTS | CONFIG_BCMDHD_DEBUG */
 
-#if defined(BCMDHD_SDIO) || defined(BCMDHD_USB)
+#if defined(BCMSDIO) || defined(BCMDBUS)
 	wlan_static_dhd_wlfc_hanger_buf[index] = kmalloc(DHD_PREALLOC_DHD_WLFC_HANGER_SIZE, GFP_KERNEL);
 	if (!wlan_static_dhd_wlfc_hanger_buf[index])
 		goto err_mem_alloc;
 	size += DHD_PREALLOC_DHD_WLFC_HANGER_SIZE;
 	DHD_STATIC_TRACE("section %d, size=%d\n",
 		DHD_PREALLOC_DHD_WLFC_HANGER, DHD_PREALLOC_DHD_WLFC_HANGER_SIZE);
-#endif /* BCMDHD_SDIO | BCMDHD_USB */
+#endif /* BCMSDIO | BCMDBUS */
 
 #if defined(CONFIG_BCMDHD_VTS) || defined(CONFIG_BCMDHD_DEBUG)
 	wlan_static_dhd_log_dump_buf[index] = kmalloc(DHD_PREALLOC_DHD_LOG_DUMP_BUF_SIZE, GFP_KERNEL);

--
Gitblit v1.6.2