staging: wilc1000: set hif_drv before it is used

We are using hif_drv of vif, so it needs to be set before it is used.
Set hif_drv to vif->hifdrv soon after it is allocated.

Signed-off-by: Glen Lee <glen.lee@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Glen Lee 2015-12-21 14:18:49 +09:00 committed by Greg Kroah-Hartman
parent cd2920a50c
commit 03efae328d
2 changed files with 6 additions and 1 deletions

View File

@ -3782,6 +3782,7 @@ s32 wilc_init(struct net_device *dev, struct host_if_drv **hif_drv_handler)
struct host_if_drv *hif_drv;
struct wilc_vif *vif;
struct wilc *wilc;
int i;
vif = netdev_priv(dev);
wilc = vif->wilc;
@ -3798,6 +3799,11 @@ s32 wilc_init(struct net_device *dev, struct host_if_drv **hif_drv_handler)
goto _fail_;
}
*hif_drv_handler = hif_drv;
for (i = 0; i < wilc->vif_num; i++)
if (dev == wilc->vif[i]->ndev) {
wilc->vif[i]->hif_drv = hif_drv;
break;
}
wilc_optaining_ip = false;

View File

@ -1036,7 +1036,6 @@ int wilc_mac_open(struct net_device *ndev)
for (i = 0; i < wl->vif_num; i++) {
if (ndev == wl->vif[i]->ndev) {
memcpy(wl->vif[i]->src_addr, mac_add, ETH_ALEN);
wl->vif[i]->hif_drv = priv->hWILCWFIDrv;
break;
}
}