aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/rtl8192su/ieee80211/ieee80211_module.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/staging/rtl8192su/ieee80211/ieee80211_module.c')
-rw-r--r--drivers/staging/rtl8192su/ieee80211/ieee80211_module.c51
1 files changed, 2 insertions, 49 deletions
diff --git a/drivers/staging/rtl8192su/ieee80211/ieee80211_module.c b/drivers/staging/rtl8192su/ieee80211/ieee80211_module.c
index 759032db4a3..b85ffa0e83c 100644
--- a/drivers/staging/rtl8192su/ieee80211/ieee80211_module.c
+++ b/drivers/staging/rtl8192su/ieee80211/ieee80211_module.c
@@ -113,12 +113,7 @@ struct net_device *alloc_ieee80211(int sizeof_priv)
113 goto failed; 113 goto failed;
114 } 114 }
115 115
116#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,0))
117 ieee = netdev_priv(dev); 116 ieee = netdev_priv(dev);
118#else
119 ieee = (struct ieee80211_device *)dev->priv;
120#endif
121
122 memset(ieee, 0, sizeof(struct ieee80211_device)+sizeof_priv); 117 memset(ieee, 0, sizeof(struct ieee80211_device)+sizeof_priv);
123 ieee->dev = dev; 118 ieee->dev = dev;
124 119
@@ -166,12 +161,7 @@ struct net_device *alloc_ieee80211(int sizeof_priv)
166 161
167 ieee80211_softmac_init(ieee); 162 ieee80211_softmac_init(ieee);
168 163
169#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,13))
170 ieee->pHTInfo = (RT_HIGH_THROUGHPUT*)kzalloc(sizeof(RT_HIGH_THROUGHPUT), GFP_KERNEL); 164 ieee->pHTInfo = (RT_HIGH_THROUGHPUT*)kzalloc(sizeof(RT_HIGH_THROUGHPUT), GFP_KERNEL);
171#else
172 ieee->pHTInfo = (RT_HIGH_THROUGHPUT*)kmalloc(sizeof(RT_HIGH_THROUGHPUT), GFP_KERNEL);
173 memset(ieee->pHTInfo,0,sizeof(RT_HIGH_THROUGHPUT));
174#endif
175 if (ieee->pHTInfo == NULL) 165 if (ieee->pHTInfo == NULL)
176 { 166 {
177 IEEE80211_DEBUG(IEEE80211_DL_ERR, "can't alloc memory for HTInfo\n"); 167 IEEE80211_DEBUG(IEEE80211_DL_ERR, "can't alloc memory for HTInfo\n");
@@ -181,11 +171,7 @@ struct net_device *alloc_ieee80211(int sizeof_priv)
181 HTInitializeHTInfo(ieee); //may move to other place. 171 HTInitializeHTInfo(ieee); //may move to other place.
182 TSInitialize(ieee); 172 TSInitialize(ieee);
183#if 0 173#if 0
184#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20))
185 INIT_WORK(&ieee->ht_onAssRsp, (void(*)(void*)) HTOnAssocRsp_wq); 174 INIT_WORK(&ieee->ht_onAssRsp, (void(*)(void*)) HTOnAssocRsp_wq);
186#else
187 INIT_WORK(&ieee->ht_onAssRsp, (void(*)(void*)) HTOnAssocRsp_wq, ieee);
188#endif
189#endif 175#endif
190 for (i = 0; i < IEEE_IBSS_MAC_HASH_SIZE; i++) 176 for (i = 0; i < IEEE_IBSS_MAC_HASH_SIZE; i++)
191 INIT_LIST_HEAD(&ieee->ibss_mac_hash[i]); 177 INIT_LIST_HEAD(&ieee->ibss_mac_hash[i]);
@@ -205,22 +191,15 @@ struct net_device *alloc_ieee80211(int sizeof_priv)
205 191
206 failed: 192 failed:
207 if (dev) 193 if (dev)
208#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,0))
209 free_netdev(dev); 194 free_netdev(dev);
210#else 195
211 kfree(dev);
212#endif
213 return NULL; 196 return NULL;
214} 197}
215 198
216 199
217void free_ieee80211(struct net_device *dev) 200void free_ieee80211(struct net_device *dev)
218{ 201{
219#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,0))
220 struct ieee80211_device *ieee = netdev_priv(dev); 202 struct ieee80211_device *ieee = netdev_priv(dev);
221#else
222 struct ieee80211_device *ieee = (struct ieee80211_device *)dev->priv;
223#endif
224 int i; 203 int i;
225 //struct list_head *p, *q; 204 //struct list_head *p, *q;
226// del_timer_sync(&ieee->SwBwTimer); 205// del_timer_sync(&ieee->SwBwTimer);
@@ -241,11 +220,7 @@ void free_ieee80211(struct net_device *dev)
241 if (crypt) { 220 if (crypt) {
242 if (crypt->ops) { 221 if (crypt->ops) {
243 crypt->ops->deinit(crypt->priv); 222 crypt->ops->deinit(crypt->priv);
244#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,0)
245 module_put(crypt->ops->owner); 223 module_put(crypt->ops->owner);
246#else
247 __MOD_DEC_USE_COUNT(crypt->ops->owner);
248#endif
249 } 224 }
250 kfree(crypt); 225 kfree(crypt);
251 ieee->crypt[i] = NULL; 226 ieee->crypt[i] = NULL;
@@ -262,11 +237,7 @@ void free_ieee80211(struct net_device *dev)
262 } 237 }
263 238
264#endif 239#endif
265#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,0))
266 free_netdev(dev); 240 free_netdev(dev);
267#else
268 kfree(dev);
269#endif
270} 241}
271 242
272#ifdef CONFIG_IEEE80211_DEBUG 243#ifdef CONFIG_IEEE80211_DEBUG
@@ -332,11 +303,8 @@ static int __init ieee80211_init(void)
332 struct proc_dir_entry *e; 303 struct proc_dir_entry *e;
333 304
334 ieee80211_debug_level = debug; 305 ieee80211_debug_level = debug;
335#if(LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24)) 306
336 ieee80211_proc = create_proc_entry(DRV_NAME, S_IFDIR, proc_net);
337#else
338 ieee80211_proc = create_proc_entry(DRV_NAME, S_IFDIR, init_net.proc_net); 307 ieee80211_proc = create_proc_entry(DRV_NAME, S_IFDIR, init_net.proc_net);
339#endif
340 if (ieee80211_proc == NULL) { 308 if (ieee80211_proc == NULL) {
341 IEEE80211_ERROR("Unable to create " DRV_NAME 309 IEEE80211_ERROR("Unable to create " DRV_NAME
342 " proc directory\n"); 310 " proc directory\n");
@@ -345,11 +313,7 @@ static int __init ieee80211_init(void)
345 e = create_proc_entry("debug_level", S_IFREG | S_IRUGO | S_IWUSR, 313 e = create_proc_entry("debug_level", S_IFREG | S_IRUGO | S_IWUSR,
346 ieee80211_proc); 314 ieee80211_proc);
347 if (!e) { 315 if (!e) {
348#if(LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24))
349 remove_proc_entry(DRV_NAME, proc_net);
350#else
351 remove_proc_entry(DRV_NAME, init_net.proc_net); 316 remove_proc_entry(DRV_NAME, init_net.proc_net);
352#endif
353 ieee80211_proc = NULL; 317 ieee80211_proc = NULL;
354 return -EIO; 318 return -EIO;
355 } 319 }
@@ -364,16 +328,11 @@ static void __exit ieee80211_exit(void)
364{ 328{
365 if (ieee80211_proc) { 329 if (ieee80211_proc) {
366 remove_proc_entry("debug_level", ieee80211_proc); 330 remove_proc_entry("debug_level", ieee80211_proc);
367#if(LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24))
368 remove_proc_entry(DRV_NAME, proc_net);
369#else
370 remove_proc_entry(DRV_NAME, init_net.proc_net); 331 remove_proc_entry(DRV_NAME, init_net.proc_net);
371#endif
372 ieee80211_proc = NULL; 332 ieee80211_proc = NULL;
373 } 333 }
374} 334}
375 335
376#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,5,0))
377#include <linux/moduleparam.h> 336#include <linux/moduleparam.h>
378module_param(debug, int, 0444); 337module_param(debug, int, 0444);
379MODULE_PARM_DESC(debug, "debug output mask"); 338MODULE_PARM_DESC(debug, "debug output mask");
@@ -382,12 +341,6 @@ MODULE_PARM_DESC(debug, "debug output mask");
382module_exit(ieee80211_exit); 341module_exit(ieee80211_exit);
383module_init(ieee80211_init); 342module_init(ieee80211_init);
384#endif 343#endif
385#endif
386 344
387#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,5,0))
388EXPORT_SYMBOL(alloc_ieee80211); 345EXPORT_SYMBOL(alloc_ieee80211);
389EXPORT_SYMBOL(free_ieee80211); 346EXPORT_SYMBOL(free_ieee80211);
390#else
391EXPORT_SYMBOL_NOVERS(alloc_ieee80211);
392EXPORT_SYMBOL_NOVERS(free_ieee80211);
393#endif