linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 01/13] staging: wilc1000: add wilc to netdev private data structure
@ 2015-10-16  9:22 Tony Cho
  2015-10-16  9:22 ` [PATCH 02/13] staging: wilc1000: wilc1000_wlan_init: use netdev private wilc Tony Cho
                   ` (12 more replies)
  0 siblings, 13 replies; 15+ messages in thread
From: Tony Cho @ 2015-10-16  9:22 UTC (permalink / raw)
  To: gregkh
  Cc: devel, linux-wireless, tony.cho, glen.lee, leo.kim, austin.shin,
	adel.noureldin, adham.abozaeid, Nicolas.FERRE

From: Glen Lee <glen.lee@atmel.com>

This patch adds struct wilc to struct perInterface_wlan_t which is netdev
private data to access wilc via netdev_priv function and assigns wilc to
nic->wilc. The global variable wl will be replaced with netdev private data
member wilc step by step.

Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
---
 drivers/staging/wilc1000/linux_wlan.c         | 1 +
 drivers/staging/wilc1000/wilc_wfi_netdevice.h | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/staging/wilc1000/linux_wlan.c b/drivers/staging/wilc1000/linux_wlan.c
index 3cc4861..90c39b6 100644
--- a/drivers/staging/wilc1000/linux_wlan.c
+++ b/drivers/staging/wilc1000/linux_wlan.c
@@ -1658,6 +1658,7 @@ int wilc_netdev_init(struct wilc **wilc)
 
 		nic->u8IfIdx = wl->vif_num;
 		nic->wilc_netdev = ndev;
+		nic->wilc = *wilc;
 		wl->vif[wl->vif_num].ndev = ndev;
 		wl->vif_num++;
 		ndev->netdev_ops = &wilc_netdev_ops;
diff --git a/drivers/staging/wilc1000/wilc_wfi_netdevice.h b/drivers/staging/wilc1000/wilc_wfi_netdevice.h
index 9a9e082..cb23134 100644
--- a/drivers/staging/wilc1000/wilc_wfi_netdevice.h
+++ b/drivers/staging/wilc1000/wilc_wfi_netdevice.h
@@ -199,7 +199,7 @@ typedef struct {
 	struct_frame_reg g_struct_frame_reg[num_reg_frame];
 	struct net_device *wilc_netdev;
 	struct net_device_stats netstats;
-
+	struct wilc *wilc;
 } perInterface_wlan_t;
 
 struct WILC_WFI_mon_priv {
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH 02/13] staging: wilc1000: wilc1000_wlan_init: use netdev private wilc
  2015-10-16  9:22 [PATCH 01/13] staging: wilc1000: add wilc to netdev private data structure Tony Cho
@ 2015-10-16  9:22 ` Tony Cho
  2015-10-16  9:22 ` [PATCH 03/13] staging: wilc1000: wlan_init_locks: change parameter and use nic-wilc Tony Cho
                   ` (11 subsequent siblings)
  12 siblings, 0 replies; 15+ messages in thread
From: Tony Cho @ 2015-10-16  9:22 UTC (permalink / raw)
  To: gregkh
  Cc: devel, linux-wireless, tony.cho, glen.lee, leo.kim, austin.shin,
	adel.noureldin, adham.abozaeid, Nicolas.FERRE

From: Glen Lee <glen.lee@atmel.com>

This patch uses netdev private data member wilc instead of global variabl wl.

Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
---
 drivers/staging/wilc1000/linux_wlan.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/staging/wilc1000/linux_wlan.c b/drivers/staging/wilc1000/linux_wlan.c
index 90c39b6..f79160c 100644
--- a/drivers/staging/wilc1000/linux_wlan.c
+++ b/drivers/staging/wilc1000/linux_wlan.c
@@ -1025,6 +1025,7 @@ int wilc1000_wlan_init(struct net_device *dev, perInterface_wlan_t *p_nic)
 {
 	wilc_wlan_inp_t nwi;
 	perInterface_wlan_t *nic = p_nic;
+	struct wilc *wl = nic->wilc;
 	int ret = 0;
 
 	if (!wl->initialized) {
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH 03/13] staging: wilc1000: wlan_init_locks: change parameter and use nic-wilc
  2015-10-16  9:22 [PATCH 01/13] staging: wilc1000: add wilc to netdev private data structure Tony Cho
  2015-10-16  9:22 ` [PATCH 02/13] staging: wilc1000: wilc1000_wlan_init: use netdev private wilc Tony Cho
@ 2015-10-16  9:22 ` Tony Cho
  2015-10-16  9:23 ` [PATCH 04/13] staging: wilc1000: mac_open: use netdev private wilc Tony Cho
                   ` (10 subsequent siblings)
  12 siblings, 0 replies; 15+ messages in thread
From: Tony Cho @ 2015-10-16  9:22 UTC (permalink / raw)
  To: gregkh
  Cc: devel, linux-wireless, tony.cho, glen.lee, leo.kim, austin.shin,
	adel.noureldin, adham.abozaeid, Nicolas.FERRE

From: Glen Lee <glen.lee@atmel.com>

This patch changes function parameter type wilc with net_device and use netdev
private data member wilc instead of global variable wl.

Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
---
 drivers/staging/wilc1000/linux_wlan.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/wilc1000/linux_wlan.c b/drivers/staging/wilc1000/linux_wlan.c
index f79160c..38b981d 100644
--- a/drivers/staging/wilc1000/linux_wlan.c
+++ b/drivers/staging/wilc1000/linux_wlan.c
@@ -921,8 +921,13 @@ void wilc1000_wlan_deinit(struct wilc *nic)
 	}
 }
 
-int wlan_init_locks(struct wilc *p_nic)
+int wlan_init_locks(struct net_device *dev)
 {
+	perInterface_wlan_t *nic;
+	struct wilc *wl;
+
+	nic = netdev_priv(dev);
+	wl = nic->wilc;
 
 	PRINT_D(INIT_DBG, "Initializing Locks ...\n");
 
@@ -1032,7 +1037,7 @@ int wilc1000_wlan_init(struct net_device *dev, perInterface_wlan_t *p_nic)
 		wl->mac_status = WILC_MAC_STATUS_INIT;
 		wl->close = 0;
 
-		wlan_init_locks(wl);
+		wlan_init_locks(dev);
 
 		linux_to_wlan(&nwi, wl);
 
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH 04/13] staging: wilc1000: mac_open: use netdev private wilc
  2015-10-16  9:22 [PATCH 01/13] staging: wilc1000: add wilc to netdev private data structure Tony Cho
  2015-10-16  9:22 ` [PATCH 02/13] staging: wilc1000: wilc1000_wlan_init: use netdev private wilc Tony Cho
  2015-10-16  9:22 ` [PATCH 03/13] staging: wilc1000: wlan_init_locks: change parameter and use nic-wilc Tony Cho
@ 2015-10-16  9:23 ` Tony Cho
  2015-10-16  9:23 ` [PATCH 05/13] staging: wilc1000: mac_close: use netdev private wilc instead of wl Tony Cho
                   ` (9 subsequent siblings)
  12 siblings, 0 replies; 15+ messages in thread
From: Tony Cho @ 2015-10-16  9:23 UTC (permalink / raw)
  To: gregkh
  Cc: devel, linux-wireless, tony.cho, glen.lee, leo.kim, austin.shin,
	adel.noureldin, adham.abozaeid, Nicolas.FERRE

From: Glen Lee <glen.lee@atmel.com>

Use netdev private data member wilc instead of global variable wl.

Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
---
 drivers/staging/wilc1000/linux_wlan.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/staging/wilc1000/linux_wlan.c b/drivers/staging/wilc1000/linux_wlan.c
index 38b981d..4450658 100644
--- a/drivers/staging/wilc1000/linux_wlan.c
+++ b/drivers/staging/wilc1000/linux_wlan.c
@@ -1166,13 +1166,14 @@ int mac_open(struct net_device *ndev)
 	int i = 0;
 	struct wilc_priv *priv;
 
+	nic = netdev_priv(ndev);
+	wl = nic->wilc;
 #ifdef WILC_SPI
 	if (!wl || !wl->wilc_spidev) {
 		netdev_err(ndev, "wilc1000: SPI device not ready\n");
 		return -ENODEV;
 	}
 #endif
-	nic = netdev_priv(ndev);
 	priv = wiphy_priv(nic->wilc_netdev->ieee80211_ptr->wiphy);
 	PRINT_D(INIT_DBG, "MAC OPEN[%p]\n", ndev);
 
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH 05/13] staging: wilc1000: mac_close: use netdev private wilc instead of wl
  2015-10-16  9:22 [PATCH 01/13] staging: wilc1000: add wilc to netdev private data structure Tony Cho
                   ` (2 preceding siblings ...)
  2015-10-16  9:23 ` [PATCH 04/13] staging: wilc1000: mac_open: use netdev private wilc Tony Cho
@ 2015-10-16  9:23 ` Tony Cho
  2015-10-16  9:23 ` [PATCH 06/13] staging: wilc1000: chage_virtual_intf: use netdev private wilc Tony Cho
                   ` (8 subsequent siblings)
  12 siblings, 0 replies; 15+ messages in thread
From: Tony Cho @ 2015-10-16  9:23 UTC (permalink / raw)
  To: gregkh
  Cc: devel, linux-wireless, tony.cho, glen.lee, leo.kim, austin.shin,
	adel.noureldin, adham.abozaeid, Nicolas.FERRE

From: Glen Lee <glen.lee@atmel.com>

Use netdev private data member wilc instead of global variable wl.

Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
---
 drivers/staging/wilc1000/linux_wlan.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/staging/wilc1000/linux_wlan.c b/drivers/staging/wilc1000/linux_wlan.c
index 4450658..8c98a0c 100644
--- a/drivers/staging/wilc1000/linux_wlan.c
+++ b/drivers/staging/wilc1000/linux_wlan.c
@@ -1377,6 +1377,7 @@ int mac_close(struct net_device *ndev)
 	struct wilc_priv *priv;
 	perInterface_wlan_t *nic;
 	struct host_if_drv *pstrWFIDrv;
+	struct wilc *wl;
 
 	nic = netdev_priv(ndev);
 
@@ -1386,6 +1387,7 @@ int mac_close(struct net_device *ndev)
 	}
 
 	priv = wiphy_priv(nic->wilc_netdev->ieee80211_ptr->wiphy);
+	wl = nic->wilc;
 
 	if (priv == NULL) {
 		PRINT_ER("priv = NULL\n");
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH 06/13] staging: wilc1000: chage_virtual_intf: use netdev private wilc
  2015-10-16  9:22 [PATCH 01/13] staging: wilc1000: add wilc to netdev private data structure Tony Cho
                   ` (3 preceding siblings ...)
  2015-10-16  9:23 ` [PATCH 05/13] staging: wilc1000: mac_close: use netdev private wilc instead of wl Tony Cho
@ 2015-10-16  9:23 ` Tony Cho
  2015-10-16  9:23 ` [PATCH 07/13] staging: wilc1000: wilc1000_wlan_deinit: change argument and use nic->wilc Tony Cho
                   ` (7 subsequent siblings)
  12 siblings, 0 replies; 15+ messages in thread
From: Tony Cho @ 2015-10-16  9:23 UTC (permalink / raw)
  To: gregkh
  Cc: devel, linux-wireless, tony.cho, glen.lee, leo.kim, austin.shin,
	adel.noureldin, adham.abozaeid, Nicolas.FERRE

From: Glen Lee <glen.lee@atmel.com>

Use netdev private data member wilc instead of global variable wl.

Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
---
 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c b/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
index ebba9d4..b34b7d0 100644
--- a/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
+++ b/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
@@ -2533,9 +2533,11 @@ static int change_virtual_intf(struct wiphy *wiphy, struct net_device *dev,
 	u8 interface_type;
 	u16 TID = 0;
 	u8 i;
+	struct wilc *wl;
 
 	nic = netdev_priv(dev);
 	priv = wiphy_priv(wiphy);
+	wl = nic->wilc;
 
 	PRINT_D(HOSTAPD_DBG, "In Change virtual interface function\n");
 	PRINT_D(HOSTAPD_DBG, "Wireless interface name =%s\n", dev->name);
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH 07/13] staging: wilc1000: wilc1000_wlan_deinit: change argument and use nic->wilc
  2015-10-16  9:22 [PATCH 01/13] staging: wilc1000: add wilc to netdev private data structure Tony Cho
                   ` (4 preceding siblings ...)
  2015-10-16  9:23 ` [PATCH 06/13] staging: wilc1000: chage_virtual_intf: use netdev private wilc Tony Cho
@ 2015-10-16  9:23 ` Tony Cho
  2015-10-16  9:23 ` [PATCH 08/13] staging: wilc1000: CfgConnectResult: use netdev private wilc Tony Cho
                   ` (6 subsequent siblings)
  12 siblings, 0 replies; 15+ messages in thread
From: Tony Cho @ 2015-10-16  9:23 UTC (permalink / raw)
  To: gregkh
  Cc: devel, linux-wireless, tony.cho, glen.lee, leo.kim, austin.shin,
	adel.noureldin, adham.abozaeid, Nicolas.FERRE

From: Glen Lee <glen.lee@atmel.com>

This patch changes function argument wilc with net_device and use nic->wilc
instead of global variable wl. The null check codes should be placed before it
is used so move it.

Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
---
 drivers/staging/wilc1000/linux_wlan.c             | 25 ++++++++++++++---------
 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c |  7 +++----
 drivers/staging/wilc1000/wilc_wfi_netdevice.h     |  1 +
 3 files changed, 19 insertions(+), 14 deletions(-)

diff --git a/drivers/staging/wilc1000/linux_wlan.c b/drivers/staging/wilc1000/linux_wlan.c
index 8c98a0c..b32a8ce 100644
--- a/drivers/staging/wilc1000/linux_wlan.c
+++ b/drivers/staging/wilc1000/linux_wlan.c
@@ -49,7 +49,6 @@ extern bool g_obtainingIP;
 extern u16 Set_machw_change_vir_if(bool bValue);
 extern void resolve_disconnect_aberration(void *drvHandler);
 extern u8 gau8MulticastMacAddrList[WILC_MULTICAST_TABLE_SIZE][ETH_ALEN];
-void wilc1000_wlan_deinit(struct wilc *nic);
 extern struct timer_list hDuringIpTimer;
 
 static int linux_wlan_device_power(int on_off)
@@ -861,16 +860,22 @@ _fail_:
 }
 
 /**************************/
-void wilc1000_wlan_deinit(struct wilc *nic)
+void wilc1000_wlan_deinit(struct net_device *dev)
 {
+	perInterface_wlan_t *nic;
+	struct wilc *wl;
+
+	nic = netdev_priv(dev);
+	wl = nic->wilc;
+
+	if (!wl) {
+		netdev_err(dev, "wl is NULL\n");
+		return;
+	}
+
 	if (wl->initialized) {
 		printk("Deinitializing wilc1000  ...\n");
 
-		if (nic == NULL) {
-			PRINT_ER("nic is NULL\n");
-			return;
-		}
-
 #if defined(PLAT_ALLWINNER_A20) || defined(PLAT_ALLWINNER_A23) || defined(PLAT_ALLWINNER_A31)
 		/* johnny : remove */
 		PRINT_D(INIT_DBG, "skip wilc_bus_set_default_speed\n");
@@ -888,7 +893,7 @@ void wilc1000_wlan_deinit(struct wilc *nic)
 			up(&wl->txq_event);
 
 		PRINT_D(INIT_DBG, "Deinitializing Threads\n");
-		wlan_deinitialize_threads(nic);
+		wlan_deinitialize_threads(wl);
 
 		PRINT_D(INIT_DBG, "Deinitializing IRQ\n");
 		deinit_irq(wl);
@@ -1226,7 +1231,7 @@ int mac_open(struct net_device *ndev)
 
 _err_:
 	wilc_deinit_host_int(ndev);
-	wilc1000_wlan_deinit(wl);
+	wilc1000_wlan_deinit(ndev);
 	return ret;
 }
 
@@ -1425,7 +1430,7 @@ int mac_close(struct net_device *ndev)
 	if (wl->open_ifcs == 0) {
 		PRINT_D(GENERIC_DBG, "Deinitializing wilc1000\n");
 		wl->close = 1;
-		wilc1000_wlan_deinit(wl);
+		wilc1000_wlan_deinit(ndev);
 		WILC_WFI_deinit_mon_interface();
 	}
 
diff --git a/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c b/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
index b34b7d0..270f454 100644
--- a/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
+++ b/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
@@ -2522,7 +2522,6 @@ static int set_power_mgmt(struct wiphy *wiphy, struct net_device *dev,
  *  @date	01 MAR 2012
  *  @version	1.0
  */
-void wilc1000_wlan_deinit(struct wilc *nic);
 int wilc1000_wlan_init(struct net_device *dev, perInterface_wlan_t *p_nic);
 
 static int change_virtual_intf(struct wiphy *wiphy, struct net_device *dev,
@@ -2582,7 +2581,7 @@ static int change_virtual_intf(struct wiphy *wiphy, struct net_device *dev,
 			/*Eliminate host interface blocking state*/
 			up(&wl->cfg_event);
 
-			wilc1000_wlan_deinit(wl);
+			wilc1000_wlan_deinit(dev);
 			wilc1000_wlan_init(dev, nic);
 			g_wilc_initialized = 1;
 			nic->iftype = interface_type;
@@ -2664,7 +2663,7 @@ static int change_virtual_intf(struct wiphy *wiphy, struct net_device *dev,
 			/* ensure that the message Q is empty */
 			host_int_wait_msg_queue_idle();
 
-			wilc1000_wlan_deinit(wl);
+			wilc1000_wlan_deinit(dev);
 			wilc1000_wlan_init(dev, nic);
 			g_wilc_initialized = 1;
 
@@ -2778,7 +2777,7 @@ static int change_virtual_intf(struct wiphy *wiphy, struct net_device *dev,
 
 		/* ensure that the message Q is empty */
 		host_int_wait_msg_queue_idle();
-		wilc1000_wlan_deinit(wl);
+		wilc1000_wlan_deinit(dev);
 		wilc1000_wlan_init(dev, nic);
 		g_wilc_initialized = 1;
 
diff --git a/drivers/staging/wilc1000/wilc_wfi_netdevice.h b/drivers/staging/wilc1000/wilc_wfi_netdevice.h
index cb23134..5769359 100644
--- a/drivers/staging/wilc1000/wilc_wfi_netdevice.h
+++ b/drivers/staging/wilc1000/wilc_wfi_netdevice.h
@@ -215,4 +215,5 @@ void linux_wlan_dbg(u8 *buff);
 int linux_wlan_lock_timeout(void *vp, u32 timeout);
 void wl_wlan_cleanup(void);
 int wilc_netdev_init(struct wilc **wilc);
+void wilc1000_wlan_deinit(struct net_device *dev);
 #endif
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH 08/13] staging: wilc1000: CfgConnectResult: use netdev private wilc
  2015-10-16  9:22 [PATCH 01/13] staging: wilc1000: add wilc to netdev private data structure Tony Cho
                   ` (5 preceding siblings ...)
  2015-10-16  9:23 ` [PATCH 07/13] staging: wilc1000: wilc1000_wlan_deinit: change argument and use nic->wilc Tony Cho
@ 2015-10-16  9:23 ` Tony Cho
  2015-10-16  9:23 ` [PATCH 09/13] staging: wilc1000: add_key: use netdev private wilc instead of wl Tony Cho
                   ` (5 subsequent siblings)
  12 siblings, 0 replies; 15+ messages in thread
From: Tony Cho @ 2015-10-16  9:23 UTC (permalink / raw)
  To: gregkh
  Cc: devel, linux-wireless, tony.cho, glen.lee, leo.kim, austin.shin,
	adel.noureldin, adham.abozaeid, Nicolas.FERRE

From: Glen Lee <glen.lee@atmel.com>

Use netdev private data member wilc instead of global variable wl.

Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
---
 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c b/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
index 270f454..97d9929 100644
--- a/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
+++ b/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
@@ -537,11 +537,15 @@ static void CfgConnectResult(enum conn_event enuConnDisconnEvent,
 	struct net_device *dev;
 	struct host_if_drv *pstrWFIDrv;
 	u8 NullBssid[ETH_ALEN] = {0};
+	struct wilc *wl;
+	perInterface_wlan_t *nic;
 
 	connecting = 0;
 
 	priv = (struct wilc_priv *)pUserVoid;
 	dev = priv->dev;
+	nic = netdev_priv(dev);
+	wl = nic->wilc;
 	pstrWFIDrv = (struct host_if_drv *)priv->hWILCWFIDrv;
 
 	if (enuConnDisconnEvent == CONN_DISCONN_EVENT_CONN_RESP) {
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH 09/13] staging: wilc1000: add_key: use netdev private wilc instead of wl
  2015-10-16  9:22 [PATCH 01/13] staging: wilc1000: add wilc to netdev private data structure Tony Cho
                   ` (6 preceding siblings ...)
  2015-10-16  9:23 ` [PATCH 08/13] staging: wilc1000: CfgConnectResult: use netdev private wilc Tony Cho
@ 2015-10-16  9:23 ` Tony Cho
  2015-10-16  9:23 ` [PATCH 10/13] staging: wilc1000: del_key: " Tony Cho
                   ` (4 subsequent siblings)
  12 siblings, 0 replies; 15+ messages in thread
From: Tony Cho @ 2015-10-16  9:23 UTC (permalink / raw)
  To: gregkh
  Cc: devel, linux-wireless, tony.cho, glen.lee, leo.kim, austin.shin,
	adel.noureldin, adham.abozaeid, Nicolas.FERRE

From: Glen Lee <glen.lee@atmel.com>

Use netdev private data member wilc instead of global variable wl.

Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
---
 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c b/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
index 97d9929..f96f5b8 100644
--- a/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
+++ b/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
@@ -1083,8 +1083,12 @@ static int add_key(struct wiphy *wiphy, struct net_device *netdev, u8 key_index,
 	u8 u8gmode = NO_ENCRYPT;
 	u8 u8pmode = NO_ENCRYPT;
 	enum AUTHTYPE tenuAuth_type = ANY;
+	struct wilc *wl;
+	perInterface_wlan_t *nic;
 
 	priv = wiphy_priv(wiphy);
+	nic = netdev_priv(netdev);
+	wl = nic->wilc;
 
 	PRINT_D(CFG80211_DBG, "Adding key with cipher suite = %x\n", params->cipher);
 
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH 10/13] staging: wilc1000: del_key: use netdev private wilc instead of wl
  2015-10-16  9:22 [PATCH 01/13] staging: wilc1000: add wilc to netdev private data structure Tony Cho
                   ` (7 preceding siblings ...)
  2015-10-16  9:23 ` [PATCH 09/13] staging: wilc1000: add_key: use netdev private wilc instead of wl Tony Cho
@ 2015-10-16  9:23 ` Tony Cho
  2015-10-16  9:23 ` [PATCH 11/13] staging: wilc1000: wilc_mgmt_frame_register: use netdev private wilc Tony Cho
                   ` (3 subsequent siblings)
  12 siblings, 0 replies; 15+ messages in thread
From: Tony Cho @ 2015-10-16  9:23 UTC (permalink / raw)
  To: gregkh
  Cc: devel, linux-wireless, tony.cho, glen.lee, leo.kim, austin.shin,
	adel.noureldin, adham.abozaeid, Nicolas.FERRE

From: Glen Lee <glen.lee@atmel.com>

Use netdev private data member wilc instead of global variable wl

Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
---
 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c b/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
index f96f5b8..7599457 100644
--- a/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
+++ b/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
@@ -1359,8 +1359,12 @@ static int del_key(struct wiphy *wiphy, struct net_device *netdev,
 		   const u8 *mac_addr)
 {
 	struct wilc_priv *priv;
+	struct wilc *wl;
+	perInterface_wlan_t *nic;
 
 	priv = wiphy_priv(wiphy);
+	nic = netdev_priv(netdev);
+	wl = nic->wilc;
 
 	/*delete saved keys, if any*/
 	if (netdev == wl->vif[0].ndev) {
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH 11/13] staging: wilc1000: wilc_mgmt_frame_register: use netdev private wilc
  2015-10-16  9:22 [PATCH 01/13] staging: wilc1000: add wilc to netdev private data structure Tony Cho
                   ` (8 preceding siblings ...)
  2015-10-16  9:23 ` [PATCH 10/13] staging: wilc1000: del_key: " Tony Cho
@ 2015-10-16  9:23 ` Tony Cho
  2015-10-16  9:23 ` [PATCH 12/13] staging: wilc1000: start_ap: use netdev private data wilc Tony Cho
                   ` (2 subsequent siblings)
  12 siblings, 0 replies; 15+ messages in thread
From: Tony Cho @ 2015-10-16  9:23 UTC (permalink / raw)
  To: gregkh
  Cc: devel, linux-wireless, tony.cho, glen.lee, leo.kim, austin.shin,
	adel.noureldin, adham.abozaeid, Nicolas.FERRE

From: Glen Lee <glen.lee@atmel.com>

Use netdev private data member wilc instead of global variable wl.

Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
---
 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c b/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
index 7599457..00ce76f 100644
--- a/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
+++ b/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
@@ -2396,12 +2396,12 @@ void wilc_mgmt_frame_register(struct wiphy *wiphy, struct wireless_dev *wdev,
 
 	struct wilc_priv *priv;
 	perInterface_wlan_t *nic;
-
+	struct wilc *wl;
 
 	priv = wiphy_priv(wiphy);
 	nic = netdev_priv(priv->wdev->netdev);
 
-
+	wl = nic->wilc;
 
 	if (!frame_type)
 		return;
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH 12/13] staging: wilc1000: start_ap: use netdev private data wilc
  2015-10-16  9:22 [PATCH 01/13] staging: wilc1000: add wilc to netdev private data structure Tony Cho
                   ` (9 preceding siblings ...)
  2015-10-16  9:23 ` [PATCH 11/13] staging: wilc1000: wilc_mgmt_frame_register: use netdev private wilc Tony Cho
@ 2015-10-16  9:23 ` Tony Cho
  2015-10-16  9:23 ` [PATCH 13/13] staging: wilc1000: init_irq: change argument and use netdev private wilc Tony Cho
  2015-10-17  5:01 ` [PATCH 01/13] staging: wilc1000: add wilc to netdev private data structure Greg KH
  12 siblings, 0 replies; 15+ messages in thread
From: Tony Cho @ 2015-10-16  9:23 UTC (permalink / raw)
  To: gregkh
  Cc: devel, linux-wireless, tony.cho, glen.lee, leo.kim, austin.shin,
	adel.noureldin, adham.abozaeid, Nicolas.FERRE

From: Glen Lee <glen.lee@atmel.com>

Use netdev private data member wilc instead of global variable wl.

Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
---
 drivers/staging/wilc1000/wilc_wfi_cfgoperations.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c b/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
index 00ce76f..1a27728 100644
--- a/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
+++ b/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
@@ -2889,8 +2889,12 @@ static int start_ap(struct wiphy *wiphy, struct net_device *dev,
 	struct cfg80211_beacon_data *beacon = &(settings->beacon);
 	struct wilc_priv *priv;
 	s32 s32Error = 0;
+	struct wilc *wl;
+	perInterface_wlan_t *nic;
 
 	priv = wiphy_priv(wiphy);
+	nic = netdev_priv(dev);
+	wl = nic->wilc;
 	PRINT_D(HOSTAPD_DBG, "Starting ap\n");
 
 	PRINT_D(HOSTAPD_DBG, "Interval = %d\n DTIM period = %d\n Head length = %zu Tail length = %zu\n",
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH 13/13] staging: wilc1000: init_irq: change argument and use netdev private wilc
  2015-10-16  9:22 [PATCH 01/13] staging: wilc1000: add wilc to netdev private data structure Tony Cho
                   ` (10 preceding siblings ...)
  2015-10-16  9:23 ` [PATCH 12/13] staging: wilc1000: start_ap: use netdev private data wilc Tony Cho
@ 2015-10-16  9:23 ` Tony Cho
  2015-10-17  5:01 ` [PATCH 01/13] staging: wilc1000: add wilc to netdev private data structure Greg KH
  12 siblings, 0 replies; 15+ messages in thread
From: Tony Cho @ 2015-10-16  9:23 UTC (permalink / raw)
  To: gregkh
  Cc: devel, linux-wireless, tony.cho, glen.lee, leo.kim, austin.shin,
	adel.noureldin, adham.abozaeid, Nicolas.FERRE

From: Glen Lee <glen.lee@atmel.com>

This patch changes function argument type wilc with net_device and use
netdev private data member wilc instead of p_nic.

Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
---
 drivers/staging/wilc1000/linux_wlan.c | 18 +++++++++++-------
 1 file changed, 11 insertions(+), 7 deletions(-)

diff --git a/drivers/staging/wilc1000/linux_wlan.c b/drivers/staging/wilc1000/linux_wlan.c
index b32a8ce..b02c8b7 100644
--- a/drivers/staging/wilc1000/linux_wlan.c
+++ b/drivers/staging/wilc1000/linux_wlan.c
@@ -259,10 +259,14 @@ irqreturn_t isr_bh_routine(int irq, void *userdata)
 }
 
 #if (defined WILC_SPI) || (defined WILC_SDIO_IRQ_GPIO)
-static int init_irq(struct wilc *p_nic)
+static int init_irq(struct net_device *dev)
 {
 	int ret = 0;
-	struct wilc *nic = p_nic;
+	perInterface_wlan_t *nic;
+	struct wilc *wl;
+
+	nic = netdev_priv(dev);
+	wl = nic->wilc;
 
 	/*initialize GPIO and register IRQ num*/
 	/*GPIO request*/
@@ -275,23 +279,23 @@ static int init_irq(struct wilc *p_nic)
  * ex) nic->dev_irq_num = gpio_to_irq(GPIO_NUM);
  */
 #else
-		nic->dev_irq_num = gpio_to_irq(GPIO_NUM);
+		wl->dev_irq_num = gpio_to_irq(GPIO_NUM);
 #endif
 	} else {
 		ret = -1;
 		PRINT_ER("could not obtain gpio for WILC_INTR\n");
 	}
 
-	if ((ret != -1) && (request_threaded_irq(nic->dev_irq_num, isr_uh_routine, isr_bh_routine,
+	if ((ret != -1) && (request_threaded_irq(wl->dev_irq_num, isr_uh_routine, isr_bh_routine,
 						  IRQF_TRIGGER_LOW | IRQF_ONESHOT,               /*Without IRQF_ONESHOT the uh will remain kicked in and dont gave a chance to bh*/
-						  "WILC_IRQ", nic)) < 0) {
+						  "WILC_IRQ", wl)) < 0) {
 
 		PRINT_ER("Failed to request IRQ for GPIO: %d\n", GPIO_NUM);
 		ret = -1;
 	} else {
 
 		PRINT_D(INIT_DBG, "IRQ request succeeded IRQ-NUM= %d on GPIO: %d\n",
-			nic->dev_irq_num, GPIO_NUM);
+			wl->dev_irq_num, GPIO_NUM);
 	}
 
 	return ret;
@@ -1054,7 +1058,7 @@ int wilc1000_wlan_init(struct net_device *dev, perInterface_wlan_t *p_nic)
 		}
 
 #if (!defined WILC_SDIO) || (defined WILC_SDIO_IRQ_GPIO)
-		if (init_irq(wl)) {
+		if (init_irq(dev)) {
 			PRINT_ER("couldn't initialize IRQ\n");
 			ret = -EIO;
 			goto _fail_locks_;
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* Re: [PATCH 01/13] staging: wilc1000: add wilc to netdev private data structure
  2015-10-16  9:22 [PATCH 01/13] staging: wilc1000: add wilc to netdev private data structure Tony Cho
                   ` (11 preceding siblings ...)
  2015-10-16  9:23 ` [PATCH 13/13] staging: wilc1000: init_irq: change argument and use netdev private wilc Tony Cho
@ 2015-10-17  5:01 ` Greg KH
  12 siblings, 0 replies; 15+ messages in thread
From: Greg KH @ 2015-10-17  5:01 UTC (permalink / raw)
  To: Tony Cho
  Cc: devel, austin.shin, linux-wireless, Nicolas.FERRE, adel.noureldin,
	leo.kim, adham.abozaeid

On Fri, Oct 16, 2015 at 06:22:57PM +0900, Tony Cho wrote:
> From: Glen Lee <glen.lee@atmel.com>
> 
> This patch adds struct wilc to struct perInterface_wlan_t which is netdev
> private data to access wilc via netdev_priv function and assigns wilc to
> nic->wilc. The global variable wl will be replaced with netdev private data
> member wilc step by step.

Nice, this is a great series, but it doesn't apply :(

Please fix up and resend.

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 01/13] staging: wilc1000: add wilc to netdev private data structure
@ 2015-10-20  8:13 Tony Cho
  0 siblings, 0 replies; 15+ messages in thread
From: Tony Cho @ 2015-10-20  8:13 UTC (permalink / raw)
  To: gregkh
  Cc: devel, linux-wireless, tony.cho, glen.lee, leo.kim, austin.shin,
	adel.noureldin, adham.abozaeid, Nicolas.FERRE

From: Glen Lee <glen.lee@atmel.com>

This patch add wilc to struct perInterface_wlan_t which is netdev private
data to access wilc via netdev_priv function. Assign wilc to nic->wilc.
The global variable g_linux_wlan will be replaced with netdev private data
member wilc step by step.

Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Tony Cho <tony.cho@atmel.com>
---
 drivers/staging/wilc1000/linux_wlan.c         | 1 +
 drivers/staging/wilc1000/wilc_wfi_netdevice.h | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/staging/wilc1000/linux_wlan.c b/drivers/staging/wilc1000/linux_wlan.c
index 5701e58..8fa6b7c 100644
--- a/drivers/staging/wilc1000/linux_wlan.c
+++ b/drivers/staging/wilc1000/linux_wlan.c
@@ -1662,6 +1662,7 @@ int wilc_netdev_init(struct wilc **wilc)
 
 		nic->u8IfIdx = g_linux_wlan->vif_num;
 		nic->wilc_netdev = ndev;
+		nic->wilc = *wilc;
 		g_linux_wlan->vif[g_linux_wlan->vif_num].ndev = ndev;
 		g_linux_wlan->vif_num++;
 		ndev->netdev_ops = &wilc_netdev_ops;
diff --git a/drivers/staging/wilc1000/wilc_wfi_netdevice.h b/drivers/staging/wilc1000/wilc_wfi_netdevice.h
index e0c66bc..40a44f8 100644
--- a/drivers/staging/wilc1000/wilc_wfi_netdevice.h
+++ b/drivers/staging/wilc1000/wilc_wfi_netdevice.h
@@ -199,7 +199,7 @@ typedef struct {
 	struct_frame_reg g_struct_frame_reg[num_reg_frame];
 	struct net_device *wilc_netdev;
 	struct net_device_stats netstats;
-
+	struct wilc *wilc;
 } perInterface_wlan_t;
 
 struct WILC_WFI_mon_priv {
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2015-10-20  8:14 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-10-16  9:22 [PATCH 01/13] staging: wilc1000: add wilc to netdev private data structure Tony Cho
2015-10-16  9:22 ` [PATCH 02/13] staging: wilc1000: wilc1000_wlan_init: use netdev private wilc Tony Cho
2015-10-16  9:22 ` [PATCH 03/13] staging: wilc1000: wlan_init_locks: change parameter and use nic-wilc Tony Cho
2015-10-16  9:23 ` [PATCH 04/13] staging: wilc1000: mac_open: use netdev private wilc Tony Cho
2015-10-16  9:23 ` [PATCH 05/13] staging: wilc1000: mac_close: use netdev private wilc instead of wl Tony Cho
2015-10-16  9:23 ` [PATCH 06/13] staging: wilc1000: chage_virtual_intf: use netdev private wilc Tony Cho
2015-10-16  9:23 ` [PATCH 07/13] staging: wilc1000: wilc1000_wlan_deinit: change argument and use nic->wilc Tony Cho
2015-10-16  9:23 ` [PATCH 08/13] staging: wilc1000: CfgConnectResult: use netdev private wilc Tony Cho
2015-10-16  9:23 ` [PATCH 09/13] staging: wilc1000: add_key: use netdev private wilc instead of wl Tony Cho
2015-10-16  9:23 ` [PATCH 10/13] staging: wilc1000: del_key: " Tony Cho
2015-10-16  9:23 ` [PATCH 11/13] staging: wilc1000: wilc_mgmt_frame_register: use netdev private wilc Tony Cho
2015-10-16  9:23 ` [PATCH 12/13] staging: wilc1000: start_ap: use netdev private data wilc Tony Cho
2015-10-16  9:23 ` [PATCH 13/13] staging: wilc1000: init_irq: change argument and use netdev private wilc Tony Cho
2015-10-17  5:01 ` [PATCH 01/13] staging: wilc1000: add wilc to netdev private data structure Greg KH
  -- strict thread matches above, loose matches on Subject: below --
2015-10-20  8:13 Tony Cho

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).