aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArend van Spriel <arend@broadcom.com>2013-04-03 12:40:45 +0200
committerJohn W. Linville <linville@tuxdriver.com>2013-04-03 15:07:07 -0400
commitbfc8bbf91f861815d0382a26b4bbc825f5531bfa (patch)
tree42ade100747eb1b64bce8090e8aed6f0d2aefeb4
parentc3203374bea328af54843bd72f9306e6c7832db4 (diff)
downloadbluetooth-next-bfc8bbf91f861815d0382a26b4bbc825f5531bfa.tar.gz
brcmfmac: initialize struct brcmf_fws_info fields before iovar
If iovar to the firmware fails the firmware-signalling module does a cleanup for which it needs pointer to struct brcmf_pub, which it gets from struct brcmf_fws_info::drvr. Assign this field before doing the tlv iovar. Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Piotr Haber <phaber@broadcom.com> Reviewed-by: Hante Meuleman <meuleman@broadcom.com> Signed-off-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/net/wireless/brcm80211/brcmfmac/fwsignal.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/net/wireless/brcm80211/brcmfmac/fwsignal.c b/drivers/net/wireless/brcm80211/brcmfmac/fwsignal.c
index 314aedc0f9b340..6d036b7e8a4490 100644
--- a/drivers/net/wireless/brcm80211/brcmfmac/fwsignal.c
+++ b/drivers/net/wireless/brcm80211/brcmfmac/fwsignal.c
@@ -919,6 +919,10 @@ int brcmf_fws_init(struct brcmf_pub *drvr)
goto fail;
}
+ /* set linkage back */
+ drvr->fws->drvr = drvr;
+ drvr->fws->fcmode = fcmode;
+
/* enable proptxtstatus signaling by default */
rc = brcmf_fil_iovar_int_set(drvr->iflist[0], "tlv", tlv);
if (rc < 0) {
@@ -937,10 +941,6 @@ int brcmf_fws_init(struct brcmf_pub *drvr)
/* create debugfs file for statistics */
brcmf_debugfs_create_fws_stats(drvr, &drvr->fws->stats);
- /* set linkage back */
- drvr->fws->drvr = drvr;
- drvr->fws->fcmode = fcmode;
-
/* TODO: remove upon feature delivery */
brcmf_err("%s bdcv2 tlv signaling [%x]\n",
drvr->fw_signals ? "enabled" : "disabled", tlv);