提交 8c727e70 编写于 作者: L Luis R. Rodriguez 提交者: John W. Linville

ar9170: make use of common macaddr and curbssid

These are provided by ath_common.
Signed-off-by: NLuis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
上级 1510718d
...@@ -172,8 +172,6 @@ struct ar9170 { ...@@ -172,8 +172,6 @@ struct ar9170 {
/* interface mode settings */ /* interface mode settings */
struct ieee80211_vif *vif; struct ieee80211_vif *vif;
u8 mac_addr[ETH_ALEN];
u8 bssid[ETH_ALEN];
/* beaconing */ /* beaconing */
struct sk_buff *beacon; struct sk_buff *beacon;
......
...@@ -311,13 +311,14 @@ static int ar9170_set_promiscouous(struct ar9170 *ar) ...@@ -311,13 +311,14 @@ static int ar9170_set_promiscouous(struct ar9170 *ar)
int ar9170_set_operating_mode(struct ar9170 *ar) int ar9170_set_operating_mode(struct ar9170 *ar)
{ {
struct ath_common *common = &ar->common;
u32 pm_mode = AR9170_MAC_REG_POWERMGT_DEFAULTS; u32 pm_mode = AR9170_MAC_REG_POWERMGT_DEFAULTS;
u8 *mac_addr, *bssid; u8 *mac_addr, *bssid;
int err; int err;
if (ar->vif) { if (ar->vif) {
mac_addr = ar->mac_addr; mac_addr = common->macaddr;
bssid = ar->bssid; bssid = common->curbssid;
switch (ar->vif->type) { switch (ar->vif->type) {
case NL80211_IFTYPE_MESH_POINT: case NL80211_IFTYPE_MESH_POINT:
......
...@@ -1952,6 +1952,7 @@ static int ar9170_op_add_interface(struct ieee80211_hw *hw, ...@@ -1952,6 +1952,7 @@ static int ar9170_op_add_interface(struct ieee80211_hw *hw,
struct ieee80211_if_init_conf *conf) struct ieee80211_if_init_conf *conf)
{ {
struct ar9170 *ar = hw->priv; struct ar9170 *ar = hw->priv;
struct ath_common *common = &ar->common;
int err = 0; int err = 0;
mutex_lock(&ar->mutex); mutex_lock(&ar->mutex);
...@@ -1962,7 +1963,7 @@ static int ar9170_op_add_interface(struct ieee80211_hw *hw, ...@@ -1962,7 +1963,7 @@ static int ar9170_op_add_interface(struct ieee80211_hw *hw,
} }
ar->vif = conf->vif; ar->vif = conf->vif;
memcpy(ar->mac_addr, conf->mac_addr, ETH_ALEN); memcpy(common->macaddr, conf->mac_addr, ETH_ALEN);
if (modparam_nohwcrypt || (ar->vif->type != NL80211_IFTYPE_STATION)) { if (modparam_nohwcrypt || (ar->vif->type != NL80211_IFTYPE_STATION)) {
ar->rx_software_decryption = true; ar->rx_software_decryption = true;
...@@ -2131,12 +2132,13 @@ static void ar9170_op_bss_info_changed(struct ieee80211_hw *hw, ...@@ -2131,12 +2132,13 @@ static void ar9170_op_bss_info_changed(struct ieee80211_hw *hw,
u32 changed) u32 changed)
{ {
struct ar9170 *ar = hw->priv; struct ar9170 *ar = hw->priv;
struct ath_common *common = &ar->common;
int err = 0; int err = 0;
mutex_lock(&ar->mutex); mutex_lock(&ar->mutex);
if (changed & BSS_CHANGED_BSSID) { if (changed & BSS_CHANGED_BSSID) {
memcpy(ar->bssid, bss_conf->bssid, ETH_ALEN); memcpy(common->curbssid, bss_conf->bssid, ETH_ALEN);
err = ar9170_set_operating_mode(ar); err = ar9170_set_operating_mode(ar);
if (err) if (err)
goto out; goto out;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册