* is a second table for associated stations or neighbors.
*/
struct ath6kl_node_table {
- void *nt_wmi; /* back reference */
spinlock_t nt_nodelock; /* on node table */
struct bss *nt_node_first; /* information of all nodes */
struct bss *nt_node_last; /* information of all nodes */
void wlan_node_table_init(void *wmip, struct ath6kl_node_table *nt);
void wlan_node_table_cleanup(struct ath6kl_node_table *nt);
-void wlan_refresh_inactive_nodes(struct ath6kl_node_table *nt);
+void wlan_refresh_inactive_nodes(struct ath6kl *ar);
struct bss *wlan_find_ssid_node(struct ath6kl_node_table *nt, u8 *ssid,
u32 ssid_len, bool is_wpa2, bool match_ssid);
spin_lock_init(&nt->nt_nodelock);
- nt->nt_wmi = wmi;
nt->nt_node_age = WLAN_NODE_INACT_TIMEOUT_MSEC;
}
-void wlan_refresh_inactive_nodes(struct ath6kl_node_table *nt)
+void wlan_refresh_inactive_nodes(struct ath6kl *ar)
{
+ struct ath6kl_node_table *nt = &ar->scan_table;
struct bss *bss;
u8 my_bssid[ETH_ALEN];
u32 now;
- ath6kl_wmi_get_current_bssid(nt->nt_wmi, my_bssid);
+ ath6kl_wmi_get_current_bssid(ar->wmi, my_bssid);
now = jiffies_to_msecs(jiffies);
bss = nt->nt_node_first;
ev = (struct wmi_scan_complete_event *) datap;
if (a_sle32_to_cpu(ev->status) == 0)
- wlan_refresh_inactive_nodes(&wmi->parent_dev->scan_table);
+ wlan_refresh_inactive_nodes(wmi->parent_dev);
ath6kl_scan_complete_evt(wmi->parent_dev, a_sle32_to_cpu(ev->status));
wmi->is_probe_ssid = false;