Skip to content

Commit

Permalink
brcmfmac: initialize struct brcmf_fws_info fields before iovar
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
Arend van Spriel authored and John W. Linville committed Apr 3, 2013
1 parent c320337 commit bfc8bbf
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions drivers/net/wireless/brcm80211/brcmfmac/fwsignal.c
Original file line number Diff line number Diff line change
Expand Up @@ -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) {
Expand All @@ -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);
Expand Down

0 comments on commit bfc8bbf

Please sign in to comment.