ath6kl: Move scan table from wmi to ath6kl
authorVasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com>
Thu, 21 Jul 2011 08:08:33 +0000 (13:38 +0530)
committerKalle Valo <kvalo@qca.qualcomm.com>
Tue, 9 Aug 2011 16:45:22 +0000 (19:45 +0300)
It does not need to be in wmi

Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
drivers/net/wireless/ath/ath6kl/core.h
drivers/net/wireless/ath/ath6kl/wmi.c
drivers/net/wireless/ath/ath6kl/wmi.h

index 67784752533f8d5021bf54370e9aba52be6e436f..f3f588a5a02a0591f441ea0da51d2ecae1e33b04 100644 (file)
@@ -455,6 +455,8 @@ struct ath6kl {
        size_t fw_patch_len;
 
        struct workqueue_struct *ath6kl_wq;
+
+       struct ath6kl_node_table scan_table;
 };
 
 static inline void *ath6kl_priv(struct net_device *dev)
index 9b06a82cad7a0476a1841d9b109fa103b0008c25..2e1b4111e6b2b7ac301b17d3920c3a95d244525c 100644 (file)
@@ -390,7 +390,7 @@ void ath6kl_wmi_iterate_nodes(struct wmi *wmi,
                              void (*f) (void *arg, struct bss *),
                              void *arg)
 {
-       wlan_iterate_nodes(&wmi->scan_table, f, arg);
+       wlan_iterate_nodes(&wmi->parent_dev->scan_table, f, arg);
 }
 
 static void ath6kl_wmi_convert_bssinfo_hdr2_to_hdr(struct sk_buff *skb,
@@ -728,7 +728,7 @@ static int ath6kl_wmi_bssinfo_event_rx(struct wmi *wmi, u8 *datap, int len)
                return -EINVAL;
 
        bih = (struct wmi_bss_info_hdr *) datap;
-       bss = wlan_find_node(&wmi->scan_table, bih->bssid);
+       bss = wlan_find_node(&wmi->parent_dev->scan_table, bih->bssid);
 
        if (a_sle16_to_cpu(bih->rssi) > 0) {
                if (bss == NULL)
@@ -777,7 +777,7 @@ static int ath6kl_wmi_bssinfo_event_rx(struct wmi *wmi, u8 *datap, int len)
                        bih->snr = bss->ni_snr;
                }
 
-               wlan_node_reclaim(&wmi->scan_table, bss);
+               wlan_node_reclaim(&wmi->parent_dev->scan_table, bss);
        }
 
        /*
@@ -862,7 +862,7 @@ static int ath6kl_wmi_bssinfo_event_rx(struct wmi *wmi, u8 *datap, int len)
         * which is done in ath6kl_wlan_parse_beacon
         */
        bss->ni_cie.ie_chan = le16_to_cpu(bih->ch);
-       wlan_setup_node(&wmi->scan_table, bss, bih->bssid);
+       wlan_setup_node(&wmi->parent_dev->scan_table, bss, bih->bssid);
 
        return 0;
 }
@@ -883,10 +883,10 @@ static int ath6kl_wmi_opt_frame_event_rx(struct wmi *wmi, u8 *datap, int len)
        ath6kl_dbg(ATH6KL_DBG_WMI, "opt frame event %2.2x:%2.2x\n",
                   bih->bssid[4], bih->bssid[5]);
 
-       bss = wlan_find_node(&wmi->scan_table, bih->bssid);
+       bss = wlan_find_node(&wmi->parent_dev->scan_table, bih->bssid);
        if (bss != NULL) {
                /* Free up the node. We are about to allocate a new node. */
-               wlan_node_reclaim(&wmi->scan_table, bss);
+               wlan_node_reclaim(&wmi->parent_dev->scan_table, bss);
        }
 
        bss = wlan_node_alloc(len);
@@ -900,7 +900,7 @@ static int ath6kl_wmi_opt_frame_event_rx(struct wmi *wmi, u8 *datap, int len)
                return -EINVAL;
 
        memcpy(bss->ni_buf, buf, len);
-       wlan_setup_node(&wmi->scan_table, bss, bih->bssid);
+       wlan_setup_node(&wmi->parent_dev->scan_table, bss, bih->bssid);
 
        return 0;
 }
@@ -1009,7 +1009,7 @@ static int ath6kl_wmi_scan_complete_rx(struct wmi *wmi, u8 *datap, int len)
        ev = (struct wmi_scan_complete_event *) datap;
 
        if (a_sle32_to_cpu(ev->status) == 0)
-               wlan_refresh_inactive_nodes(&wmi->scan_table);
+               wlan_refresh_inactive_nodes(&wmi->parent_dev->scan_table);
 
        ath6kl_scan_complete_evt(wmi->parent_dev, a_sle32_to_cpu(ev->status));
        wmi->is_probe_ssid = false;
@@ -2343,7 +2343,7 @@ s32 ath6kl_wmi_get_rate(s8 rate_index)
 void ath6kl_wmi_node_return(struct wmi *wmi, struct bss *bss)
 {
        if (bss)
-               wlan_node_return(&wmi->scan_table, bss);
+               wlan_node_return(&wmi->parent_dev->scan_table, bss);
 }
 
 struct bss *ath6kl_wmi_find_ssid_node(struct wmi *wmi, u8 * ssid,
@@ -2352,7 +2352,7 @@ struct bss *ath6kl_wmi_find_ssid_node(struct wmi *wmi, u8 * ssid,
 {
        struct bss *node = NULL;
 
-       node = wlan_find_ssid_node(&wmi->scan_table, ssid,
+       node = wlan_find_ssid_node(&wmi->parent_dev->scan_table, ssid,
                                  ssid_len, is_wpa2, match_ssid);
        return node;
 }
@@ -2361,7 +2361,7 @@ struct bss *ath6kl_wmi_find_node(struct wmi *wmi, const u8 * mac_addr)
 {
        struct bss *ni = NULL;
 
-       ni = wlan_find_node(&wmi->scan_table, mac_addr);
+       ni = wlan_find_node(&wmi->parent_dev->scan_table, mac_addr);
 
        return ni;
 }
@@ -2370,9 +2370,9 @@ void ath6kl_wmi_node_free(struct wmi *wmi, const u8 * mac_addr)
 {
        struct bss *ni = NULL;
 
-       ni = wlan_find_node(&wmi->scan_table, mac_addr);
+       ni = wlan_find_node(&wmi->parent_dev->scan_table, mac_addr);
        if (ni != NULL)
-               wlan_node_reclaim(&wmi->scan_table, ni);
+               wlan_node_reclaim(&wmi->parent_dev->scan_table, ni);
 
        return;
 }
@@ -2736,7 +2736,7 @@ void *ath6kl_wmi_init(struct ath6kl *dev)
 
        wmi->parent_dev = dev;
 
-       wlan_node_table_init(wmi, &wmi->scan_table);
+       wlan_node_table_init(wmi, &dev->scan_table);
        ath6kl_wmi_qos_state_init(wmi);
 
        wmi->pwr_mode = REC_POWER;
@@ -2756,6 +2756,6 @@ void ath6kl_wmi_shutdown(struct wmi *wmi)
        if (!wmi)
                return;
 
-       wlan_node_table_cleanup(&wmi->scan_table);
+       wlan_node_table_cleanup(&wmi->parent_dev->scan_table);
        kfree(wmi);
 }
index afc9be9140883d8deb34894d7da102e4a60e816b..1ef779d0ba7a112d3c533cb048f280eb4fb28f4d 100644 (file)
@@ -116,7 +116,6 @@ struct wmi {
        u8 fat_pipe_exist;
        struct ath6kl *parent_dev;
        struct wmi_stats stat;
-       struct ath6kl_node_table scan_table;
        u8 bssid[ETH_ALEN];
        u8 pwr_mode;
        u8 phy_mode;