Skip to content

Commit

Permalink
brcmfmac: fix problem connecting to AP without security
Browse files Browse the repository at this point in the history
The bcm43236 device showed having an issue connection to an AP without
security when auth_type was set to automatic. For this particular device
a workaround is made by selecting open-system. This problem does not
occur when using wpa_supplicant as it will not use auth type automatic.

Reviewed-by: Hante Meuleman <meuleman@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Reviewed-by: Piotr Haber <phaber@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 Feb 8, 2013
1 parent 371830e commit cbb1ec9
Showing 1 changed file with 21 additions and 1 deletion.
22 changes: 21 additions & 1 deletion drivers/net/wireless/brcm80211/brcmfmac/wl_cfg80211.c
Original file line number Diff line number Diff line change
Expand Up @@ -1365,9 +1365,28 @@ brcmf_set_sharedkey(struct net_device *ndev,
return err;
}

static
enum nl80211_auth_type brcmf_war_auth_type(struct brcmf_if *ifp,
enum nl80211_auth_type type)
{
u32 ci;
if (type == NL80211_AUTHTYPE_AUTOMATIC) {
/* shift to ignore chip revision */
ci = brcmf_get_chip_info(ifp) >> 4;
switch (ci) {
case 43236:
brcmf_dbg(CONN, "43236 WAR: use OPEN instead of AUTO\n");
return NL80211_AUTHTYPE_OPEN_SYSTEM;
default:
break;
}
}
return type;
}

static s32
brcmf_cfg80211_connect(struct wiphy *wiphy, struct net_device *ndev,
struct cfg80211_connect_params *sme)
struct cfg80211_connect_params *sme)
{
struct brcmf_cfg80211_info *cfg = wiphy_to_cfg(wiphy);
struct brcmf_if *ifp = netdev_priv(ndev);
Expand Down Expand Up @@ -1410,6 +1429,7 @@ brcmf_cfg80211_connect(struct wiphy *wiphy, struct net_device *ndev,
goto done;
}

sme->auth_type = brcmf_war_auth_type(ifp, sme->auth_type);
err = brcmf_set_auth_type(ndev, sme);
if (err) {
brcmf_err("wl_set_auth_type failed (%d)\n", err);
Expand Down

0 comments on commit cbb1ec9

Please sign in to comment.