Commit 6c8c4f72 authored by Arend van Spriel's avatar Arend van Spriel Committed by John W. Linville

brcmfmac: remove brcmf_update_prof() function

The function brcmf_update_prof() only add complexity that is not
needed.
Reviewed-by: default avatarHante Meuleman <meuleman@broadcom.com>
Reviewed-by: default avatarPieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: default avatarArend van Spriel <arend@broadcom.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 06bb123e
...@@ -1283,47 +1283,6 @@ static s32 brcmf_cfg80211_set_wiphy_params(struct wiphy *wiphy, u32 changed) ...@@ -1283,47 +1283,6 @@ static s32 brcmf_cfg80211_set_wiphy_params(struct wiphy *wiphy, u32 changed)
return err; return err;
} }
static s32
brcmf_update_prof(struct brcmf_cfg80211_info *cfg,
const struct brcmf_event_msg *e, void *data, s32 item)
{
s32 err = 0;
struct brcmf_ssid *ssid;
switch (item) {
case WL_PROF_SSID:
ssid = (struct brcmf_ssid *) data;
memset(cfg->profile->ssid.SSID, 0,
sizeof(cfg->profile->ssid.SSID));
memcpy(cfg->profile->ssid.SSID,
ssid->SSID, ssid->SSID_len);
cfg->profile->ssid.SSID_len = ssid->SSID_len;
break;
case WL_PROF_BSSID:
if (data)
memcpy(cfg->profile->bssid, data, ETH_ALEN);
else
memset(cfg->profile->bssid, 0, ETH_ALEN);
break;
case WL_PROF_SEC:
memcpy(&cfg->profile->sec, data,
sizeof(cfg->profile->sec));
break;
case WL_PROF_BEACONINT:
cfg->profile->beacon_interval = *(u16 *)data;
break;
case WL_PROF_DTIMPERIOD:
cfg->profile->dtim_period = *(u8 *)data;
break;
default:
WL_ERR("unsupported item (%d)\n", item);
err = -EOPNOTSUPP;
break;
}
return err;
}
static void brcmf_init_prof(struct brcmf_cfg80211_profile *prof) static void brcmf_init_prof(struct brcmf_cfg80211_profile *prof)
{ {
memset(prof, 0, sizeof(*prof)); memset(prof, 0, sizeof(*prof));
...@@ -1379,12 +1338,12 @@ brcmf_cfg80211_join_ibss(struct wiphy *wiphy, struct net_device *ndev, ...@@ -1379,12 +1338,12 @@ brcmf_cfg80211_join_ibss(struct wiphy *wiphy, struct net_device *ndev,
struct cfg80211_ibss_params *params) struct cfg80211_ibss_params *params)
{ {
struct brcmf_cfg80211_info *cfg = wiphy_to_cfg(wiphy); struct brcmf_cfg80211_info *cfg = wiphy_to_cfg(wiphy);
struct brcmf_cfg80211_profile *profile = cfg->profile;
struct brcmf_join_params join_params; struct brcmf_join_params join_params;
size_t join_params_size = 0; size_t join_params_size = 0;
s32 err = 0; s32 err = 0;
s32 wsec = 0; s32 wsec = 0;
s32 bcnprd; s32 bcnprd;
struct brcmf_ssid ssid;
WL_TRACE("Enter\n"); WL_TRACE("Enter\n");
if (!check_sys_up(wiphy)) if (!check_sys_up(wiphy))
...@@ -1460,25 +1419,23 @@ brcmf_cfg80211_join_ibss(struct wiphy *wiphy, struct net_device *ndev, ...@@ -1460,25 +1419,23 @@ brcmf_cfg80211_join_ibss(struct wiphy *wiphy, struct net_device *ndev,
memset(&join_params, 0, sizeof(struct brcmf_join_params)); memset(&join_params, 0, sizeof(struct brcmf_join_params));
/* SSID */ /* SSID */
ssid.SSID_len = min_t(u32, params->ssid_len, 32); profile->ssid.SSID_len = min_t(u32, params->ssid_len, 32);
memcpy(ssid.SSID, params->ssid, ssid.SSID_len); memcpy(profile->ssid.SSID, params->ssid, profile->ssid.SSID_len);
memcpy(join_params.ssid_le.SSID, params->ssid, ssid.SSID_len); memcpy(join_params.ssid_le.SSID, params->ssid, profile->ssid.SSID_len);
join_params.ssid_le.SSID_len = cpu_to_le32(ssid.SSID_len); join_params.ssid_le.SSID_len = cpu_to_le32(profile->ssid.SSID_len);
join_params_size = sizeof(join_params.ssid_le); join_params_size = sizeof(join_params.ssid_le);
brcmf_update_prof(cfg, NULL, &ssid, WL_PROF_SSID);
/* BSSID */ /* BSSID */
if (params->bssid) { if (params->bssid) {
memcpy(join_params.params_le.bssid, params->bssid, ETH_ALEN); memcpy(join_params.params_le.bssid, params->bssid, ETH_ALEN);
join_params_size = sizeof(join_params.ssid_le) + join_params_size = sizeof(join_params.ssid_le) +
BRCMF_ASSOC_PARAMS_FIXED_SIZE; BRCMF_ASSOC_PARAMS_FIXED_SIZE;
memcpy(profile->bssid, params->bssid, ETH_ALEN);
} else { } else {
memcpy(join_params.params_le.bssid, ether_bcast, ETH_ALEN); memcpy(join_params.params_le.bssid, ether_bcast, ETH_ALEN);
memset(profile->bssid, 0, ETH_ALEN);
} }
brcmf_update_prof(cfg, NULL,
&join_params.params_le.bssid, WL_PROF_BSSID);
/* Channel */ /* Channel */
if (params->channel) { if (params->channel) {
u32 target_channel; u32 target_channel;
...@@ -1800,6 +1757,7 @@ brcmf_cfg80211_connect(struct wiphy *wiphy, struct net_device *ndev, ...@@ -1800,6 +1757,7 @@ 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_cfg80211_info *cfg = wiphy_to_cfg(wiphy);
struct brcmf_cfg80211_profile *profile = cfg->profile;
struct ieee80211_channel *chan = sme->channel; struct ieee80211_channel *chan = sme->channel;
struct brcmf_join_params join_params; struct brcmf_join_params join_params;
size_t join_params_size; size_t join_params_size;
...@@ -1861,11 +1819,11 @@ brcmf_cfg80211_connect(struct wiphy *wiphy, struct net_device *ndev, ...@@ -1861,11 +1819,11 @@ brcmf_cfg80211_connect(struct wiphy *wiphy, struct net_device *ndev,
memset(&join_params, 0, sizeof(join_params)); memset(&join_params, 0, sizeof(join_params));
join_params_size = sizeof(join_params.ssid_le); join_params_size = sizeof(join_params.ssid_le);
ssid.SSID_len = min_t(u32, sizeof(ssid.SSID), (u32)sme->ssid_len); profile->ssid.SSID_len = min_t(u32,
memcpy(&join_params.ssid_le.SSID, sme->ssid, ssid.SSID_len); sizeof(ssid.SSID), (u32)sme->ssid_len);
memcpy(&ssid.SSID, sme->ssid, ssid.SSID_len); memcpy(&join_params.ssid_le.SSID, sme->ssid, profile->ssid.SSID_len);
join_params.ssid_le.SSID_len = cpu_to_le32(ssid.SSID_len); memcpy(&profile->ssid.SSID, sme->ssid, profile->ssid.SSID_len);
brcmf_update_prof(cfg, NULL, &ssid, WL_PROF_SSID); join_params.ssid_le.SSID_len = cpu_to_le32(profile->ssid.SSID_len);
memcpy(join_params.params_le.bssid, ether_bcast, ETH_ALEN); memcpy(join_params.params_le.bssid, ether_bcast, ETH_ALEN);
...@@ -2781,8 +2739,8 @@ static s32 brcmf_update_bss_info(struct brcmf_cfg80211_info *cfg) ...@@ -2781,8 +2739,8 @@ static s32 brcmf_update_bss_info(struct brcmf_cfg80211_info *cfg)
dtim_period = (u8)var; dtim_period = (u8)var;
} }
brcmf_update_prof(cfg, NULL, &beacon_interval, WL_PROF_BEACONINT); profile->beacon_interval = beacon_interval;
brcmf_update_prof(cfg, NULL, &dtim_period, WL_PROF_DTIMPERIOD); profile->dtim_period = dtim_period;
update_bss_info_out: update_bss_info_out:
WL_TRACE("Exit"); WL_TRACE("Exit");
...@@ -4656,7 +4614,7 @@ brcmf_bss_roaming_done(struct brcmf_cfg80211_info *cfg, ...@@ -4656,7 +4614,7 @@ brcmf_bss_roaming_done(struct brcmf_cfg80211_info *cfg,
WL_TRACE("Enter\n"); WL_TRACE("Enter\n");
brcmf_get_assoc_ies(cfg); brcmf_get_assoc_ies(cfg);
brcmf_update_prof(cfg, NULL, &e->addr, WL_PROF_BSSID); memcpy(profile->bssid, e->addr, ETH_ALEN);
brcmf_update_bss_info(cfg); brcmf_update_bss_info(cfg);
brcmf_exec_dcmd(ndev, BRCMF_C_GET_CHANNEL, &channel_le, brcmf_exec_dcmd(ndev, BRCMF_C_GET_CHANNEL, &channel_le,
...@@ -4697,8 +4655,7 @@ brcmf_bss_connect_done(struct brcmf_cfg80211_info *cfg, ...@@ -4697,8 +4655,7 @@ brcmf_bss_connect_done(struct brcmf_cfg80211_info *cfg,
if (test_and_clear_bit(WL_STATUS_CONNECTING, &cfg->status)) { if (test_and_clear_bit(WL_STATUS_CONNECTING, &cfg->status)) {
if (completed) { if (completed) {
brcmf_get_assoc_ies(cfg); brcmf_get_assoc_ies(cfg);
brcmf_update_prof(cfg, NULL, &e->addr, memcpy(profile->bssid, e->addr, ETH_ALEN);
WL_PROF_BSSID);
brcmf_update_bss_info(cfg); brcmf_update_bss_info(cfg);
} }
cfg80211_connect_result(ndev, cfg80211_connect_result(ndev,
...@@ -4763,6 +4720,7 @@ brcmf_notify_connect_status(struct brcmf_cfg80211_info *cfg, ...@@ -4763,6 +4720,7 @@ brcmf_notify_connect_status(struct brcmf_cfg80211_info *cfg,
struct net_device *ndev, struct net_device *ndev,
const struct brcmf_event_msg *e, void *data) const struct brcmf_event_msg *e, void *data)
{ {
struct brcmf_cfg80211_profile *profile = cfg->profile;
s32 err = 0; s32 err = 0;
if (cfg->conf->mode == WL_MODE_AP) { if (cfg->conf->mode == WL_MODE_AP) {
...@@ -4770,8 +4728,7 @@ brcmf_notify_connect_status(struct brcmf_cfg80211_info *cfg, ...@@ -4770,8 +4728,7 @@ brcmf_notify_connect_status(struct brcmf_cfg80211_info *cfg,
} else if (brcmf_is_linkup(cfg, e)) { } else if (brcmf_is_linkup(cfg, e)) {
WL_CONN("Linkup\n"); WL_CONN("Linkup\n");
if (brcmf_is_ibssmode(cfg)) { if (brcmf_is_ibssmode(cfg)) {
brcmf_update_prof(cfg, NULL, (void *)e->addr, memcpy(profile->bssid, e->addr, ETH_ALEN);
WL_PROF_BSSID);
wl_inform_ibss(cfg, ndev, e->addr); wl_inform_ibss(cfg, ndev, e->addr);
cfg80211_ibss_joined(ndev, e->addr, GFP_KERNEL); cfg80211_ibss_joined(ndev, e->addr, GFP_KERNEL);
clear_bit(WL_STATUS_CONNECTING, &cfg->status); clear_bit(WL_STATUS_CONNECTING, &cfg->status);
......
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