Commit 11f4b2ee authored by Glen Lee's avatar Glen Lee Committed by Greg Kroah-Hartman

staging: wilc1000: WILC_WFI_mgmt_rx: add argument wilc and use it

This patch add new argument wilc and use it instead of g_wlan_linux.
Declare the function in wilc_wfi_netdevice.h.
Signed-off-by: default avatarGlen Lee <glen.lee@atmel.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 7c67c053
...@@ -1611,25 +1611,25 @@ void frmw_to_linux(u8 *buff, u32 size, u32 pkt_offset) ...@@ -1611,25 +1611,25 @@ void frmw_to_linux(u8 *buff, u32 size, u32 pkt_offset)
} }
} }
void WILC_WFI_mgmt_rx(u8 *buff, u32 size) void WILC_WFI_mgmt_rx(struct wilc *wilc, u8 *buff, u32 size)
{ {
int i = 0; int i = 0;
perInterface_wlan_t *nic; perInterface_wlan_t *nic;
/*Pass the frame on the monitor interface, if any.*/ /*Pass the frame on the monitor interface, if any.*/
/*Otherwise, pass it on p2p0 netdev, if registered on it*/ /*Otherwise, pass it on p2p0 netdev, if registered on it*/
for (i = 0; i < g_linux_wlan->vif_num; i++) { for (i = 0; i < wilc->vif_num; i++) {
nic = netdev_priv(g_linux_wlan->vif[i].ndev); nic = netdev_priv(wilc->vif[i].ndev);
if (nic->monitor_flag) { if (nic->monitor_flag) {
WILC_WFI_monitor_rx(buff, size); WILC_WFI_monitor_rx(buff, size);
return; return;
} }
} }
nic = netdev_priv(g_linux_wlan->vif[1].ndev); /* p2p0 */ nic = netdev_priv(wilc->vif[1].ndev); /* p2p0 */
if ((buff[0] == nic->g_struct_frame_reg[0].frame_type && nic->g_struct_frame_reg[0].reg) || if ((buff[0] == nic->g_struct_frame_reg[0].frame_type && nic->g_struct_frame_reg[0].reg) ||
(buff[0] == nic->g_struct_frame_reg[1].frame_type && nic->g_struct_frame_reg[1].reg)) (buff[0] == nic->g_struct_frame_reg[1].frame_type && nic->g_struct_frame_reg[1].reg))
WILC_WFI_p2p_rx(g_linux_wlan->vif[1].ndev, buff, size); WILC_WFI_p2p_rx(wilc->vif[1].ndev, buff, size);
} }
void wl_wlan_cleanup(void) void wl_wlan_cleanup(void)
......
...@@ -216,4 +216,5 @@ int linux_wlan_lock_timeout(void *vp, u32 timeout); ...@@ -216,4 +216,5 @@ int linux_wlan_lock_timeout(void *vp, u32 timeout);
void wl_wlan_cleanup(void); void wl_wlan_cleanup(void);
int wilc_netdev_init(struct wilc **wilc); int wilc_netdev_init(struct wilc **wilc);
void wilc1000_wlan_deinit(struct net_device *dev); void wilc1000_wlan_deinit(struct net_device *dev);
void WILC_WFI_mgmt_rx(struct wilc *wilc, u8 *buff, u32 size);
#endif #endif
...@@ -18,7 +18,6 @@ ...@@ -18,7 +18,6 @@
********************************************/ ********************************************/
extern wilc_hif_func_t hif_sdio; extern wilc_hif_func_t hif_sdio;
extern wilc_hif_func_t hif_spi; extern wilc_hif_func_t hif_spi;
extern void WILC_WFI_mgmt_rx(u8 *buff, u32 size);
u32 wilc_get_chipid(u8 update); u32 wilc_get_chipid(u8 update);
u16 Set_machw_change_vir_if(bool bValue); u16 Set_machw_change_vir_if(bool bValue);
...@@ -1178,7 +1177,7 @@ static void wilc_wlan_handle_rxq(struct wilc *wilc) ...@@ -1178,7 +1177,7 @@ static void wilc_wlan_handle_rxq(struct wilc *wilc)
/* reset mgmt indicator bit, to use pkt_offeset in furthur calculations */ /* reset mgmt indicator bit, to use pkt_offeset in furthur calculations */
pkt_offset &= ~(IS_MANAGMEMENT | IS_MANAGMEMENT_CALLBACK | IS_MGMT_STATUS_SUCCES); pkt_offset &= ~(IS_MANAGMEMENT | IS_MANAGMEMENT_CALLBACK | IS_MGMT_STATUS_SUCCES);
WILC_WFI_mgmt_rx(&buffer[offset + HOST_HDR_OFFSET], pkt_len); WILC_WFI_mgmt_rx(wilc, &buffer[offset + HOST_HDR_OFFSET], pkt_len);
} }
else else
{ {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment