Skip to content
Permalink
Browse files

Fixed problem: restart mwlwifi to let AP work.

1. This patch also fix duplicate access of register.
2. Let BSS enable/disable decided by mac80211.

Signed-off-by: David Lin <dlin@marvell.com>
  • Loading branch information
yuhhaurlin committed Mar 28, 2017
1 parent ca699af commit 87b163f176a4cb83dc709b9c9ab8f793607efd5c
Showing with 11 additions and 4 deletions.
  1. +5 −0 debugfs.c
  2. +0 −3 hif/fwcmd.c
  3. +6 −1 mac80211.c
@@ -136,6 +136,8 @@ static ssize_t mwl_debugfs_info_read(struct file *file, char __user *ubuf,
priv->sta_macids_supported);
len += scnprintf(p + len, size - len,
"macid used: %08x\n", priv->macids_used);
len += scnprintf(p + len, size - len,
"radio: %s\n", priv->radio_on ? "enable" : "disable");
len += mwl_hif_get_info(priv->hw, p + len, size - len);
len += scnprintf(p + len, size - len, "\n");

@@ -611,6 +613,9 @@ static ssize_t mwl_debugfs_regrdwr_read(struct file *file, char __user *ubuf,
int len = 0, size = PAGE_SIZE;
ssize_t ret;

if (*ppos)
return len;

if (!p)
return -ENOMEM;

@@ -1841,9 +1841,6 @@ int mwl_fwcmd_set_beacon(struct ieee80211_hw *hw,
if (mwl_fwcmd_set_ap_beacon(priv, mwl_vif, &vif->bss_conf))
goto err;

if (mwl_fwcmd_bss_start(hw, vif, true))
goto err;

if (b_inf->cap_info & WLAN_CAPABILITY_SPECTRUM_MGMT)
rc = mwl_fwcmd_set_spectrum_mgmt(priv, true);
else
@@ -173,7 +173,12 @@ static int mwl_mac80211_add_interface(struct ieee80211_hw *hw,
switch (vif->type) {
case NL80211_IFTYPE_AP:
ether_addr_copy(mwl_vif->bssid, vif->addr);
//mwl_fwcmd_set_new_stn_add_self(hw, vif);
mwl_fwcmd_set_new_stn_add_self(hw, vif);
if (priv->chip_type == MWL8964) {
/* allow firmware to really set channel */
mwl_fwcmd_bss_start(hw, vif, true);
mwl_fwcmd_bss_start(hw, vif, false);
}
break;
case NL80211_IFTYPE_STATION:
ether_addr_copy(mwl_vif->sta_mac, vif->addr);

0 comments on commit 87b163f

Please sign in to comment.
You can’t perform that action at this time.