mt76: mt7615: update peer's bssid when state transition occurs
This makes sure that the driver update peer's bssid when state transition occurs. Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Signed-off-by: Felix Fietkau <nbd@nbd.name>
Цей коміт міститься в:
@@ -283,9 +283,8 @@ static void mt7615_bss_info_changed(struct ieee80211_hw *hw,
|
||||
|
||||
mutex_lock(&dev->mt76.mutex);
|
||||
|
||||
/* TODO: sta mode connect/disconnect
|
||||
* BSS_CHANGED_ASSOC | BSS_CHANGED_BSSID
|
||||
*/
|
||||
if (changed & BSS_CHANGED_ASSOC)
|
||||
mt7615_mcu_set_bss_info(dev, vif, info->assoc);
|
||||
|
||||
/* TODO: update beacon content
|
||||
* BSS_CHANGED_BEACON
|
||||
|
@@ -759,22 +759,23 @@ int mt7615_mcu_set_bss_info(struct mt7615_dev *dev,
|
||||
conn_type = CONNECTION_INFRA_AP;
|
||||
break;
|
||||
case NL80211_IFTYPE_STATION: {
|
||||
struct ieee80211_sta *sta;
|
||||
struct mt7615_sta *msta;
|
||||
/* TODO: enable BSS_INFO_UAPSD & BSS_INFO_PM */
|
||||
if (en) {
|
||||
struct ieee80211_sta *sta;
|
||||
struct mt7615_sta *msta;
|
||||
|
||||
rcu_read_lock();
|
||||
rcu_read_lock();
|
||||
sta = ieee80211_find_sta(vif, vif->bss_conf.bssid);
|
||||
if (!sta) {
|
||||
rcu_read_unlock();
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
sta = ieee80211_find_sta(vif, vif->bss_conf.bssid);
|
||||
if (!sta) {
|
||||
msta = (struct mt7615_sta *)sta->drv_priv;
|
||||
tx_wlan_idx = msta->wcid.idx;
|
||||
rcu_read_unlock();
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
msta = (struct mt7615_sta *)sta->drv_priv;
|
||||
tx_wlan_idx = msta->wcid.idx;
|
||||
conn_type = CONNECTION_INFRA_STA;
|
||||
|
||||
rcu_read_unlock();
|
||||
break;
|
||||
}
|
||||
default:
|
||||
|
Посилання в новій задачі
Заблокувати користувача