|
@@ -36,6 +36,7 @@ static int ath10k_send_key(struct ath10k_vif *arvif,
|
|
|
enum set_key_cmd cmd,
|
|
|
const u8 *macaddr)
|
|
|
{
|
|
|
+ struct ath10k *ar = arvif->ar;
|
|
|
struct wmi_vdev_install_key_arg arg = {
|
|
|
.vdev_id = arvif->vdev_id,
|
|
|
.key_idx = key->keyidx,
|
|
@@ -73,7 +74,7 @@ static int ath10k_send_key(struct ath10k_vif *arvif,
|
|
|
arg.key_flags = WMI_KEY_PAIRWISE;
|
|
|
break;
|
|
|
default:
|
|
|
- ath10k_warn("cipher %d is not supported\n", key->cipher);
|
|
|
+ ath10k_warn(ar, "cipher %d is not supported\n", key->cipher);
|
|
|
return -EOPNOTSUPP;
|
|
|
}
|
|
|
|
|
@@ -168,7 +169,7 @@ static int ath10k_clear_peer_keys(struct ath10k_vif *arvif,
|
|
|
first_errno = ret;
|
|
|
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to remove peer wep key %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to remove peer wep key %d: %d\n",
|
|
|
i, ret);
|
|
|
|
|
|
peer->keys[i] = NULL;
|
|
@@ -216,7 +217,7 @@ static int ath10k_clear_vdev_key(struct ath10k_vif *arvif,
|
|
|
first_errno = ret;
|
|
|
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to remove key for %pM: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to remove key for %pM: %d\n",
|
|
|
addr, ret);
|
|
|
}
|
|
|
|
|
@@ -327,14 +328,14 @@ static int ath10k_peer_create(struct ath10k *ar, u32 vdev_id, const u8 *addr)
|
|
|
|
|
|
ret = ath10k_wmi_peer_create(ar, vdev_id, addr);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to create wmi peer %pM on vdev %i: %i\n",
|
|
|
+ ath10k_warn(ar, "failed to create wmi peer %pM on vdev %i: %i\n",
|
|
|
addr, vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
ret = ath10k_wait_for_peer_created(ar, vdev_id, addr);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to wait for created wmi peer %pM on vdev %i: %i\n",
|
|
|
+ ath10k_warn(ar, "failed to wait for created wmi peer %pM on vdev %i: %i\n",
|
|
|
addr, vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
@@ -355,7 +356,7 @@ static int ath10k_mac_set_kickout(struct ath10k_vif *arvif)
|
|
|
ret = ath10k_wmi_pdev_set_param(ar, param,
|
|
|
ATH10K_KICKOUT_THRESHOLD);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set kickout threshold on vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set kickout threshold on vdev %i: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
@@ -364,7 +365,7 @@ static int ath10k_mac_set_kickout(struct ath10k_vif *arvif)
|
|
|
ret = ath10k_wmi_vdev_set_param(ar, arvif->vdev_id, param,
|
|
|
ATH10K_KEEPALIVE_MIN_IDLE);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set keepalive minimum idle time on vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set keepalive minimum idle time on vdev %i: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
@@ -373,7 +374,7 @@ static int ath10k_mac_set_kickout(struct ath10k_vif *arvif)
|
|
|
ret = ath10k_wmi_vdev_set_param(ar, arvif->vdev_id, param,
|
|
|
ATH10K_KEEPALIVE_MAX_IDLE);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set keepalive maximum idle time on vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set keepalive maximum idle time on vdev %i: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
@@ -382,7 +383,7 @@ static int ath10k_mac_set_kickout(struct ath10k_vif *arvif)
|
|
|
ret = ath10k_wmi_vdev_set_param(ar, arvif->vdev_id, param,
|
|
|
ATH10K_KEEPALIVE_MAX_UNRESPONSIVE);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set keepalive maximum unresponsive time on vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set keepalive maximum unresponsive time on vdev %i: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
@@ -449,7 +450,7 @@ static void ath10k_peer_cleanup(struct ath10k *ar, u32 vdev_id)
|
|
|
if (peer->vdev_id != vdev_id)
|
|
|
continue;
|
|
|
|
|
|
- ath10k_warn("removing stale peer %pM from vdev_id %d\n",
|
|
|
+ ath10k_warn(ar, "removing stale peer %pM from vdev_id %d\n",
|
|
|
peer->addr, vdev_id);
|
|
|
|
|
|
list_del(&peer->list);
|
|
@@ -496,7 +497,7 @@ static bool ath10k_monitor_is_enabled(struct ath10k *ar)
|
|
|
{
|
|
|
lockdep_assert_held(&ar->conf_mutex);
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC,
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC,
|
|
|
"mac monitor refs: promisc %d monitor %d cac %d\n",
|
|
|
ar->promisc, ar->monitor,
|
|
|
test_bit(ATH10K_CAC_RUNNING, &ar->dev_flags));
|
|
@@ -531,35 +532,35 @@ static int ath10k_monitor_vdev_start(struct ath10k *ar, int vdev_id)
|
|
|
|
|
|
ret = ath10k_wmi_vdev_start(ar, &arg);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to request monitor vdev %i start: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to request monitor vdev %i start: %d\n",
|
|
|
vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
ret = ath10k_vdev_setup_sync(ar);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to synchronize setup for monitor vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to synchronize setup for monitor vdev %i: %d\n",
|
|
|
vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
ret = ath10k_wmi_vdev_up(ar, vdev_id, 0, ar->mac_addr);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to put up monitor vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to put up monitor vdev %i: %d\n",
|
|
|
vdev_id, ret);
|
|
|
goto vdev_stop;
|
|
|
}
|
|
|
|
|
|
ar->monitor_vdev_id = vdev_id;
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac monitor vdev %i started\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac monitor vdev %i started\n",
|
|
|
ar->monitor_vdev_id);
|
|
|
return 0;
|
|
|
|
|
|
vdev_stop:
|
|
|
ret = ath10k_wmi_vdev_stop(ar, ar->monitor_vdev_id);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to stop monitor vdev %i after start failure: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to stop monitor vdev %i after start failure: %d\n",
|
|
|
ar->monitor_vdev_id, ret);
|
|
|
|
|
|
return ret;
|
|
@@ -573,20 +574,20 @@ static int ath10k_monitor_vdev_stop(struct ath10k *ar)
|
|
|
|
|
|
ret = ath10k_wmi_vdev_down(ar, ar->monitor_vdev_id);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to put down monitor vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to put down monitor vdev %i: %d\n",
|
|
|
ar->monitor_vdev_id, ret);
|
|
|
|
|
|
ret = ath10k_wmi_vdev_stop(ar, ar->monitor_vdev_id);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to to request monitor vdev %i stop: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to to request monitor vdev %i stop: %d\n",
|
|
|
ar->monitor_vdev_id, ret);
|
|
|
|
|
|
ret = ath10k_vdev_setup_sync(ar);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to synchronise monitor vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to synchronise monitor vdev %i: %d\n",
|
|
|
ar->monitor_vdev_id, ret);
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac monitor vdev %i stopped\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac monitor vdev %i stopped\n",
|
|
|
ar->monitor_vdev_id);
|
|
|
return ret;
|
|
|
}
|
|
@@ -598,7 +599,7 @@ static int ath10k_monitor_vdev_create(struct ath10k *ar)
|
|
|
lockdep_assert_held(&ar->conf_mutex);
|
|
|
|
|
|
if (ar->free_vdev_map == 0) {
|
|
|
- ath10k_warn("failed to find free vdev id for monitor vdev\n");
|
|
|
+ ath10k_warn(ar, "failed to find free vdev id for monitor vdev\n");
|
|
|
return -ENOMEM;
|
|
|
}
|
|
|
|
|
@@ -610,13 +611,13 @@ static int ath10k_monitor_vdev_create(struct ath10k *ar)
|
|
|
WMI_VDEV_TYPE_MONITOR,
|
|
|
0, ar->mac_addr);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to request monitor vdev %i creation: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to request monitor vdev %i creation: %d\n",
|
|
|
ar->monitor_vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
ar->free_vdev_map &= ~(1 << ar->monitor_vdev_id);
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac monitor vdev %d created\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac monitor vdev %d created\n",
|
|
|
ar->monitor_vdev_id);
|
|
|
|
|
|
return 0;
|
|
@@ -630,14 +631,14 @@ static int ath10k_monitor_vdev_delete(struct ath10k *ar)
|
|
|
|
|
|
ret = ath10k_wmi_vdev_delete(ar, ar->monitor_vdev_id);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to request wmi monitor vdev %i removal: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to request wmi monitor vdev %i removal: %d\n",
|
|
|
ar->monitor_vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
ar->free_vdev_map |= 1 << ar->monitor_vdev_id;
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac monitor vdev %d deleted\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac monitor vdev %d deleted\n",
|
|
|
ar->monitor_vdev_id);
|
|
|
return ret;
|
|
|
}
|
|
@@ -649,30 +650,30 @@ static int ath10k_monitor_start(struct ath10k *ar)
|
|
|
lockdep_assert_held(&ar->conf_mutex);
|
|
|
|
|
|
if (!ath10k_monitor_is_enabled(ar)) {
|
|
|
- ath10k_warn("trying to start monitor with no references\n");
|
|
|
+ ath10k_warn(ar, "trying to start monitor with no references\n");
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
if (ar->monitor_started) {
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac monitor already started\n");
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac monitor already started\n");
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
ret = ath10k_monitor_vdev_create(ar);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to create monitor vdev: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to create monitor vdev: %d\n", ret);
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
ret = ath10k_monitor_vdev_start(ar, ar->monitor_vdev_id);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to start monitor vdev: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to start monitor vdev: %d\n", ret);
|
|
|
ath10k_monitor_vdev_delete(ar);
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
ar->monitor_started = true;
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac monitor started\n");
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac monitor started\n");
|
|
|
|
|
|
return 0;
|
|
|
}
|
|
@@ -684,27 +685,27 @@ static void ath10k_monitor_stop(struct ath10k *ar)
|
|
|
lockdep_assert_held(&ar->conf_mutex);
|
|
|
|
|
|
if (ath10k_monitor_is_enabled(ar)) {
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC,
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC,
|
|
|
"mac monitor will be stopped later\n");
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
if (!ar->monitor_started) {
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC,
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC,
|
|
|
"mac monitor probably failed to start earlier\n");
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
ret = ath10k_monitor_vdev_stop(ar);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to stop monitor vdev: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to stop monitor vdev: %d\n", ret);
|
|
|
|
|
|
ret = ath10k_monitor_vdev_delete(ar);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to delete monitor vdev: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to delete monitor vdev: %d\n", ret);
|
|
|
|
|
|
ar->monitor_started = false;
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac monitor stopped\n");
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac monitor stopped\n");
|
|
|
}
|
|
|
|
|
|
static int ath10k_recalc_rtscts_prot(struct ath10k_vif *arvif)
|
|
@@ -737,12 +738,12 @@ static int ath10k_start_cac(struct ath10k *ar)
|
|
|
|
|
|
ret = ath10k_monitor_start(ar);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to start monitor (cac): %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to start monitor (cac): %d\n", ret);
|
|
|
clear_bit(ATH10K_CAC_RUNNING, &ar->dev_flags);
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac cac start monitor vdev %d\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac cac start monitor vdev %d\n",
|
|
|
ar->monitor_vdev_id);
|
|
|
|
|
|
return 0;
|
|
@@ -759,7 +760,7 @@ static int ath10k_stop_cac(struct ath10k *ar)
|
|
|
clear_bit(ATH10K_CAC_RUNNING, &ar->dev_flags);
|
|
|
ath10k_monitor_stop(ar);
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac cac finished\n");
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac cac finished\n");
|
|
|
|
|
|
return 0;
|
|
|
}
|
|
@@ -785,7 +786,7 @@ static void ath10k_recalc_radar_detection(struct ath10k *ar)
|
|
|
* radiation is not allowed, make this channel DFS_UNAVAILABLE
|
|
|
* by indicating that radar was detected.
|
|
|
*/
|
|
|
- ath10k_warn("failed to start CAC: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to start CAC: %d\n", ret);
|
|
|
ieee80211_radar_detected(ar->hw);
|
|
|
}
|
|
|
}
|
|
@@ -827,7 +828,7 @@ static int ath10k_vdev_start_restart(struct ath10k_vif *arvif, bool restart)
|
|
|
arg.ssid_len = arvif->vif->bss_conf.ssid_len;
|
|
|
}
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC,
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC,
|
|
|
"mac vdev %d start center_freq %d phymode %s\n",
|
|
|
arg.vdev_id, arg.channel.freq,
|
|
|
ath10k_wmi_phymode_str(arg.channel.mode));
|
|
@@ -838,14 +839,14 @@ static int ath10k_vdev_start_restart(struct ath10k_vif *arvif, bool restart)
|
|
|
ret = ath10k_wmi_vdev_start(ar, &arg);
|
|
|
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to start WMI vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to start WMI vdev %i: %d\n",
|
|
|
arg.vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
ret = ath10k_vdev_setup_sync(ar);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to synchronise setup for vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to synchronise setup for vdev %i: %d\n",
|
|
|
arg.vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
@@ -877,14 +878,14 @@ static int ath10k_vdev_stop(struct ath10k_vif *arvif)
|
|
|
|
|
|
ret = ath10k_wmi_vdev_stop(ar, arvif->vdev_id);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to stop WMI vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to stop WMI vdev %i: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
ret = ath10k_vdev_setup_sync(ar);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to syncronise setup for vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to syncronise setup for vdev %i: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
@@ -902,6 +903,7 @@ static int ath10k_vdev_stop(struct ath10k_vif *arvif)
|
|
|
static void ath10k_control_beaconing(struct ath10k_vif *arvif,
|
|
|
struct ieee80211_bss_conf *info)
|
|
|
{
|
|
|
+ struct ath10k *ar = arvif->ar;
|
|
|
int ret = 0;
|
|
|
|
|
|
lockdep_assert_held(&arvif->ar->conf_mutex);
|
|
@@ -939,7 +941,7 @@ static void ath10k_control_beaconing(struct ath10k_vif *arvif,
|
|
|
ret = ath10k_wmi_vdev_up(arvif->ar, arvif->vdev_id, arvif->aid,
|
|
|
arvif->bssid);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to bring up vdev %d: %i\n",
|
|
|
+ ath10k_warn(ar, "failed to bring up vdev %d: %i\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
ath10k_vdev_stop(arvif);
|
|
|
return;
|
|
@@ -948,13 +950,14 @@ static void ath10k_control_beaconing(struct ath10k_vif *arvif,
|
|
|
arvif->is_started = true;
|
|
|
arvif->is_up = true;
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac vdev %d up\n", arvif->vdev_id);
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac vdev %d up\n", arvif->vdev_id);
|
|
|
}
|
|
|
|
|
|
static void ath10k_control_ibss(struct ath10k_vif *arvif,
|
|
|
struct ieee80211_bss_conf *info,
|
|
|
const u8 self_peer[ETH_ALEN])
|
|
|
{
|
|
|
+ struct ath10k *ar = arvif->ar;
|
|
|
u32 vdev_param;
|
|
|
int ret = 0;
|
|
|
|
|
@@ -963,7 +966,7 @@ static void ath10k_control_ibss(struct ath10k_vif *arvif,
|
|
|
if (!info->ibss_joined) {
|
|
|
ret = ath10k_peer_delete(arvif->ar, arvif->vdev_id, self_peer);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to delete IBSS self peer %pM for vdev %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to delete IBSS self peer %pM for vdev %d: %d\n",
|
|
|
self_peer, arvif->vdev_id, ret);
|
|
|
|
|
|
if (is_zero_ether_addr(arvif->bssid))
|
|
@@ -972,7 +975,7 @@ static void ath10k_control_ibss(struct ath10k_vif *arvif,
|
|
|
ret = ath10k_peer_delete(arvif->ar, arvif->vdev_id,
|
|
|
arvif->bssid);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to delete IBSS BSSID peer %pM for vdev %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to delete IBSS BSSID peer %pM for vdev %d: %d\n",
|
|
|
arvif->bssid, arvif->vdev_id, ret);
|
|
|
return;
|
|
|
}
|
|
@@ -984,7 +987,7 @@ static void ath10k_control_ibss(struct ath10k_vif *arvif,
|
|
|
|
|
|
ret = ath10k_peer_create(arvif->ar, arvif->vdev_id, self_peer);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to create IBSS self peer %pM for vdev %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to create IBSS self peer %pM for vdev %d: %d\n",
|
|
|
self_peer, arvif->vdev_id, ret);
|
|
|
return;
|
|
|
}
|
|
@@ -993,7 +996,7 @@ static void ath10k_control_ibss(struct ath10k_vif *arvif,
|
|
|
ret = ath10k_wmi_vdev_set_param(arvif->ar, arvif->vdev_id, vdev_param,
|
|
|
ATH10K_DEFAULT_ATIM);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to set IBSS ATIM for vdev %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set IBSS ATIM for vdev %d: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
}
|
|
|
|
|
@@ -1020,7 +1023,7 @@ static int ath10k_mac_vif_setup_ps(struct ath10k_vif *arvif)
|
|
|
ret = ath10k_wmi_set_sta_ps_param(ar, arvif->vdev_id, param,
|
|
|
conf->dynamic_ps_timeout);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set inactivity time for vdev %d: %i\n",
|
|
|
+ ath10k_warn(ar, "failed to set inactivity time for vdev %d: %i\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
@@ -1028,12 +1031,12 @@ static int ath10k_mac_vif_setup_ps(struct ath10k_vif *arvif)
|
|
|
psmode = WMI_STA_PS_MODE_DISABLED;
|
|
|
}
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac vdev %d psmode %s\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac vdev %d psmode %s\n",
|
|
|
arvif->vdev_id, psmode ? "enable" : "disable");
|
|
|
|
|
|
ret = ath10k_wmi_set_psmode(ar, arvif->vdev_id, psmode);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set PS Mode %d for vdev %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set PS Mode %d for vdev %d: %d\n",
|
|
|
psmode, arvif->vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
@@ -1117,12 +1120,12 @@ static void ath10k_peer_assoc_h_crypto(struct ath10k *ar,
|
|
|
|
|
|
/* FIXME: base on RSN IE/WPA IE is a correct idea? */
|
|
|
if (rsnie || wpaie) {
|
|
|
- ath10k_dbg(ATH10K_DBG_WMI, "%s: rsn ie found\n", __func__);
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_WMI, "%s: rsn ie found\n", __func__);
|
|
|
arg->peer_flags |= WMI_PEER_NEED_PTK_4_WAY;
|
|
|
}
|
|
|
|
|
|
if (wpaie) {
|
|
|
- ath10k_dbg(ATH10K_DBG_WMI, "%s: wpa ie found\n", __func__);
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_WMI, "%s: wpa ie found\n", __func__);
|
|
|
arg->peer_flags |= WMI_PEER_NEED_GTK_2_WAY;
|
|
|
}
|
|
|
}
|
|
@@ -1231,7 +1234,7 @@ static void ath10k_peer_assoc_h_ht(struct ath10k *ar,
|
|
|
arg->peer_num_spatial_streams = sta->rx_nss;
|
|
|
}
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac ht peer %pM mcs cnt %d nss %d\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac ht peer %pM mcs cnt %d nss %d\n",
|
|
|
arg->addr,
|
|
|
arg->peer_ht_rates.num_rates,
|
|
|
arg->peer_num_spatial_streams);
|
|
@@ -1248,7 +1251,7 @@ static int ath10k_peer_assoc_qos_ap(struct ath10k *ar,
|
|
|
lockdep_assert_held(&ar->conf_mutex);
|
|
|
|
|
|
if (sta->wme && sta->uapsd_queues) {
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac uapsd_queues 0x%x max_sp %d\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac uapsd_queues 0x%x max_sp %d\n",
|
|
|
sta->uapsd_queues, sta->max_sp);
|
|
|
|
|
|
if (sta->uapsd_queues & IEEE80211_WMM_IE_STA_QOSINFO_AC_VO)
|
|
@@ -1273,7 +1276,7 @@ static int ath10k_peer_assoc_qos_ap(struct ath10k *ar,
|
|
|
WMI_AP_PS_PEER_PARAM_UAPSD,
|
|
|
uapsd);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set ap ps peer param uapsd for vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set ap ps peer param uapsd for vdev %i: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
@@ -1283,7 +1286,7 @@ static int ath10k_peer_assoc_qos_ap(struct ath10k *ar,
|
|
|
WMI_AP_PS_PEER_PARAM_MAX_SP,
|
|
|
max_sp);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set ap ps peer param max sp for vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set ap ps peer param max sp for vdev %i: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
@@ -1295,7 +1298,7 @@ static int ath10k_peer_assoc_qos_ap(struct ath10k *ar,
|
|
|
ret = ath10k_wmi_set_ap_ps_param(ar, arvif->vdev_id, sta->addr,
|
|
|
WMI_AP_PS_PEER_PARAM_AGEOUT_TIME, 10);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set ap ps peer param ageout time for vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set ap ps peer param ageout time for vdev %i: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
@@ -1342,7 +1345,7 @@ static void ath10k_peer_assoc_h_vht(struct ath10k *ar,
|
|
|
arg->peer_vht_rates.tx_mcs_set =
|
|
|
__le16_to_cpu(vht_cap->vht_mcs.tx_mcs_map);
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac vht peer %pM max_mpdu %d flags 0x%x\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac vht peer %pM max_mpdu %d flags 0x%x\n",
|
|
|
sta->addr, arg->peer_max_mpdu, arg->peer_flags);
|
|
|
}
|
|
|
|
|
@@ -1415,7 +1418,7 @@ static void ath10k_peer_assoc_h_phymode(struct ath10k *ar,
|
|
|
break;
|
|
|
}
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac peer %pM phymode %s\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac peer %pM phymode %s\n",
|
|
|
sta->addr, ath10k_wmi_phymode_str(phymode));
|
|
|
|
|
|
arg->peer_phymode = phymode;
|
|
@@ -1488,7 +1491,7 @@ static void ath10k_bss_assoc(struct ieee80211_hw *hw,
|
|
|
|
|
|
ap_sta = ieee80211_find_sta(vif, bss_conf->bssid);
|
|
|
if (!ap_sta) {
|
|
|
- ath10k_warn("failed to find station entry for bss %pM vdev %i\n",
|
|
|
+ ath10k_warn(ar, "failed to find station entry for bss %pM vdev %i\n",
|
|
|
bss_conf->bssid, arvif->vdev_id);
|
|
|
rcu_read_unlock();
|
|
|
return;
|
|
@@ -1501,7 +1504,7 @@ static void ath10k_bss_assoc(struct ieee80211_hw *hw,
|
|
|
ret = ath10k_peer_assoc_prepare(ar, arvif, ap_sta,
|
|
|
bss_conf, &peer_arg);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to prepare peer assoc for %pM vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to prepare peer assoc for %pM vdev %i: %d\n",
|
|
|
bss_conf->bssid, arvif->vdev_id, ret);
|
|
|
rcu_read_unlock();
|
|
|
return;
|
|
@@ -1511,19 +1514,19 @@ static void ath10k_bss_assoc(struct ieee80211_hw *hw,
|
|
|
|
|
|
ret = ath10k_wmi_peer_assoc(ar, &peer_arg);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to run peer assoc for %pM vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to run peer assoc for %pM vdev %i: %d\n",
|
|
|
bss_conf->bssid, arvif->vdev_id, ret);
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
ret = ath10k_setup_peer_smps(ar, arvif, bss_conf->bssid, &ht_cap);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to setup peer SMPS for vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to setup peer SMPS for vdev %i: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC,
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC,
|
|
|
"mac vdev %d up (associated) bssid %pM aid %d\n",
|
|
|
arvif->vdev_id, bss_conf->bssid, bss_conf->aid);
|
|
|
|
|
@@ -1532,7 +1535,7 @@ static void ath10k_bss_assoc(struct ieee80211_hw *hw,
|
|
|
|
|
|
ret = ath10k_wmi_vdev_up(ar, arvif->vdev_id, arvif->aid, arvif->bssid);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set vdev %d up: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set vdev %d up: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
return;
|
|
|
}
|
|
@@ -1558,7 +1561,7 @@ static void ath10k_bss_disassoc(struct ieee80211_hw *hw,
|
|
|
* No idea why this happens, even though VDEV-DOWN is supposed
|
|
|
* to be analogous to link down, so just stop the VDEV.
|
|
|
*/
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac vdev %d stop (disassociated\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac vdev %d stop (disassociated\n",
|
|
|
arvif->vdev_id);
|
|
|
|
|
|
/* FIXME: check return value */
|
|
@@ -1571,7 +1574,7 @@ static void ath10k_bss_disassoc(struct ieee80211_hw *hw,
|
|
|
* interfaces as it expects there is no rx when no interface is
|
|
|
* running.
|
|
|
*/
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac vdev %d down\n", arvif->vdev_id);
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac vdev %d down\n", arvif->vdev_id);
|
|
|
|
|
|
/* FIXME: why don't we print error if wmi call fails? */
|
|
|
ret = ath10k_wmi_vdev_down(ar, arvif->vdev_id);
|
|
@@ -1592,7 +1595,7 @@ static int ath10k_station_assoc(struct ath10k *ar, struct ath10k_vif *arvif,
|
|
|
|
|
|
ret = ath10k_peer_assoc_prepare(ar, arvif, sta, NULL, &peer_arg);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to prepare WMI peer assoc for %pM vdev %i: %i\n",
|
|
|
+ ath10k_warn(ar, "failed to prepare WMI peer assoc for %pM vdev %i: %i\n",
|
|
|
sta->addr, arvif->vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
@@ -1600,14 +1603,14 @@ static int ath10k_station_assoc(struct ath10k *ar, struct ath10k_vif *arvif,
|
|
|
peer_arg.peer_reassoc = reassoc;
|
|
|
ret = ath10k_wmi_peer_assoc(ar, &peer_arg);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to run peer assoc for STA %pM vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to run peer assoc for STA %pM vdev %i: %d\n",
|
|
|
sta->addr, arvif->vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
ret = ath10k_setup_peer_smps(ar, arvif, sta->addr, &sta->ht_cap);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to setup peer SMPS for vdev %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to setup peer SMPS for vdev %d: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
@@ -1616,7 +1619,7 @@ static int ath10k_station_assoc(struct ath10k *ar, struct ath10k_vif *arvif,
|
|
|
arvif->num_legacy_stations++;
|
|
|
ret = ath10k_recalc_rtscts_prot(arvif);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to recalculate rts/cts prot for vdev %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to recalculate rts/cts prot for vdev %d: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
@@ -1624,14 +1627,14 @@ static int ath10k_station_assoc(struct ath10k *ar, struct ath10k_vif *arvif,
|
|
|
|
|
|
ret = ath10k_install_peer_wep_keys(arvif, sta->addr);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to install peer wep keys for vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to install peer wep keys for vdev %i: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
ret = ath10k_peer_assoc_qos_ap(ar, arvif, sta);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set qos params for STA %pM for vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set qos params for STA %pM for vdev %i: %d\n",
|
|
|
sta->addr, arvif->vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
@@ -1650,7 +1653,7 @@ static int ath10k_station_disassoc(struct ath10k *ar, struct ath10k_vif *arvif,
|
|
|
arvif->num_legacy_stations--;
|
|
|
ret = ath10k_recalc_rtscts_prot(arvif);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to recalculate rts/cts prot for vdev %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to recalculate rts/cts prot for vdev %d: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
@@ -1658,7 +1661,7 @@ static int ath10k_station_disassoc(struct ath10k *ar, struct ath10k_vif *arvif,
|
|
|
|
|
|
ret = ath10k_clear_peer_keys(arvif, sta->addr);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to clear all peer wep keys for vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to clear all peer wep keys for vdev %i: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
return ret;
|
|
|
}
|
|
@@ -1750,7 +1753,7 @@ static int ath10k_update_channel_list(struct ath10k *ar)
|
|
|
if (WARN_ON_ONCE(ch->mode == MODE_UNKNOWN))
|
|
|
continue;
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_WMI,
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_WMI,
|
|
|
"mac channel [%zd/%d] freq %d maxpower %d regpower %d antenna %d mode %d\n",
|
|
|
ch - arg.channels, arg.n_channels,
|
|
|
ch->freq, ch->max_power, ch->max_reg_power,
|
|
@@ -1793,7 +1796,7 @@ static void ath10k_regd_update(struct ath10k *ar)
|
|
|
|
|
|
ret = ath10k_update_channel_list(ar);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to update channel list: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to update channel list: %d\n", ret);
|
|
|
|
|
|
regpair = ar->ath_common.regulatory.regpair;
|
|
|
|
|
@@ -1814,7 +1817,7 @@ static void ath10k_regd_update(struct ath10k *ar)
|
|
|
regpair->reg_5ghz_ctl,
|
|
|
wmi_dfs_reg);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to set pdev regdomain: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to set pdev regdomain: %d\n", ret);
|
|
|
}
|
|
|
|
|
|
static void ath10k_reg_notifier(struct wiphy *wiphy,
|
|
@@ -1827,12 +1830,12 @@ static void ath10k_reg_notifier(struct wiphy *wiphy,
|
|
|
ath_reg_notifier_apply(wiphy, request, &ar->ath_common.regulatory);
|
|
|
|
|
|
if (config_enabled(CONFIG_ATH10K_DFS_CERTIFIED) && ar->dfs_detector) {
|
|
|
- ath10k_dbg(ATH10K_DBG_REGULATORY, "dfs region 0x%x\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_REGULATORY, "dfs region 0x%x\n",
|
|
|
request->dfs_region);
|
|
|
result = ar->dfs_detector->set_dfs_domain(ar->dfs_detector,
|
|
|
request->dfs_region);
|
|
|
if (!result)
|
|
|
- ath10k_warn("DFS region 0x%X not supported, will trigger radar for every pulse\n",
|
|
|
+ ath10k_warn(ar, "DFS region 0x%X not supported, will trigger radar for every pulse\n",
|
|
|
request->dfs_region);
|
|
|
}
|
|
|
|
|
@@ -1869,7 +1872,7 @@ static u8 ath10k_tx_h_get_vdev_id(struct ath10k *ar,
|
|
|
if (ar->monitor_started)
|
|
|
return ar->monitor_vdev_id;
|
|
|
|
|
|
- ath10k_warn("failed to resolve vdev id\n");
|
|
|
+ ath10k_warn(ar, "failed to resolve vdev id\n");
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
@@ -1905,6 +1908,7 @@ static void ath10k_tx_wep_key_work(struct work_struct *work)
|
|
|
{
|
|
|
struct ath10k_vif *arvif = container_of(work, struct ath10k_vif,
|
|
|
wep_key_work);
|
|
|
+ struct ath10k *ar = arvif->ar;
|
|
|
int ret, keyidx = arvif->def_wep_key_newidx;
|
|
|
|
|
|
mutex_lock(&arvif->ar->conf_mutex);
|
|
@@ -1915,7 +1919,7 @@ static void ath10k_tx_wep_key_work(struct work_struct *work)
|
|
|
if (arvif->def_wep_key_idx == keyidx)
|
|
|
goto unlock;
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac vdev %d set keyidx %d\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac vdev %d set keyidx %d\n",
|
|
|
arvif->vdev_id, keyidx);
|
|
|
|
|
|
ret = ath10k_wmi_vdev_set_param(arvif->ar,
|
|
@@ -1923,7 +1927,7 @@ static void ath10k_tx_wep_key_work(struct work_struct *work)
|
|
|
arvif->ar->wmi.vdev_param->def_keyid,
|
|
|
keyidx);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to update wep key index for vdev %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to update wep key index for vdev %d: %d\n",
|
|
|
arvif->vdev_id,
|
|
|
ret);
|
|
|
goto unlock;
|
|
@@ -2003,7 +2007,7 @@ static void ath10k_tx_htt(struct ath10k *ar, struct sk_buff *skb)
|
|
|
ar->fw_features)) {
|
|
|
if (skb_queue_len(&ar->wmi_mgmt_tx_queue) >=
|
|
|
ATH10K_MAX_NUM_MGMT_PENDING) {
|
|
|
- ath10k_warn("reached WMI management transmit queue limit\n");
|
|
|
+ ath10k_warn(ar, "reached WMI management transmit queue limit\n");
|
|
|
ret = -EBUSY;
|
|
|
goto exit;
|
|
|
}
|
|
@@ -2027,7 +2031,8 @@ static void ath10k_tx_htt(struct ath10k *ar, struct sk_buff *skb)
|
|
|
|
|
|
exit:
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to transmit packet, dropping: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to transmit packet, dropping: %d\n",
|
|
|
+ ret);
|
|
|
ieee80211_free_txskb(ar->hw, skb);
|
|
|
}
|
|
|
}
|
|
@@ -2069,7 +2074,7 @@ void ath10k_offchan_tx_work(struct work_struct *work)
|
|
|
|
|
|
mutex_lock(&ar->conf_mutex);
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac offchannel skb %p\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac offchannel skb %p\n",
|
|
|
skb);
|
|
|
|
|
|
hdr = (struct ieee80211_hdr *)skb->data;
|
|
@@ -2082,13 +2087,13 @@ void ath10k_offchan_tx_work(struct work_struct *work)
|
|
|
|
|
|
if (peer)
|
|
|
/* FIXME: should this use ath10k_warn()? */
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "peer %pM on vdev %d already present\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "peer %pM on vdev %d already present\n",
|
|
|
peer_addr, vdev_id);
|
|
|
|
|
|
if (!peer) {
|
|
|
ret = ath10k_peer_create(ar, vdev_id, peer_addr);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to create peer %pM on vdev %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to create peer %pM on vdev %d: %d\n",
|
|
|
peer_addr, vdev_id, ret);
|
|
|
}
|
|
|
|
|
@@ -2102,13 +2107,13 @@ void ath10k_offchan_tx_work(struct work_struct *work)
|
|
|
ret = wait_for_completion_timeout(&ar->offchan_tx_completed,
|
|
|
3 * HZ);
|
|
|
if (ret <= 0)
|
|
|
- ath10k_warn("timed out waiting for offchannel skb %p\n",
|
|
|
+ ath10k_warn(ar, "timed out waiting for offchannel skb %p\n",
|
|
|
skb);
|
|
|
|
|
|
if (!peer) {
|
|
|
ret = ath10k_peer_delete(ar, vdev_id, peer_addr);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to delete peer %pM on vdev %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to delete peer %pM on vdev %d: %d\n",
|
|
|
peer_addr, vdev_id, ret);
|
|
|
}
|
|
|
|
|
@@ -2142,7 +2147,7 @@ void ath10k_mgmt_over_wmi_tx_work(struct work_struct *work)
|
|
|
|
|
|
ret = ath10k_wmi_mgmt_tx(ar, skb);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to transmit management frame via WMI: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to transmit management frame via WMI: %d\n",
|
|
|
ret);
|
|
|
ieee80211_free_txskb(ar->hw, skb);
|
|
|
}
|
|
@@ -2199,13 +2204,13 @@ static int ath10k_scan_stop(struct ath10k *ar)
|
|
|
|
|
|
ret = ath10k_wmi_stop_scan(ar, &arg);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to stop wmi scan: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to stop wmi scan: %d\n", ret);
|
|
|
goto out;
|
|
|
}
|
|
|
|
|
|
ret = wait_for_completion_timeout(&ar->scan.completed, 3*HZ);
|
|
|
if (ret == 0) {
|
|
|
- ath10k_warn("failed to receive scan abortion completion: timed out\n");
|
|
|
+ ath10k_warn(ar, "failed to receive scan abortion completion: timed out\n");
|
|
|
ret = -ETIMEDOUT;
|
|
|
} else if (ret > 0) {
|
|
|
ret = 0;
|
|
@@ -2243,7 +2248,7 @@ static void ath10k_scan_abort(struct ath10k *ar)
|
|
|
break;
|
|
|
case ATH10K_SCAN_STARTING:
|
|
|
case ATH10K_SCAN_ABORTING:
|
|
|
- ath10k_warn("refusing scan abortion due to invalid scan state: %s (%d)\n",
|
|
|
+ ath10k_warn(ar, "refusing scan abortion due to invalid scan state: %s (%d)\n",
|
|
|
ath10k_scan_state_str(ar->scan.state),
|
|
|
ar->scan.state);
|
|
|
break;
|
|
@@ -2253,7 +2258,7 @@ static void ath10k_scan_abort(struct ath10k *ar)
|
|
|
|
|
|
ret = ath10k_scan_stop(ar);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to abort scan: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to abort scan: %d\n", ret);
|
|
|
|
|
|
spin_lock_bh(&ar->data_lock);
|
|
|
break;
|
|
@@ -2287,7 +2292,7 @@ static int ath10k_start_scan(struct ath10k *ar,
|
|
|
if (ret == 0) {
|
|
|
ret = ath10k_scan_stop(ar);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to stop scan: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to stop scan: %d\n", ret);
|
|
|
|
|
|
return -ETIMEDOUT;
|
|
|
}
|
|
@@ -2314,7 +2319,7 @@ static void ath10k_tx(struct ieee80211_hw *hw,
|
|
|
|
|
|
/* We should disable CCK RATE due to P2P */
|
|
|
if (info->flags & IEEE80211_TX_CTL_NO_CCK_RATE)
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "IEEE80211_TX_CTL_NO_CCK_RATE\n");
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "IEEE80211_TX_CTL_NO_CCK_RATE\n");
|
|
|
|
|
|
ATH10K_SKB_CB(skb)->htt.is_offchan = false;
|
|
|
ATH10K_SKB_CB(skb)->htt.tid = ath10k_tx_h_get_tid(hdr);
|
|
@@ -2334,7 +2339,8 @@ static void ath10k_tx(struct ieee80211_hw *hw,
|
|
|
ATH10K_SKB_CB(skb)->vdev_id = ar->scan.vdev_id;
|
|
|
spin_unlock_bh(&ar->data_lock);
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "queued offchannel skb %p\n", skb);
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "queued offchannel skb %p\n",
|
|
|
+ skb);
|
|
|
|
|
|
skb_queue_tail(&ar->offchan_tx_queue, skb);
|
|
|
ieee80211_queue_work(hw, &ar->offchan_tx_work);
|
|
@@ -2424,7 +2430,7 @@ static int __ath10k_set_antenna(struct ath10k *ar, u32 tx_ant, u32 rx_ant)
|
|
|
ret = ath10k_wmi_pdev_set_param(ar, ar->wmi.pdev_param->tx_chain_mask,
|
|
|
tx_ant);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set tx-chainmask: %d, req 0x%x\n",
|
|
|
+ ath10k_warn(ar, "failed to set tx-chainmask: %d, req 0x%x\n",
|
|
|
ret, tx_ant);
|
|
|
return ret;
|
|
|
}
|
|
@@ -2432,7 +2438,7 @@ static int __ath10k_set_antenna(struct ath10k *ar, u32 tx_ant, u32 rx_ant)
|
|
|
ret = ath10k_wmi_pdev_set_param(ar, ar->wmi.pdev_param->rx_chain_mask,
|
|
|
rx_ant);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set rx-chainmask: %d, req 0x%x\n",
|
|
|
+ ath10k_warn(ar, "failed to set rx-chainmask: %d, req 0x%x\n",
|
|
|
ret, rx_ant);
|
|
|
return ret;
|
|
|
}
|
|
@@ -2483,25 +2489,25 @@ static int ath10k_start(struct ieee80211_hw *hw)
|
|
|
|
|
|
ret = ath10k_hif_power_up(ar);
|
|
|
if (ret) {
|
|
|
- ath10k_err("Could not init hif: %d\n", ret);
|
|
|
+ ath10k_err(ar, "Could not init hif: %d\n", ret);
|
|
|
goto err_off;
|
|
|
}
|
|
|
|
|
|
ret = ath10k_core_start(ar);
|
|
|
if (ret) {
|
|
|
- ath10k_err("Could not init core: %d\n", ret);
|
|
|
+ ath10k_err(ar, "Could not init core: %d\n", ret);
|
|
|
goto err_power_down;
|
|
|
}
|
|
|
|
|
|
ret = ath10k_wmi_pdev_set_param(ar, ar->wmi.pdev_param->pmf_qos, 1);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to enable PMF QOS: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to enable PMF QOS: %d\n", ret);
|
|
|
goto err_core_stop;
|
|
|
}
|
|
|
|
|
|
ret = ath10k_wmi_pdev_set_param(ar, ar->wmi.pdev_param->dynamic_bw, 1);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to enable dynamic BW: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to enable dynamic BW: %d\n", ret);
|
|
|
goto err_core_stop;
|
|
|
}
|
|
|
|
|
@@ -2521,7 +2527,7 @@ static int ath10k_start(struct ieee80211_hw *hw)
|
|
|
ret = ath10k_wmi_pdev_set_param(ar,
|
|
|
ar->wmi.pdev_param->arp_ac_override, 0);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set arp ac override parameter: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set arp ac override parameter: %d\n",
|
|
|
ret);
|
|
|
goto err_core_stop;
|
|
|
}
|
|
@@ -2575,7 +2581,7 @@ static int ath10k_config_ps(struct ath10k *ar)
|
|
|
list_for_each_entry(arvif, &ar->arvifs, list) {
|
|
|
ret = ath10k_mac_vif_setup_ps(arvif);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to setup powersave: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to setup powersave: %d\n", ret);
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
@@ -2613,7 +2619,7 @@ static void ath10k_config_chan(struct ath10k *ar)
|
|
|
|
|
|
lockdep_assert_held(&ar->conf_mutex);
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC,
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC,
|
|
|
"mac config channel to %dMHz (cf1 %dMHz cf2 %dMHz width %s)\n",
|
|
|
ar->chandef.chan->center_freq,
|
|
|
ar->chandef.center_freq1,
|
|
@@ -2637,7 +2643,7 @@ static void ath10k_config_chan(struct ath10k *ar)
|
|
|
|
|
|
ret = ath10k_wmi_vdev_down(ar, arvif->vdev_id);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to down vdev %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to down vdev %d: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
continue;
|
|
|
}
|
|
@@ -2654,7 +2660,7 @@ static void ath10k_config_chan(struct ath10k *ar)
|
|
|
|
|
|
ret = ath10k_vdev_restart(arvif);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to restart vdev %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to restart vdev %d: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
continue;
|
|
|
}
|
|
@@ -2665,7 +2671,7 @@ static void ath10k_config_chan(struct ath10k *ar)
|
|
|
ret = ath10k_wmi_vdev_up(arvif->ar, arvif->vdev_id, arvif->aid,
|
|
|
arvif->bssid);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to bring vdev up %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to bring vdev up %d: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
continue;
|
|
|
}
|
|
@@ -2685,7 +2691,7 @@ static int ath10k_config(struct ieee80211_hw *hw, u32 changed)
|
|
|
mutex_lock(&ar->conf_mutex);
|
|
|
|
|
|
if (changed & IEEE80211_CONF_CHANGE_CHANNEL) {
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC,
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC,
|
|
|
"mac config channel %dMHz flags 0x%x radar %d\n",
|
|
|
conf->chandef.chan->center_freq,
|
|
|
conf->chandef.chan->flags,
|
|
@@ -2705,21 +2711,21 @@ static int ath10k_config(struct ieee80211_hw *hw, u32 changed)
|
|
|
}
|
|
|
|
|
|
if (changed & IEEE80211_CONF_CHANGE_POWER) {
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac config power %d\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac config power %d\n",
|
|
|
hw->conf.power_level);
|
|
|
|
|
|
param = ar->wmi.pdev_param->txpower_limit2g;
|
|
|
ret = ath10k_wmi_pdev_set_param(ar, param,
|
|
|
hw->conf.power_level * 2);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to set 2g txpower %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set 2g txpower %d: %d\n",
|
|
|
hw->conf.power_level, ret);
|
|
|
|
|
|
param = ar->wmi.pdev_param->txpower_limit5g;
|
|
|
ret = ath10k_wmi_pdev_set_param(ar, param,
|
|
|
hw->conf.power_level * 2);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to set 5g txpower %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set 5g txpower %d: %d\n",
|
|
|
hw->conf.power_level, ret);
|
|
|
}
|
|
|
|
|
@@ -2731,7 +2737,7 @@ static int ath10k_config(struct ieee80211_hw *hw, u32 changed)
|
|
|
ar->monitor = true;
|
|
|
ret = ath10k_monitor_start(ar);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to start monitor (config): %d\n",
|
|
|
+ ath10k_warn(ar, "failed to start monitor (config): %d\n",
|
|
|
ret);
|
|
|
ar->monitor = false;
|
|
|
}
|
|
@@ -2775,7 +2781,7 @@ static int ath10k_add_interface(struct ieee80211_hw *hw,
|
|
|
INIT_LIST_HEAD(&arvif->list);
|
|
|
|
|
|
if (ar->free_vdev_map == 0) {
|
|
|
- ath10k_warn("Free vdev map is empty, no more interfaces allowed.\n");
|
|
|
+ ath10k_warn(ar, "Free vdev map is empty, no more interfaces allowed.\n");
|
|
|
ret = -EBUSY;
|
|
|
goto err;
|
|
|
}
|
|
@@ -2811,13 +2817,13 @@ static int ath10k_add_interface(struct ieee80211_hw *hw,
|
|
|
break;
|
|
|
}
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac vdev create %d (add interface) type %d subtype %d\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac vdev create %d (add interface) type %d subtype %d\n",
|
|
|
arvif->vdev_id, arvif->vdev_type, arvif->vdev_subtype);
|
|
|
|
|
|
ret = ath10k_wmi_vdev_create(ar, arvif->vdev_id, arvif->vdev_type,
|
|
|
arvif->vdev_subtype, vif->addr);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to create WMI vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to create WMI vdev %i: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
goto err;
|
|
|
}
|
|
@@ -2829,7 +2835,7 @@ static int ath10k_add_interface(struct ieee80211_hw *hw,
|
|
|
ret = ath10k_wmi_vdev_set_param(ar, 0, vdev_param,
|
|
|
arvif->def_wep_key_idx);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set vdev %i default key id: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set vdev %i default key id: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
goto err_vdev_delete;
|
|
|
}
|
|
@@ -2839,7 +2845,7 @@ static int ath10k_add_interface(struct ieee80211_hw *hw,
|
|
|
ATH10K_HW_TXRX_NATIVE_WIFI);
|
|
|
/* 10.X firmware does not support this VDEV parameter. Do not warn */
|
|
|
if (ret && ret != -EOPNOTSUPP) {
|
|
|
- ath10k_warn("failed to set vdev %i TX encapsulation: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set vdev %i TX encapsulation: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
goto err_vdev_delete;
|
|
|
}
|
|
@@ -2847,14 +2853,14 @@ static int ath10k_add_interface(struct ieee80211_hw *hw,
|
|
|
if (arvif->vdev_type == WMI_VDEV_TYPE_AP) {
|
|
|
ret = ath10k_peer_create(ar, arvif->vdev_id, vif->addr);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to create vdev %i peer for AP: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to create vdev %i peer for AP: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
goto err_vdev_delete;
|
|
|
}
|
|
|
|
|
|
ret = ath10k_mac_set_kickout(arvif);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set vdev %i kickout parameters: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set vdev %i kickout parameters: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
goto err_peer_delete;
|
|
|
}
|
|
@@ -2866,7 +2872,7 @@ static int ath10k_add_interface(struct ieee80211_hw *hw,
|
|
|
ret = ath10k_wmi_set_sta_ps_param(ar, arvif->vdev_id,
|
|
|
param, value);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set vdev %i RX wake policy: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set vdev %i RX wake policy: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
goto err_peer_delete;
|
|
|
}
|
|
@@ -2876,7 +2882,7 @@ static int ath10k_add_interface(struct ieee80211_hw *hw,
|
|
|
ret = ath10k_wmi_set_sta_ps_param(ar, arvif->vdev_id,
|
|
|
param, value);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set vdev %i TX wake thresh: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set vdev %i TX wake thresh: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
goto err_peer_delete;
|
|
|
}
|
|
@@ -2886,7 +2892,7 @@ static int ath10k_add_interface(struct ieee80211_hw *hw,
|
|
|
ret = ath10k_wmi_set_sta_ps_param(ar, arvif->vdev_id,
|
|
|
param, value);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set vdev %i PSPOLL count: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set vdev %i PSPOLL count: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
goto err_peer_delete;
|
|
|
}
|
|
@@ -2894,14 +2900,14 @@ static int ath10k_add_interface(struct ieee80211_hw *hw,
|
|
|
|
|
|
ret = ath10k_mac_set_rts(arvif, ar->hw->wiphy->rts_threshold);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set rts threshold for vdev %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set rts threshold for vdev %d: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
goto err_peer_delete;
|
|
|
}
|
|
|
|
|
|
ret = ath10k_mac_set_frag(arvif, ar->hw->wiphy->frag_threshold);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set frag threshold for vdev %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set frag threshold for vdev %d: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
goto err_peer_delete;
|
|
|
}
|
|
@@ -2948,7 +2954,7 @@ static void ath10k_remove_interface(struct ieee80211_hw *hw,
|
|
|
|
|
|
ret = ath10k_spectral_vif_stop(arvif);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to stop spectral for vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to stop spectral for vdev %i: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
|
|
|
ar->free_vdev_map |= 1 << arvif->vdev_id;
|
|
@@ -2957,18 +2963,18 @@ static void ath10k_remove_interface(struct ieee80211_hw *hw,
|
|
|
if (arvif->vdev_type == WMI_VDEV_TYPE_AP) {
|
|
|
ret = ath10k_peer_delete(arvif->ar, arvif->vdev_id, vif->addr);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to remove peer for AP vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to remove peer for AP vdev %i: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
|
|
|
kfree(arvif->u.ap.noa_data);
|
|
|
}
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac vdev %i delete (remove interface)\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac vdev %i delete (remove interface)\n",
|
|
|
arvif->vdev_id);
|
|
|
|
|
|
ret = ath10k_wmi_vdev_delete(ar, arvif->vdev_id);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to delete WMI vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to delete WMI vdev %i: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
|
|
|
ath10k_peer_cleanup(ar, arvif->vdev_id);
|
|
@@ -3007,7 +3013,7 @@ static void ath10k_configure_filter(struct ieee80211_hw *hw,
|
|
|
ar->promisc = true;
|
|
|
ret = ath10k_monitor_start(ar);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to start monitor (promisc): %d\n",
|
|
|
+ ath10k_warn(ar, "failed to start monitor (promisc): %d\n",
|
|
|
ret);
|
|
|
ar->promisc = false;
|
|
|
}
|
|
@@ -3039,17 +3045,17 @@ static void ath10k_bss_info_changed(struct ieee80211_hw *hw,
|
|
|
vdev_param = ar->wmi.vdev_param->beacon_interval;
|
|
|
ret = ath10k_wmi_vdev_set_param(ar, arvif->vdev_id, vdev_param,
|
|
|
arvif->beacon_interval);
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC,
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC,
|
|
|
"mac vdev %d beacon_interval %d\n",
|
|
|
arvif->vdev_id, arvif->beacon_interval);
|
|
|
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to set beacon interval for vdev %d: %i\n",
|
|
|
+ ath10k_warn(ar, "failed to set beacon interval for vdev %d: %i\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
}
|
|
|
|
|
|
if (changed & BSS_CHANGED_BEACON) {
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC,
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC,
|
|
|
"vdev %d set beacon tx mode to staggered\n",
|
|
|
arvif->vdev_id);
|
|
|
|
|
@@ -3057,14 +3063,14 @@ static void ath10k_bss_info_changed(struct ieee80211_hw *hw,
|
|
|
ret = ath10k_wmi_pdev_set_param(ar, pdev_param,
|
|
|
WMI_BEACON_STAGGERED_MODE);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to set beacon mode for vdev %d: %i\n",
|
|
|
+ ath10k_warn(ar, "failed to set beacon mode for vdev %d: %i\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
}
|
|
|
|
|
|
if (changed & BSS_CHANGED_BEACON_INFO) {
|
|
|
arvif->dtim_period = info->dtim_period;
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC,
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC,
|
|
|
"mac vdev %d dtim_period %d\n",
|
|
|
arvif->vdev_id, arvif->dtim_period);
|
|
|
|
|
@@ -3072,7 +3078,7 @@ static void ath10k_bss_info_changed(struct ieee80211_hw *hw,
|
|
|
ret = ath10k_wmi_vdev_set_param(ar, arvif->vdev_id, vdev_param,
|
|
|
arvif->dtim_period);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to set dtim period for vdev %d: %i\n",
|
|
|
+ ath10k_warn(ar, "failed to set dtim period for vdev %d: %i\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
}
|
|
|
|
|
@@ -3091,14 +3097,14 @@ static void ath10k_bss_info_changed(struct ieee80211_hw *hw,
|
|
|
if (changed & BSS_CHANGED_BSSID &&
|
|
|
vif->type != NL80211_IFTYPE_AP) {
|
|
|
if (!is_zero_ether_addr(info->bssid)) {
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC,
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC,
|
|
|
"mac vdev %d create peer %pM\n",
|
|
|
arvif->vdev_id, info->bssid);
|
|
|
|
|
|
ret = ath10k_peer_create(ar, arvif->vdev_id,
|
|
|
info->bssid);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to add peer %pM for vdev %d when changing bssid: %i\n",
|
|
|
+ ath10k_warn(ar, "failed to add peer %pM for vdev %d when changing bssid: %i\n",
|
|
|
info->bssid, arvif->vdev_id, ret);
|
|
|
|
|
|
if (vif->type == NL80211_IFTYPE_STATION) {
|
|
@@ -3108,13 +3114,13 @@ static void ath10k_bss_info_changed(struct ieee80211_hw *hw,
|
|
|
*/
|
|
|
memcpy(arvif->bssid, info->bssid, ETH_ALEN);
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC,
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC,
|
|
|
"mac vdev %d start %pM\n",
|
|
|
arvif->vdev_id, info->bssid);
|
|
|
|
|
|
ret = ath10k_vdev_start(arvif);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to start vdev %i: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to start vdev %i: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
goto exit;
|
|
|
}
|
|
@@ -3138,12 +3144,12 @@ static void ath10k_bss_info_changed(struct ieee80211_hw *hw,
|
|
|
|
|
|
if (changed & BSS_CHANGED_ERP_CTS_PROT) {
|
|
|
arvif->use_cts_prot = info->use_cts_prot;
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac vdev %d cts_prot %d\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac vdev %d cts_prot %d\n",
|
|
|
arvif->vdev_id, info->use_cts_prot);
|
|
|
|
|
|
ret = ath10k_recalc_rtscts_prot(arvif);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to recalculate rts/cts prot for vdev %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to recalculate rts/cts prot for vdev %d: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
}
|
|
|
|
|
@@ -3155,14 +3161,14 @@ static void ath10k_bss_info_changed(struct ieee80211_hw *hw,
|
|
|
else
|
|
|
slottime = WMI_VDEV_SLOT_TIME_LONG; /* 20us */
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac vdev %d slot_time %d\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac vdev %d slot_time %d\n",
|
|
|
arvif->vdev_id, slottime);
|
|
|
|
|
|
vdev_param = ar->wmi.vdev_param->slot_time;
|
|
|
ret = ath10k_wmi_vdev_set_param(ar, arvif->vdev_id, vdev_param,
|
|
|
slottime);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to set erp slot for vdev %d: %i\n",
|
|
|
+ ath10k_warn(ar, "failed to set erp slot for vdev %d: %i\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
}
|
|
|
|
|
@@ -3173,7 +3179,7 @@ static void ath10k_bss_info_changed(struct ieee80211_hw *hw,
|
|
|
else
|
|
|
preamble = WMI_VDEV_PREAMBLE_LONG;
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC,
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC,
|
|
|
"mac vdev %d preamble %dn",
|
|
|
arvif->vdev_id, preamble);
|
|
|
|
|
@@ -3181,7 +3187,7 @@ static void ath10k_bss_info_changed(struct ieee80211_hw *hw,
|
|
|
ret = ath10k_wmi_vdev_set_param(ar, arvif->vdev_id, vdev_param,
|
|
|
preamble);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to set preamble for vdev %d: %i\n",
|
|
|
+ ath10k_warn(ar, "failed to set preamble for vdev %d: %i\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
}
|
|
|
|
|
@@ -3259,7 +3265,7 @@ static int ath10k_hw_scan(struct ieee80211_hw *hw,
|
|
|
|
|
|
ret = ath10k_start_scan(ar, &arg);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to start hw scan: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to start hw scan: %d\n", ret);
|
|
|
spin_lock_bh(&ar->data_lock);
|
|
|
ar->scan.state = ATH10K_SCAN_IDLE;
|
|
|
spin_unlock_bh(&ar->data_lock);
|
|
@@ -3315,7 +3321,7 @@ static void ath10k_set_key_h_def_keyidx(struct ath10k *ar,
|
|
|
ret = ath10k_wmi_vdev_set_param(ar, arvif->vdev_id, vdev_param,
|
|
|
key->keyidx);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to set vdev %i group key as default key: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set vdev %i group key as default key: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
}
|
|
|
|
|
@@ -3353,7 +3359,7 @@ static int ath10k_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
|
|
|
|
|
|
if (!peer) {
|
|
|
if (cmd == SET_KEY) {
|
|
|
- ath10k_warn("failed to install key for non-existent peer %pM\n",
|
|
|
+ ath10k_warn(ar, "failed to install key for non-existent peer %pM\n",
|
|
|
peer_addr);
|
|
|
ret = -EOPNOTSUPP;
|
|
|
goto exit;
|
|
@@ -3376,7 +3382,7 @@ static int ath10k_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
|
|
|
|
|
|
ret = ath10k_install_key(arvif, key, cmd, peer_addr);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to install key for vdev %i peer %pM: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to install key for vdev %i peer %pM: %d\n",
|
|
|
arvif->vdev_id, peer_addr, ret);
|
|
|
goto exit;
|
|
|
}
|
|
@@ -3391,7 +3397,7 @@ static int ath10k_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
|
|
|
peer->keys[key->keyidx] = NULL;
|
|
|
else if (peer == NULL)
|
|
|
/* impossible unless FW goes crazy */
|
|
|
- ath10k_warn("Peer %pM disappeared!\n", peer_addr);
|
|
|
+ ath10k_warn(ar, "Peer %pM disappeared!\n", peer_addr);
|
|
|
spin_unlock_bh(&ar->data_lock);
|
|
|
|
|
|
exit:
|
|
@@ -3427,45 +3433,45 @@ static void ath10k_sta_rc_update_wk(struct work_struct *wk)
|
|
|
mutex_lock(&ar->conf_mutex);
|
|
|
|
|
|
if (changed & IEEE80211_RC_BW_CHANGED) {
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac update sta %pM peer bw %d\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac update sta %pM peer bw %d\n",
|
|
|
sta->addr, bw);
|
|
|
|
|
|
err = ath10k_wmi_peer_set_param(ar, arvif->vdev_id, sta->addr,
|
|
|
WMI_PEER_CHAN_WIDTH, bw);
|
|
|
if (err)
|
|
|
- ath10k_warn("failed to update STA %pM peer bw %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to update STA %pM peer bw %d: %d\n",
|
|
|
sta->addr, bw, err);
|
|
|
}
|
|
|
|
|
|
if (changed & IEEE80211_RC_NSS_CHANGED) {
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac update sta %pM nss %d\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac update sta %pM nss %d\n",
|
|
|
sta->addr, nss);
|
|
|
|
|
|
err = ath10k_wmi_peer_set_param(ar, arvif->vdev_id, sta->addr,
|
|
|
WMI_PEER_NSS, nss);
|
|
|
if (err)
|
|
|
- ath10k_warn("failed to update STA %pM nss %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to update STA %pM nss %d: %d\n",
|
|
|
sta->addr, nss, err);
|
|
|
}
|
|
|
|
|
|
if (changed & IEEE80211_RC_SMPS_CHANGED) {
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac update sta %pM smps %d\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac update sta %pM smps %d\n",
|
|
|
sta->addr, smps);
|
|
|
|
|
|
err = ath10k_wmi_peer_set_param(ar, arvif->vdev_id, sta->addr,
|
|
|
WMI_PEER_SMPS_STATE, smps);
|
|
|
if (err)
|
|
|
- ath10k_warn("failed to update STA %pM smps %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to update STA %pM smps %d: %d\n",
|
|
|
sta->addr, smps, err);
|
|
|
}
|
|
|
|
|
|
if (changed & IEEE80211_RC_SUPP_RATES_CHANGED) {
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac update sta %pM supp rates\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac update sta %pM supp rates\n",
|
|
|
sta->addr);
|
|
|
|
|
|
err = ath10k_station_assoc(ar, arvif, sta, true);
|
|
|
if (err)
|
|
|
- ath10k_warn("failed to reassociate station: %pM\n",
|
|
|
+ ath10k_warn(ar, "failed to reassociate station: %pM\n",
|
|
|
sta->addr);
|
|
|
}
|
|
|
|
|
@@ -3510,31 +3516,31 @@ static int ath10k_sta_state(struct ieee80211_hw *hw,
|
|
|
max_num_peers = TARGET_NUM_PEERS;
|
|
|
|
|
|
if (ar->num_peers >= max_num_peers) {
|
|
|
- ath10k_warn("number of peers exceeded: peers number %d (max peers %d)\n",
|
|
|
+ ath10k_warn(ar, "number of peers exceeded: peers number %d (max peers %d)\n",
|
|
|
ar->num_peers, max_num_peers);
|
|
|
ret = -ENOBUFS;
|
|
|
goto exit;
|
|
|
}
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC,
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC,
|
|
|
"mac vdev %d peer create %pM (new sta) num_peers %d\n",
|
|
|
arvif->vdev_id, sta->addr, ar->num_peers);
|
|
|
|
|
|
ret = ath10k_peer_create(ar, arvif->vdev_id, sta->addr);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to add peer %pM for vdev %d when adding a new sta: %i\n",
|
|
|
+ ath10k_warn(ar, "failed to add peer %pM for vdev %d when adding a new sta: %i\n",
|
|
|
sta->addr, arvif->vdev_id, ret);
|
|
|
} else if ((old_state == IEEE80211_STA_NONE &&
|
|
|
new_state == IEEE80211_STA_NOTEXIST)) {
|
|
|
/*
|
|
|
* Existing station deletion.
|
|
|
*/
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC,
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC,
|
|
|
"mac vdev %d peer delete %pM (sta gone)\n",
|
|
|
arvif->vdev_id, sta->addr);
|
|
|
ret = ath10k_peer_delete(ar, arvif->vdev_id, sta->addr);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to delete peer %pM for vdev %d: %i\n",
|
|
|
+ ath10k_warn(ar, "failed to delete peer %pM for vdev %d: %i\n",
|
|
|
sta->addr, arvif->vdev_id, ret);
|
|
|
|
|
|
if (vif->type == NL80211_IFTYPE_STATION)
|
|
@@ -3546,12 +3552,12 @@ static int ath10k_sta_state(struct ieee80211_hw *hw,
|
|
|
/*
|
|
|
* New association.
|
|
|
*/
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac sta %pM associated\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac sta %pM associated\n",
|
|
|
sta->addr);
|
|
|
|
|
|
ret = ath10k_station_assoc(ar, arvif, sta, false);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to associate station %pM for vdev %i: %i\n",
|
|
|
+ ath10k_warn(ar, "failed to associate station %pM for vdev %i: %i\n",
|
|
|
sta->addr, arvif->vdev_id, ret);
|
|
|
} else if (old_state == IEEE80211_STA_ASSOC &&
|
|
|
new_state == IEEE80211_STA_AUTH &&
|
|
@@ -3560,12 +3566,12 @@ static int ath10k_sta_state(struct ieee80211_hw *hw,
|
|
|
/*
|
|
|
* Disassociation.
|
|
|
*/
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac sta %pM disassociated\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac sta %pM disassociated\n",
|
|
|
sta->addr);
|
|
|
|
|
|
ret = ath10k_station_disassoc(ar, arvif, sta);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to disassociate station: %pM vdev %i: %i\n",
|
|
|
+ ath10k_warn(ar, "failed to disassociate station: %pM vdev %i: %i\n",
|
|
|
sta->addr, arvif->vdev_id, ret);
|
|
|
}
|
|
|
exit:
|
|
@@ -3613,7 +3619,7 @@ static int ath10k_conf_tx_uapsd(struct ath10k *ar, struct ieee80211_vif *vif,
|
|
|
WMI_STA_PS_PARAM_UAPSD,
|
|
|
arvif->u.sta.uapsd);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set uapsd params: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to set uapsd params: %d\n", ret);
|
|
|
goto exit;
|
|
|
}
|
|
|
|
|
@@ -3626,7 +3632,7 @@ static int ath10k_conf_tx_uapsd(struct ath10k *ar, struct ieee80211_vif *vif,
|
|
|
WMI_STA_PS_PARAM_RX_WAKE_POLICY,
|
|
|
value);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to set rx wake param: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to set rx wake param: %d\n", ret);
|
|
|
|
|
|
exit:
|
|
|
return ret;
|
|
@@ -3676,13 +3682,13 @@ static int ath10k_conf_tx(struct ieee80211_hw *hw,
|
|
|
/* FIXME: FW accepts wmm params per hw, not per vif */
|
|
|
ret = ath10k_wmi_pdev_set_wmm_params(ar, &ar->wmm_params);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set wmm params: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to set wmm params: %d\n", ret);
|
|
|
goto exit;
|
|
|
}
|
|
|
|
|
|
ret = ath10k_conf_tx_uapsd(ar, vif, ac, params->uapsd);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to set sta uapsd: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to set sta uapsd: %d\n", ret);
|
|
|
|
|
|
exit:
|
|
|
mutex_unlock(&ar->conf_mutex);
|
|
@@ -3741,7 +3747,7 @@ static int ath10k_remain_on_channel(struct ieee80211_hw *hw,
|
|
|
|
|
|
ret = ath10k_start_scan(ar, &arg);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to start roc scan: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to start roc scan: %d\n", ret);
|
|
|
spin_lock_bh(&ar->data_lock);
|
|
|
ar->scan.state = ATH10K_SCAN_IDLE;
|
|
|
spin_unlock_bh(&ar->data_lock);
|
|
@@ -3750,11 +3756,11 @@ static int ath10k_remain_on_channel(struct ieee80211_hw *hw,
|
|
|
|
|
|
ret = wait_for_completion_timeout(&ar->scan.on_channel, 3*HZ);
|
|
|
if (ret == 0) {
|
|
|
- ath10k_warn("failed to switch to channel for roc scan\n");
|
|
|
+ ath10k_warn(ar, "failed to switch to channel for roc scan\n");
|
|
|
|
|
|
ret = ath10k_scan_stop(ar);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to stop scan: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to stop scan: %d\n", ret);
|
|
|
|
|
|
ret = -ETIMEDOUT;
|
|
|
goto exit;
|
|
@@ -3791,12 +3797,12 @@ static int ath10k_set_rts_threshold(struct ieee80211_hw *hw, u32 value)
|
|
|
|
|
|
mutex_lock(&ar->conf_mutex);
|
|
|
list_for_each_entry(arvif, &ar->arvifs, list) {
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac vdev %d rts threshold %d\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac vdev %d rts threshold %d\n",
|
|
|
arvif->vdev_id, value);
|
|
|
|
|
|
ret = ath10k_mac_set_rts(arvif, value);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set rts threshold for vdev %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set rts threshold for vdev %d: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
break;
|
|
|
}
|
|
@@ -3814,12 +3820,12 @@ static int ath10k_set_frag_threshold(struct ieee80211_hw *hw, u32 value)
|
|
|
|
|
|
mutex_lock(&ar->conf_mutex);
|
|
|
list_for_each_entry(arvif, &ar->arvifs, list) {
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac vdev %d fragmentation threshold %d\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac vdev %d fragmentation threshold %d\n",
|
|
|
arvif->vdev_id, value);
|
|
|
|
|
|
ret = ath10k_mac_set_rts(arvif, value);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set fragmentation threshold for vdev %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set fragmentation threshold for vdev %d: %d\n",
|
|
|
arvif->vdev_id, ret);
|
|
|
break;
|
|
|
}
|
|
@@ -3859,7 +3865,7 @@ static void ath10k_flush(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
|
|
|
}), ATH10K_FLUSH_TIMEOUT_HZ);
|
|
|
|
|
|
if (ret <= 0 || skip)
|
|
|
- ath10k_warn("failed to flush transmit queue (skip %i ar-state %i): %i\n",
|
|
|
+ ath10k_warn(ar, "failed to flush transmit queue (skip %i ar-state %i): %i\n",
|
|
|
skip, ar->state, ret);
|
|
|
|
|
|
skip:
|
|
@@ -3894,7 +3900,7 @@ static int ath10k_suspend(struct ieee80211_hw *hw,
|
|
|
|
|
|
ret = ath10k_hif_suspend(ar);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to suspend hif: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to suspend hif: %d\n", ret);
|
|
|
goto resume;
|
|
|
}
|
|
|
|
|
@@ -3903,7 +3909,7 @@ static int ath10k_suspend(struct ieee80211_hw *hw,
|
|
|
resume:
|
|
|
ret = ath10k_wmi_pdev_resume_target(ar);
|
|
|
if (ret)
|
|
|
- ath10k_warn("failed to resume target: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to resume target: %d\n", ret);
|
|
|
|
|
|
ret = 1;
|
|
|
exit:
|
|
@@ -3920,14 +3926,14 @@ static int ath10k_resume(struct ieee80211_hw *hw)
|
|
|
|
|
|
ret = ath10k_hif_resume(ar);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to resume hif: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to resume hif: %d\n", ret);
|
|
|
ret = 1;
|
|
|
goto exit;
|
|
|
}
|
|
|
|
|
|
ret = ath10k_wmi_pdev_resume_target(ar);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to resume target: %d\n", ret);
|
|
|
+ ath10k_warn(ar, "failed to resume target: %d\n", ret);
|
|
|
ret = 1;
|
|
|
goto exit;
|
|
|
}
|
|
@@ -3948,7 +3954,7 @@ static void ath10k_restart_complete(struct ieee80211_hw *hw)
|
|
|
/* If device failed to restart it will be in a different state, e.g.
|
|
|
* ATH10K_STATE_WEDGED */
|
|
|
if (ar->state == ATH10K_STATE_RESTARTED) {
|
|
|
- ath10k_info("device successfully recovered\n");
|
|
|
+ ath10k_info(ar, "device successfully recovered\n");
|
|
|
ar->state = ATH10K_STATE_ON;
|
|
|
}
|
|
|
|
|
@@ -4145,7 +4151,8 @@ ath10k_bitrate_mask_correct(const struct cfg80211_bitrate_mask *mask,
|
|
|
}
|
|
|
|
|
|
static bool
|
|
|
-ath10k_bitrate_mask_rate(const struct cfg80211_bitrate_mask *mask,
|
|
|
+ath10k_bitrate_mask_rate(struct ath10k *ar,
|
|
|
+ const struct cfg80211_bitrate_mask *mask,
|
|
|
enum ieee80211_band band,
|
|
|
u8 *fixed_rate,
|
|
|
u8 *fixed_nss)
|
|
@@ -4203,7 +4210,7 @@ ath10k_bitrate_mask_rate(const struct cfg80211_bitrate_mask *mask,
|
|
|
nss <<= 4;
|
|
|
pream <<= 6;
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac fixed rate pream 0x%02x nss 0x%02x rate 0x%02x\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac fixed rate pream 0x%02x nss 0x%02x rate 0x%02x\n",
|
|
|
pream, nss, rate);
|
|
|
|
|
|
*fixed_rate = pream | nss | rate;
|
|
@@ -4211,7 +4218,8 @@ ath10k_bitrate_mask_rate(const struct cfg80211_bitrate_mask *mask,
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
-static bool ath10k_get_fixed_rate_nss(const struct cfg80211_bitrate_mask *mask,
|
|
|
+static bool ath10k_get_fixed_rate_nss(struct ath10k *ar,
|
|
|
+ const struct cfg80211_bitrate_mask *mask,
|
|
|
enum ieee80211_band band,
|
|
|
u8 *fixed_rate,
|
|
|
u8 *fixed_nss)
|
|
@@ -4221,7 +4229,7 @@ static bool ath10k_get_fixed_rate_nss(const struct cfg80211_bitrate_mask *mask,
|
|
|
return true;
|
|
|
|
|
|
/* Next Check single rate is set */
|
|
|
- return ath10k_bitrate_mask_rate(mask, band, fixed_rate, fixed_nss);
|
|
|
+ return ath10k_bitrate_mask_rate(ar, mask, band, fixed_rate, fixed_nss);
|
|
|
}
|
|
|
|
|
|
static int ath10k_set_fixed_rate_param(struct ath10k_vif *arvif,
|
|
@@ -4241,16 +4249,16 @@ static int ath10k_set_fixed_rate_param(struct ath10k_vif *arvif,
|
|
|
goto exit;
|
|
|
|
|
|
if (fixed_rate == WMI_FIXED_RATE_NONE)
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac disable fixed bitrate mask\n");
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac disable fixed bitrate mask\n");
|
|
|
|
|
|
if (force_sgi)
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac force sgi\n");
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac force sgi\n");
|
|
|
|
|
|
vdev_param = ar->wmi.vdev_param->fixed_rate;
|
|
|
ret = ath10k_wmi_vdev_set_param(ar, arvif->vdev_id,
|
|
|
vdev_param, fixed_rate);
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set fixed rate param 0x%02x: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set fixed rate param 0x%02x: %d\n",
|
|
|
fixed_rate, ret);
|
|
|
ret = -EINVAL;
|
|
|
goto exit;
|
|
@@ -4263,7 +4271,7 @@ static int ath10k_set_fixed_rate_param(struct ath10k_vif *arvif,
|
|
|
vdev_param, fixed_nss);
|
|
|
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set fixed nss param %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set fixed nss param %d: %d\n",
|
|
|
fixed_nss, ret);
|
|
|
ret = -EINVAL;
|
|
|
goto exit;
|
|
@@ -4276,7 +4284,7 @@ static int ath10k_set_fixed_rate_param(struct ath10k_vif *arvif,
|
|
|
force_sgi);
|
|
|
|
|
|
if (ret) {
|
|
|
- ath10k_warn("failed to set sgi param %d: %d\n",
|
|
|
+ ath10k_warn(ar, "failed to set sgi param %d: %d\n",
|
|
|
force_sgi, ret);
|
|
|
ret = -EINVAL;
|
|
|
goto exit;
|
|
@@ -4305,14 +4313,14 @@ static int ath10k_set_bitrate_mask(struct ieee80211_hw *hw,
|
|
|
return -EINVAL;
|
|
|
|
|
|
if (!ath10k_default_bitrate_mask(ar, band, mask)) {
|
|
|
- if (!ath10k_get_fixed_rate_nss(mask, band,
|
|
|
+ if (!ath10k_get_fixed_rate_nss(ar, mask, band,
|
|
|
&fixed_rate,
|
|
|
&fixed_nss))
|
|
|
return -EINVAL;
|
|
|
}
|
|
|
|
|
|
if (fixed_rate == WMI_FIXED_RATE_NONE && force_sgi) {
|
|
|
- ath10k_warn("failed to force SGI usage for default rate settings\n");
|
|
|
+ ath10k_warn(ar, "failed to force SGI usage for default rate settings\n");
|
|
|
return -EINVAL;
|
|
|
}
|
|
|
|
|
@@ -4331,7 +4339,7 @@ static void ath10k_sta_rc_update(struct ieee80211_hw *hw,
|
|
|
|
|
|
spin_lock_bh(&ar->data_lock);
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC,
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC,
|
|
|
"mac sta rc update for %pM changed %08x bw %d nss %d smps %d\n",
|
|
|
sta->addr, changed, sta->bandwidth, sta->rx_nss,
|
|
|
sta->smps_mode);
|
|
@@ -4350,7 +4358,7 @@ static void ath10k_sta_rc_update(struct ieee80211_hw *hw,
|
|
|
bw = WMI_PEER_CHWIDTH_80MHZ;
|
|
|
break;
|
|
|
case IEEE80211_STA_RX_BW_160:
|
|
|
- ath10k_warn("Invalid bandwith %d in rc update for %pM\n",
|
|
|
+ ath10k_warn(ar, "Invalid bandwith %d in rc update for %pM\n",
|
|
|
sta->bandwidth, sta->addr);
|
|
|
bw = WMI_PEER_CHWIDTH_20MHZ;
|
|
|
break;
|
|
@@ -4377,7 +4385,7 @@ static void ath10k_sta_rc_update(struct ieee80211_hw *hw,
|
|
|
smps = WMI_PEER_SMPS_DYNAMIC;
|
|
|
break;
|
|
|
case IEEE80211_SMPS_NUM_MODES:
|
|
|
- ath10k_warn("Invalid smps %d in sta rc update for %pM\n",
|
|
|
+ ath10k_warn(ar, "Invalid smps %d in sta rc update for %pM\n",
|
|
|
sta->smps_mode, sta->addr);
|
|
|
smps = WMI_PEER_SMPS_PS_NONE;
|
|
|
break;
|
|
@@ -4409,9 +4417,10 @@ static int ath10k_ampdu_action(struct ieee80211_hw *hw,
|
|
|
struct ieee80211_sta *sta, u16 tid, u16 *ssn,
|
|
|
u8 buf_size)
|
|
|
{
|
|
|
+ struct ath10k *ar = hw->priv;
|
|
|
struct ath10k_vif *arvif = ath10k_vif_to_arvif(vif);
|
|
|
|
|
|
- ath10k_dbg(ATH10K_DBG_MAC, "mac ampdu vdev_id %i sta %pM tid %hu action %d\n",
|
|
|
+ ath10k_dbg(ar, ATH10K_DBG_MAC, "mac ampdu vdev_id %i sta %pM tid %hu action %d\n",
|
|
|
arvif->vdev_id, sta->addr, tid, action);
|
|
|
|
|
|
switch (action) {
|
|
@@ -4739,7 +4748,7 @@ struct ath10k_vif *ath10k_get_arvif(struct ath10k *ar, u32 vdev_id)
|
|
|
ath10k_get_arvif_iter,
|
|
|
&arvif_iter);
|
|
|
if (!arvif_iter.arvif) {
|
|
|
- ath10k_warn("No VIF found for vdev %d\n", vdev_id);
|
|
|
+ ath10k_warn(ar, "No VIF found for vdev %d\n", vdev_id);
|
|
|
return NULL;
|
|
|
}
|
|
|
|
|
@@ -4885,19 +4894,19 @@ int ath10k_mac_register(struct ath10k *ar)
|
|
|
NL80211_DFS_UNSET);
|
|
|
|
|
|
if (!ar->dfs_detector)
|
|
|
- ath10k_warn("failed to initialise DFS pattern detector\n");
|
|
|
+ ath10k_warn(ar, "failed to initialise DFS pattern detector\n");
|
|
|
}
|
|
|
|
|
|
ret = ath_regd_init(&ar->ath_common.regulatory, ar->hw->wiphy,
|
|
|
ath10k_reg_notifier);
|
|
|
if (ret) {
|
|
|
- ath10k_err("failed to initialise regulatory: %i\n", ret);
|
|
|
+ ath10k_err(ar, "failed to initialise regulatory: %i\n", ret);
|
|
|
goto err_free;
|
|
|
}
|
|
|
|
|
|
ret = ieee80211_register_hw(ar->hw);
|
|
|
if (ret) {
|
|
|
- ath10k_err("failed to register ieee80211: %d\n", ret);
|
|
|
+ ath10k_err(ar, "failed to register ieee80211: %d\n", ret);
|
|
|
goto err_free;
|
|
|
}
|
|
|
|