From 9d77db3c730780c8ef5ccd4b66403ff5675cfe4e Mon Sep 17 00:00:00 2001
From: hc <hc@nodka.com>
Date: Mon, 13 May 2024 10:30:14 +0000
Subject: [PATCH] modify sin led gpio

---
 kernel/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_gpio.c |  115 +++++++++++++--------------------------------------------
 1 files changed, 27 insertions(+), 88 deletions(-)

diff --git a/kernel/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_gpio.c b/kernel/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_gpio.c
old mode 100644
new mode 100755
index fe3ef3b..05b735f
--- a/kernel/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_gpio.c
+++ b/kernel/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_gpio.c
@@ -1,14 +1,7 @@
 /* SPDX-License-Identifier: GPL-2.0 */
-
 #include <osl.h>
 #include <dhd_linux.h>
 #include <linux/gpio.h>
-#ifdef BCMDHD_DTS
-#include <linux/of_gpio.h>
-#endif
-#ifdef BCMDHD_PLATDEV
-#include <linux/platform_device.h>
-#endif
 #ifdef CUSTOMER_HW_ROCKCHIP
 #include <linux/rfkill-wlan.h>
 #endif
@@ -25,7 +18,7 @@
 extern int dhd_static_buf_init(void);
 extern void dhd_static_buf_exit(void);
 #endif /* DHD_STATIC_IN_DRIVER */
-#if defined(BCMDHD_MDRIVER) && !defined(DHD_STATIC_IN_DRIVER)
+#ifdef BCMDHD_MDRIVER
 extern void *dhd_wlan_mem_prealloc(uint bus_type, int index,
 	int section, unsigned long size);
 #else
@@ -40,7 +33,7 @@
 
 #ifdef BCMDHD_DTS
 /* This is sample code in dts file.
-bcmdhd_wlan {
+bcmdhd {
 	compatible = "android,bcmdhd_wlan";
 	gpio_wl_reg_on = <&gpio GPIOH_4 GPIO_ACTIVE_HIGH>;
 	gpio_wl_host_wake = <&gpio GPIOZ_15 GPIO_ACTIVE_HIGH>;
@@ -69,7 +62,7 @@
 #ifdef CUSTOMER_HW_ROCKCHIP
 		rockchip_wifi_power(1);
 #ifdef BCMPCIE
-//		rk_pcie_power_on_atu_fixup();
+		//rk_pcie_power_on_atu_fixup();
 #endif
 #endif
 #ifdef BUS_POWER_RESTORE
@@ -134,14 +127,12 @@
 	return err;
 }
 
-static int
-dhd_wlan_set_reset(int onoff)
+static int dhd_wlan_set_reset(int onoff)
 {
 	return 0;
 }
 
-static int
-dhd_wlan_set_carddetect(int present)
+static int dhd_wlan_set_carddetect(int present)
 {
 	int err = 0;
 
@@ -165,7 +156,7 @@
 		err = sdhci_force_presence_change(&sdmmc_channel, 0);
 #endif /* CUSTOMER_HW_PLATFORM */
 #ifdef CUSTOMER_HW_ROCKCHIP
-		rockchip_wifi_set_carddetect(0);
+	rockchip_wifi_set_carddetect(0);
 #endif
 #elif defined(BCMPCIE)
 		printf("======== Card detection to remove PCIE card! ========\n");
@@ -176,8 +167,7 @@
 	return err;
 }
 
-static int
-dhd_wlan_get_mac_addr(unsigned char *buf, int ifidx)
+static int dhd_wlan_get_mac_addr(unsigned char *buf, int ifidx)
 {
 	int err = 0;
 
@@ -275,17 +265,16 @@
 	.get_country_code = dhd_wlan_get_country_code,
 };
 
-static int
-dhd_wlan_init_gpio(wifi_adapter_info_t *adapter)
+int dhd_wlan_init_gpio(wifi_adapter_info_t *adapter)
 {
 #ifdef BCMDHD_DTS
 	char wlan_node[32];
 	struct device_node *root_node = NULL;
 #endif
 	int err = 0;
-	int gpio_wl_reg_on = -1;
+	int gpio_wl_reg_on;
 #ifdef CUSTOMER_OOB
-	int gpio_wl_host_wake = -1;
+	int gpio_wl_host_wake;
 	int host_oob_irq = -1;
 	uint host_oob_irq_flags = 0;
 #ifdef CUSTOMER_HW_ROCKCHIP
@@ -299,19 +288,9 @@
 	* WL_REG_ON and WL_HOST_WAKE.
 	*/
 #ifdef BCMDHD_DTS
-#ifdef BCMDHD_PLATDEV
-	if (adapter->pdev) {
-		root_node = adapter->pdev->dev.of_node;
-		strcpy(wlan_node, root_node->name);
-	} else {
-		printf("%s: adapter->pdev is NULL\n", __FUNCTION__);
-		return -1;
-	}
-#else
 	strcpy(wlan_node, DHD_DT_COMPAT_ENTRY);
-	root_node = of_find_compatible_node(NULL, NULL, wlan_node);
-#endif
 	printf("======== Get GPIO from DTS(%s) ========\n", wlan_node);
+	root_node = of_find_compatible_node(NULL, NULL, wlan_node);
 	if (root_node) {
 		gpio_wl_reg_on = of_get_named_gpio(root_node, GPIO_WL_REG_ON_PROPNAME, 0);
 #ifdef CUSTOMER_OOB
@@ -329,8 +308,8 @@
 	if (gpio_wl_reg_on >= 0) {
 		err = gpio_request(gpio_wl_reg_on, "WL_REG_ON");
 		if (err < 0) {
-			printf("%s: gpio_request(%d) for WL_REG_ON failed %d\n",
-				__FUNCTION__, gpio_wl_reg_on, err);
+			printf("%s: gpio_request(%d) for WL_REG_ON failed\n",
+				__FUNCTION__, gpio_wl_reg_on);
 			gpio_wl_reg_on = -1;
 		}
 	}
@@ -340,22 +319,22 @@
 	if (gpio_wl_host_wake >= 0) {
 		err = gpio_request(gpio_wl_host_wake, "bcmdhd");
 		if (err < 0) {
-			printf("%s: gpio_request(%d) for WL_HOST_WAKE failed %d\n",
-				__FUNCTION__, gpio_wl_host_wake, err);
+			printf("%s: gpio_request(%d) for WL_HOST_WAKE failed\n",
+				__FUNCTION__, gpio_wl_host_wake);
 			return -1;
 		}
 		adapter->gpio_wl_host_wake = gpio_wl_host_wake;
 		err = gpio_direction_input(gpio_wl_host_wake);
 		if (err < 0) {
-			printf("%s: gpio_direction_input(%d) for WL_HOST_WAKE failed %d\n",
-				__FUNCTION__, gpio_wl_host_wake, err);
+			printf("%s: gpio_direction_input(%d) for WL_HOST_WAKE failed\n",
+				__FUNCTION__, gpio_wl_host_wake);
 			gpio_free(gpio_wl_host_wake);
 			return -1;
 		}
 		host_oob_irq = gpio_to_irq(gpio_wl_host_wake);
 		if (host_oob_irq < 0) {
-			printf("%s: gpio_to_irq(%d) for WL_HOST_WAKE failed %d\n",
-				__FUNCTION__, gpio_wl_host_wake, host_oob_irq);
+			printf("%s: gpio_to_irq(%d) for WL_HOST_WAKE failed\n",
+				__FUNCTION__, gpio_wl_host_wake);
 			gpio_free(gpio_wl_host_wake);
 			return -1;
 		}
@@ -395,8 +374,7 @@
 	return 0;
 }
 
-static void
-dhd_wlan_deinit_gpio(wifi_adapter_info_t *adapter)
+static void dhd_wlan_deinit_gpio(wifi_adapter_info_t *adapter)
 {
 	int gpio_wl_reg_on = adapter->gpio_wl_reg_on;
 #ifdef CUSTOMER_OOB
@@ -417,53 +395,14 @@
 #endif /* CUSTOMER_OOB */
 }
 
-#if defined(BCMDHD_MDRIVER)
-static void
-dhd_wlan_init_adapter(wifi_adapter_info_t *adapter)
-{
-#ifdef ADAPTER_IDX
-	if (ADAPTER_IDX == 0) {
-		adapter->bus_num = 1;
-		adapter->slot_num = 1;
-	} else if (ADAPTER_IDX == 1) {
-		adapter->bus_num = 2;
-		adapter->slot_num = 1;
-	}
-	adapter->index = ADAPTER_IDX;
-#ifdef BCMSDIO
-	adapter->bus_type = SDIO_BUS;
-#elif defined(BCMPCIE)
-	adapter->bus_type = PCI_BUS;
-#elif defined(BCMDBUS)
-	adapter->bus_type = USB_BUS;
-#endif
-	printf("bus_type=%d, bus_num=%d, slot_num=%d\n",
-		adapter->bus_type, adapter->bus_num, adapter->slot_num);
-#endif /* ADAPTER_IDX */
-
-#ifdef DHD_STATIC_IN_DRIVER
-	adapter->index = 0;
-#elif !defined(ADAPTER_IDX)
-#ifdef BCMSDIO
-	adapter->index = 0;
-#elif defined(BCMPCIE)
-	adapter->index = 1;
-#elif defined(BCMDBUS)
-	adapter->index = 2;
-#endif
-#endif /* DHD_STATIC_IN_DRIVER */
-}
-#endif /* BCMDHD_MDRIVER */
-
-int
-dhd_wlan_init_plat_data(wifi_adapter_info_t *adapter)
+int dhd_wlan_init_plat_data(wifi_adapter_info_t *adapter)
 {
 	int err = 0;
 
-#ifdef BCMDHD_MDRIVER
-	dhd_wlan_init_adapter(adapter);
-#endif /* BCMDHD_MDRIVER */
-
+	printf("======== %s ========\n", __FUNCTION__);
+	if (adapter->index == -1) {
+		adapter->index = 0;
+	}
 	err = dhd_wlan_init_gpio(adapter);
 	if (err)
 		goto exit;
@@ -476,9 +415,9 @@
 	return err;
 }
 
-void
-dhd_wlan_deinit_plat_data(wifi_adapter_info_t *adapter)
+void dhd_wlan_deinit_plat_data(wifi_adapter_info_t *adapter)
 {
+	printf("======== %s ========\n", __FUNCTION__);
 #ifdef DHD_STATIC_IN_DRIVER
 	dhd_static_buf_exit();
 #endif

--
Gitblit v1.6.2