Skip to content

Commit 6c8c4f7

Browse files
Arend van Spriellinvjw
authored andcommitted
brcmfmac: remove brcmf_update_prof() function
The function brcmf_update_prof() only add complexity that is not needed. Reviewed-by: Hante Meuleman <meuleman@broadcom.com> Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Signed-off-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
1 parent 06bb123 commit 6c8c4f7

File tree

1 file changed

+19
-62
lines changed

1 file changed

+19
-62
lines changed

drivers/net/wireless/brcm80211/brcmfmac/wl_cfg80211.c

Lines changed: 19 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -1283,47 +1283,6 @@ static s32 brcmf_cfg80211_set_wiphy_params(struct wiphy *wiphy, u32 changed)
12831283
return err;
12841284
}
12851285

1286-
static s32
1287-
brcmf_update_prof(struct brcmf_cfg80211_info *cfg,
1288-
const struct brcmf_event_msg *e, void *data, s32 item)
1289-
{
1290-
s32 err = 0;
1291-
struct brcmf_ssid *ssid;
1292-
1293-
switch (item) {
1294-
case WL_PROF_SSID:
1295-
ssid = (struct brcmf_ssid *) data;
1296-
memset(cfg->profile->ssid.SSID, 0,
1297-
sizeof(cfg->profile->ssid.SSID));
1298-
memcpy(cfg->profile->ssid.SSID,
1299-
ssid->SSID, ssid->SSID_len);
1300-
cfg->profile->ssid.SSID_len = ssid->SSID_len;
1301-
break;
1302-
case WL_PROF_BSSID:
1303-
if (data)
1304-
memcpy(cfg->profile->bssid, data, ETH_ALEN);
1305-
else
1306-
memset(cfg->profile->bssid, 0, ETH_ALEN);
1307-
break;
1308-
case WL_PROF_SEC:
1309-
memcpy(&cfg->profile->sec, data,
1310-
sizeof(cfg->profile->sec));
1311-
break;
1312-
case WL_PROF_BEACONINT:
1313-
cfg->profile->beacon_interval = *(u16 *)data;
1314-
break;
1315-
case WL_PROF_DTIMPERIOD:
1316-
cfg->profile->dtim_period = *(u8 *)data;
1317-
break;
1318-
default:
1319-
WL_ERR("unsupported item (%d)\n", item);
1320-
err = -EOPNOTSUPP;
1321-
break;
1322-
}
1323-
1324-
return err;
1325-
}
1326-
13271286
static void brcmf_init_prof(struct brcmf_cfg80211_profile *prof)
13281287
{
13291288
memset(prof, 0, sizeof(*prof));
@@ -1379,12 +1338,12 @@ brcmf_cfg80211_join_ibss(struct wiphy *wiphy, struct net_device *ndev,
13791338
struct cfg80211_ibss_params *params)
13801339
{
13811340
struct brcmf_cfg80211_info *cfg = wiphy_to_cfg(wiphy);
1341+
struct brcmf_cfg80211_profile *profile = cfg->profile;
13821342
struct brcmf_join_params join_params;
13831343
size_t join_params_size = 0;
13841344
s32 err = 0;
13851345
s32 wsec = 0;
13861346
s32 bcnprd;
1387-
struct brcmf_ssid ssid;
13881347

13891348
WL_TRACE("Enter\n");
13901349
if (!check_sys_up(wiphy))
@@ -1460,25 +1419,23 @@ brcmf_cfg80211_join_ibss(struct wiphy *wiphy, struct net_device *ndev,
14601419
memset(&join_params, 0, sizeof(struct brcmf_join_params));
14611420

14621421
/* SSID */
1463-
ssid.SSID_len = min_t(u32, params->ssid_len, 32);
1464-
memcpy(ssid.SSID, params->ssid, ssid.SSID_len);
1465-
memcpy(join_params.ssid_le.SSID, params->ssid, ssid.SSID_len);
1466-
join_params.ssid_le.SSID_len = cpu_to_le32(ssid.SSID_len);
1422+
profile->ssid.SSID_len = min_t(u32, params->ssid_len, 32);
1423+
memcpy(profile->ssid.SSID, params->ssid, profile->ssid.SSID_len);
1424+
memcpy(join_params.ssid_le.SSID, params->ssid, profile->ssid.SSID_len);
1425+
join_params.ssid_le.SSID_len = cpu_to_le32(profile->ssid.SSID_len);
14671426
join_params_size = sizeof(join_params.ssid_le);
1468-
brcmf_update_prof(cfg, NULL, &ssid, WL_PROF_SSID);
14691427

14701428
/* BSSID */
14711429
if (params->bssid) {
14721430
memcpy(join_params.params_le.bssid, params->bssid, ETH_ALEN);
14731431
join_params_size = sizeof(join_params.ssid_le) +
14741432
BRCMF_ASSOC_PARAMS_FIXED_SIZE;
1433+
memcpy(profile->bssid, params->bssid, ETH_ALEN);
14751434
} else {
14761435
memcpy(join_params.params_le.bssid, ether_bcast, ETH_ALEN);
1436+
memset(profile->bssid, 0, ETH_ALEN);
14771437
}
14781438

1479-
brcmf_update_prof(cfg, NULL,
1480-
&join_params.params_le.bssid, WL_PROF_BSSID);
1481-
14821439
/* Channel */
14831440
if (params->channel) {
14841441
u32 target_channel;
@@ -1800,6 +1757,7 @@ brcmf_cfg80211_connect(struct wiphy *wiphy, struct net_device *ndev,
18001757
struct cfg80211_connect_params *sme)
18011758
{
18021759
struct brcmf_cfg80211_info *cfg = wiphy_to_cfg(wiphy);
1760+
struct brcmf_cfg80211_profile *profile = cfg->profile;
18031761
struct ieee80211_channel *chan = sme->channel;
18041762
struct brcmf_join_params join_params;
18051763
size_t join_params_size;
@@ -1861,11 +1819,11 @@ brcmf_cfg80211_connect(struct wiphy *wiphy, struct net_device *ndev,
18611819
memset(&join_params, 0, sizeof(join_params));
18621820
join_params_size = sizeof(join_params.ssid_le);
18631821

1864-
ssid.SSID_len = min_t(u32, sizeof(ssid.SSID), (u32)sme->ssid_len);
1865-
memcpy(&join_params.ssid_le.SSID, sme->ssid, ssid.SSID_len);
1866-
memcpy(&ssid.SSID, sme->ssid, ssid.SSID_len);
1867-
join_params.ssid_le.SSID_len = cpu_to_le32(ssid.SSID_len);
1868-
brcmf_update_prof(cfg, NULL, &ssid, WL_PROF_SSID);
1822+
profile->ssid.SSID_len = min_t(u32,
1823+
sizeof(ssid.SSID), (u32)sme->ssid_len);
1824+
memcpy(&join_params.ssid_le.SSID, sme->ssid, profile->ssid.SSID_len);
1825+
memcpy(&profile->ssid.SSID, sme->ssid, profile->ssid.SSID_len);
1826+
join_params.ssid_le.SSID_len = cpu_to_le32(profile->ssid.SSID_len);
18691827

18701828
memcpy(join_params.params_le.bssid, ether_bcast, ETH_ALEN);
18711829

@@ -2781,8 +2739,8 @@ static s32 brcmf_update_bss_info(struct brcmf_cfg80211_info *cfg)
27812739
dtim_period = (u8)var;
27822740
}
27832741

2784-
brcmf_update_prof(cfg, NULL, &beacon_interval, WL_PROF_BEACONINT);
2785-
brcmf_update_prof(cfg, NULL, &dtim_period, WL_PROF_DTIMPERIOD);
2742+
profile->beacon_interval = beacon_interval;
2743+
profile->dtim_period = dtim_period;
27862744

27872745
update_bss_info_out:
27882746
WL_TRACE("Exit");
@@ -4656,7 +4614,7 @@ brcmf_bss_roaming_done(struct brcmf_cfg80211_info *cfg,
46564614
WL_TRACE("Enter\n");
46574615

46584616
brcmf_get_assoc_ies(cfg);
4659-
brcmf_update_prof(cfg, NULL, &e->addr, WL_PROF_BSSID);
4617+
memcpy(profile->bssid, e->addr, ETH_ALEN);
46604618
brcmf_update_bss_info(cfg);
46614619

46624620
brcmf_exec_dcmd(ndev, BRCMF_C_GET_CHANNEL, &channel_le,
@@ -4697,8 +4655,7 @@ brcmf_bss_connect_done(struct brcmf_cfg80211_info *cfg,
46974655
if (test_and_clear_bit(WL_STATUS_CONNECTING, &cfg->status)) {
46984656
if (completed) {
46994657
brcmf_get_assoc_ies(cfg);
4700-
brcmf_update_prof(cfg, NULL, &e->addr,
4701-
WL_PROF_BSSID);
4658+
memcpy(profile->bssid, e->addr, ETH_ALEN);
47024659
brcmf_update_bss_info(cfg);
47034660
}
47044661
cfg80211_connect_result(ndev,
@@ -4763,15 +4720,15 @@ brcmf_notify_connect_status(struct brcmf_cfg80211_info *cfg,
47634720
struct net_device *ndev,
47644721
const struct brcmf_event_msg *e, void *data)
47654722
{
4723+
struct brcmf_cfg80211_profile *profile = cfg->profile;
47664724
s32 err = 0;
47674725

47684726
if (cfg->conf->mode == WL_MODE_AP) {
47694727
err = brcmf_notify_connect_status_ap(cfg, ndev, e, data);
47704728
} else if (brcmf_is_linkup(cfg, e)) {
47714729
WL_CONN("Linkup\n");
47724730
if (brcmf_is_ibssmode(cfg)) {
4773-
brcmf_update_prof(cfg, NULL, (void *)e->addr,
4774-
WL_PROF_BSSID);
4731+
memcpy(profile->bssid, e->addr, ETH_ALEN);
47754732
wl_inform_ibss(cfg, ndev, e->addr);
47764733
cfg80211_ibss_joined(ndev, e->addr, GFP_KERNEL);
47774734
clear_bit(WL_STATUS_CONNECTING, &cfg->status);

0 commit comments

Comments
 (0)