Commit b0a4e7d8 authored by John W. Linville's avatar John W. Linville

libipw: switch from ieee80211_* to libipw_* naming policy

This eliminates the dual definition of ieee80211_channel (and possibly
others), further clarifying who defines what and paving the way for
inclusion of cfg80211.h.
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 01a0ac41
This diff is collapsed.
...@@ -46,7 +46,7 @@ ...@@ -46,7 +46,7 @@
#include <linux/workqueue.h> #include <linux/workqueue.h>
#include <linux/mutex.h> #include <linux/mutex.h>
#include "ieee80211.h" #include "libipw.h"
struct ipw2100_priv; struct ipw2100_priv;
struct ipw2100_tx_packet; struct ipw2100_tx_packet;
...@@ -343,7 +343,7 @@ struct ipw2100_tx_packet { ...@@ -343,7 +343,7 @@ struct ipw2100_tx_packet {
struct { /* DATA */ struct { /* DATA */
struct ipw2100_data_header *data; struct ipw2100_data_header *data;
dma_addr_t data_phys; dma_addr_t data_phys;
struct ieee80211_txb *txb; struct libipw_txb *txb;
} d_struct; } d_struct;
} info; } info;
int jiffy_start; int jiffy_start;
...@@ -492,7 +492,7 @@ struct ipw2100_priv { ...@@ -492,7 +492,7 @@ struct ipw2100_priv {
int stop_hang_check; /* Set 1 when shutting down to kill hang_check */ int stop_hang_check; /* Set 1 when shutting down to kill hang_check */
int stop_rf_kill; /* Set 1 when shutting down to kill rf_kill */ int stop_rf_kill; /* Set 1 when shutting down to kill rf_kill */
struct ieee80211_device *ieee; struct libipw_device *ieee;
unsigned long status; unsigned long status;
unsigned long config; unsigned long config;
unsigned long capability; unsigned long capability;
...@@ -788,7 +788,7 @@ struct ipw2100_priv { ...@@ -788,7 +788,7 @@ struct ipw2100_priv {
#define IPW_CARD_DISABLE_PHY_OFF_COMPLETE_WAIT 100 // 100 milli #define IPW_CARD_DISABLE_PHY_OFF_COMPLETE_WAIT 100 // 100 milli
#define IPW_PREPARE_POWER_DOWN_COMPLETE_WAIT 100 // 100 milli #define IPW_PREPARE_POWER_DOWN_COMPLETE_WAIT 100 // 100 milli
#define IPW_HEADER_802_11_SIZE sizeof(struct ieee80211_hdr_3addr) #define IPW_HEADER_802_11_SIZE sizeof(struct libipw_hdr_3addr)
#define IPW_MAX_80211_PAYLOAD_SIZE 2304U #define IPW_MAX_80211_PAYLOAD_SIZE 2304U
#define IPW_MAX_802_11_PAYLOAD_LENGTH 2312 #define IPW_MAX_802_11_PAYLOAD_LENGTH 2312
#define IPW_MAX_ACCEPTABLE_TX_FRAME_LENGTH 1536 #define IPW_MAX_ACCEPTABLE_TX_FRAME_LENGTH 1536
...@@ -803,13 +803,13 @@ struct ipw2100_priv { ...@@ -803,13 +803,13 @@ struct ipw2100_priv {
IPW_802_11_FCS_LENGTH) IPW_802_11_FCS_LENGTH)
#define IPW_802_11_PAYLOAD_OFFSET \ #define IPW_802_11_PAYLOAD_OFFSET \
(sizeof(struct ieee80211_hdr_3addr) + \ (sizeof(struct libipw_hdr_3addr) + \
sizeof(struct ieee80211_snap_hdr)) sizeof(struct libipw_snap_hdr))
struct ipw2100_rx { struct ipw2100_rx {
union { union {
unsigned char payload[IPW_RX_NIC_BUFFER_LENGTH]; unsigned char payload[IPW_RX_NIC_BUFFER_LENGTH];
struct ieee80211_hdr_4addr header; struct libipw_hdr_4addr header;
u32 status; u32 status;
struct ipw2100_notification notification; struct ipw2100_notification notification;
struct ipw2100_cmd_header command; struct ipw2100_cmd_header command;
......
This diff is collapsed.
...@@ -55,7 +55,7 @@ ...@@ -55,7 +55,7 @@
#include <linux/workqueue.h> #include <linux/workqueue.h>
#include "ieee80211.h" #include "libipw.h"
/* Authentication and Association States */ /* Authentication and Association States */
enum connection_manager_assoc_states { enum connection_manager_assoc_states {
...@@ -365,8 +365,8 @@ enum connection_manager_assoc_states { ...@@ -365,8 +365,8 @@ enum connection_manager_assoc_states {
/* QoS sturctures */ /* QoS sturctures */
struct ipw_qos_info { struct ipw_qos_info {
int qos_enable; int qos_enable;
struct ieee80211_qos_parameters *def_qos_parm_OFDM; struct libipw_qos_parameters *def_qos_parm_OFDM;
struct ieee80211_qos_parameters *def_qos_parm_CCK; struct libipw_qos_parameters *def_qos_parm_CCK;
u32 burst_duration_CCK; u32 burst_duration_CCK;
u32 burst_duration_OFDM; u32 burst_duration_OFDM;
u16 qos_no_ack_mask; u16 qos_no_ack_mask;
...@@ -534,7 +534,7 @@ typedef void destructor_func(const void *); ...@@ -534,7 +534,7 @@ typedef void destructor_func(const void *);
struct clx2_tx_queue { struct clx2_tx_queue {
struct clx2_queue q; struct clx2_queue q;
struct tfd_frame *bd; struct tfd_frame *bd;
struct ieee80211_txb **txb; struct libipw_txb **txb;
}; };
/* /*
...@@ -1144,7 +1144,7 @@ enum ipw_prom_filter { ...@@ -1144,7 +1144,7 @@ enum ipw_prom_filter {
struct ipw_priv; struct ipw_priv;
struct ipw_prom_priv { struct ipw_prom_priv {
struct ipw_priv *priv; struct ipw_priv *priv;
struct ieee80211_device *ieee; struct libipw_device *ieee;
enum ipw_prom_filter filter; enum ipw_prom_filter filter;
int tx_packets; int tx_packets;
int rx_packets; int rx_packets;
...@@ -1175,7 +1175,7 @@ struct ipw_rt_hdr { ...@@ -1175,7 +1175,7 @@ struct ipw_rt_hdr {
struct ipw_priv { struct ipw_priv {
/* ieee device used by generic ieee processing code */ /* ieee device used by generic ieee processing code */
struct ieee80211_device *ieee; struct libipw_device *ieee;
spinlock_t lock; spinlock_t lock;
spinlock_t irq_lock; spinlock_t irq_lock;
...@@ -1222,7 +1222,7 @@ struct ipw_priv { ...@@ -1222,7 +1222,7 @@ struct ipw_priv {
u32 roaming_threshold; u32 roaming_threshold;
struct ipw_associate assoc_request; struct ipw_associate assoc_request;
struct ieee80211_network *assoc_network; struct libipw_network *assoc_network;
unsigned long ts_scan_abort; unsigned long ts_scan_abort;
struct ipw_supported_rates rates; struct ipw_supported_rates rates;
......
...@@ -41,9 +41,9 @@ ...@@ -41,9 +41,9 @@
#include <linux/etherdevice.h> #include <linux/etherdevice.h>
#include <asm/uaccess.h> #include <asm/uaccess.h>
#include "ieee80211.h" #include "libipw.h"
int ieee80211_is_valid_channel(struct ieee80211_device *ieee, u8 channel) int libipw_is_valid_channel(struct libipw_device *ieee, u8 channel)
{ {
int i; int i;
...@@ -52,27 +52,27 @@ int ieee80211_is_valid_channel(struct ieee80211_device *ieee, u8 channel) ...@@ -52,27 +52,27 @@ int ieee80211_is_valid_channel(struct ieee80211_device *ieee, u8 channel)
if (ieee->geo.bg_channels == 0 && ieee->geo.a_channels == 0) if (ieee->geo.bg_channels == 0 && ieee->geo.a_channels == 0)
return 0; return 0;
if (ieee->freq_band & IEEE80211_24GHZ_BAND) if (ieee->freq_band & LIBIPW_24GHZ_BAND)
for (i = 0; i < ieee->geo.bg_channels; i++) for (i = 0; i < ieee->geo.bg_channels; i++)
/* NOTE: If G mode is currently supported but /* NOTE: If G mode is currently supported but
* this is a B only channel, we don't see it * this is a B only channel, we don't see it
* as valid. */ * as valid. */
if ((ieee->geo.bg[i].channel == channel) && if ((ieee->geo.bg[i].channel == channel) &&
!(ieee->geo.bg[i].flags & IEEE80211_CH_INVALID) && !(ieee->geo.bg[i].flags & LIBIPW_CH_INVALID) &&
(!(ieee->mode & IEEE_G) || (!(ieee->mode & IEEE_G) ||
!(ieee->geo.bg[i].flags & IEEE80211_CH_B_ONLY))) !(ieee->geo.bg[i].flags & LIBIPW_CH_B_ONLY)))
return IEEE80211_24GHZ_BAND; return LIBIPW_24GHZ_BAND;
if (ieee->freq_band & IEEE80211_52GHZ_BAND) if (ieee->freq_band & LIBIPW_52GHZ_BAND)
for (i = 0; i < ieee->geo.a_channels; i++) for (i = 0; i < ieee->geo.a_channels; i++)
if ((ieee->geo.a[i].channel == channel) && if ((ieee->geo.a[i].channel == channel) &&
!(ieee->geo.a[i].flags & IEEE80211_CH_INVALID)) !(ieee->geo.a[i].flags & LIBIPW_CH_INVALID))
return IEEE80211_52GHZ_BAND; return LIBIPW_52GHZ_BAND;
return 0; return 0;
} }
int ieee80211_channel_to_index(struct ieee80211_device *ieee, u8 channel) int libipw_channel_to_index(struct libipw_device *ieee, u8 channel)
{ {
int i; int i;
...@@ -81,12 +81,12 @@ int ieee80211_channel_to_index(struct ieee80211_device *ieee, u8 channel) ...@@ -81,12 +81,12 @@ int ieee80211_channel_to_index(struct ieee80211_device *ieee, u8 channel)
if (ieee->geo.bg_channels == 0 && ieee->geo.a_channels == 0) if (ieee->geo.bg_channels == 0 && ieee->geo.a_channels == 0)
return -1; return -1;
if (ieee->freq_band & IEEE80211_24GHZ_BAND) if (ieee->freq_band & LIBIPW_24GHZ_BAND)
for (i = 0; i < ieee->geo.bg_channels; i++) for (i = 0; i < ieee->geo.bg_channels; i++)
if (ieee->geo.bg[i].channel == channel) if (ieee->geo.bg[i].channel == channel)
return i; return i;
if (ieee->freq_band & IEEE80211_52GHZ_BAND) if (ieee->freq_band & LIBIPW_52GHZ_BAND)
for (i = 0; i < ieee->geo.a_channels; i++) for (i = 0; i < ieee->geo.a_channels; i++)
if (ieee->geo.a[i].channel == channel) if (ieee->geo.a[i].channel == channel)
return i; return i;
...@@ -94,22 +94,22 @@ int ieee80211_channel_to_index(struct ieee80211_device *ieee, u8 channel) ...@@ -94,22 +94,22 @@ int ieee80211_channel_to_index(struct ieee80211_device *ieee, u8 channel)
return -1; return -1;
} }
u32 ieee80211_channel_to_freq(struct ieee80211_device * ieee, u8 channel) u32 libipw_channel_to_freq(struct libipw_device * ieee, u8 channel)
{ {
const struct ieee80211_channel * ch; const struct libipw_channel * ch;
/* Driver needs to initialize the geography map before using /* Driver needs to initialize the geography map before using
* these helper functions */ * these helper functions */
if (ieee->geo.bg_channels == 0 && ieee->geo.a_channels == 0) if (ieee->geo.bg_channels == 0 && ieee->geo.a_channels == 0)
return 0; return 0;
ch = ieee80211_get_channel(ieee, channel); ch = libipw_get_channel(ieee, channel);
if (!ch->channel) if (!ch->channel)
return 0; return 0;
return ch->freq; return ch->freq;
} }
u8 ieee80211_freq_to_channel(struct ieee80211_device * ieee, u32 freq) u8 libipw_freq_to_channel(struct libipw_device * ieee, u32 freq)
{ {
int i; int i;
...@@ -120,12 +120,12 @@ u8 ieee80211_freq_to_channel(struct ieee80211_device * ieee, u32 freq) ...@@ -120,12 +120,12 @@ u8 ieee80211_freq_to_channel(struct ieee80211_device * ieee, u32 freq)
freq /= 100000; freq /= 100000;
if (ieee->freq_band & IEEE80211_24GHZ_BAND) if (ieee->freq_band & LIBIPW_24GHZ_BAND)
for (i = 0; i < ieee->geo.bg_channels; i++) for (i = 0; i < ieee->geo.bg_channels; i++)
if (ieee->geo.bg[i].freq == freq) if (ieee->geo.bg[i].freq == freq)
return ieee->geo.bg[i].channel; return ieee->geo.bg[i].channel;
if (ieee->freq_band & IEEE80211_52GHZ_BAND) if (ieee->freq_band & LIBIPW_52GHZ_BAND)
for (i = 0; i < ieee->geo.a_channels; i++) for (i = 0; i < ieee->geo.a_channels; i++)
if (ieee->geo.a[i].freq == freq) if (ieee->geo.a[i].freq == freq)
return ieee->geo.a[i].channel; return ieee->geo.a[i].channel;
...@@ -133,63 +133,63 @@ u8 ieee80211_freq_to_channel(struct ieee80211_device * ieee, u32 freq) ...@@ -133,63 +133,63 @@ u8 ieee80211_freq_to_channel(struct ieee80211_device * ieee, u32 freq)
return 0; return 0;
} }
int ieee80211_set_geo(struct ieee80211_device *ieee, int libipw_set_geo(struct libipw_device *ieee,
const struct ieee80211_geo *geo) const struct libipw_geo *geo)
{ {
memcpy(ieee->geo.name, geo->name, 3); memcpy(ieee->geo.name, geo->name, 3);
ieee->geo.name[3] = '\0'; ieee->geo.name[3] = '\0';
ieee->geo.bg_channels = geo->bg_channels; ieee->geo.bg_channels = geo->bg_channels;
ieee->geo.a_channels = geo->a_channels; ieee->geo.a_channels = geo->a_channels;
memcpy(ieee->geo.bg, geo->bg, geo->bg_channels * memcpy(ieee->geo.bg, geo->bg, geo->bg_channels *
sizeof(struct ieee80211_channel)); sizeof(struct libipw_channel));
memcpy(ieee->geo.a, geo->a, ieee->geo.a_channels * memcpy(ieee->geo.a, geo->a, ieee->geo.a_channels *
sizeof(struct ieee80211_channel)); sizeof(struct libipw_channel));
return 0; return 0;
} }
const struct ieee80211_geo *ieee80211_get_geo(struct ieee80211_device *ieee) const struct libipw_geo *libipw_get_geo(struct libipw_device *ieee)
{ {
return &ieee->geo; return &ieee->geo;
} }
u8 ieee80211_get_channel_flags(struct ieee80211_device * ieee, u8 channel) u8 libipw_get_channel_flags(struct libipw_device * ieee, u8 channel)
{ {
int index = ieee80211_channel_to_index(ieee, channel); int index = libipw_channel_to_index(ieee, channel);
if (index == -1) if (index == -1)
return IEEE80211_CH_INVALID; return LIBIPW_CH_INVALID;
if (channel <= IEEE80211_24GHZ_CHANNELS) if (channel <= LIBIPW_24GHZ_CHANNELS)
return ieee->geo.bg[index].flags; return ieee->geo.bg[index].flags;
return ieee->geo.a[index].flags; return ieee->geo.a[index].flags;
} }
static const struct ieee80211_channel bad_channel = { static const struct libipw_channel bad_channel = {
.channel = 0, .channel = 0,
.flags = IEEE80211_CH_INVALID, .flags = LIBIPW_CH_INVALID,
.max_power = 0, .max_power = 0,
}; };
const struct ieee80211_channel *ieee80211_get_channel(struct ieee80211_device const struct libipw_channel *libipw_get_channel(struct libipw_device
*ieee, u8 channel) *ieee, u8 channel)
{ {
int index = ieee80211_channel_to_index(ieee, channel); int index = libipw_channel_to_index(ieee, channel);
if (index == -1) if (index == -1)
return &bad_channel; return &bad_channel;
if (channel <= IEEE80211_24GHZ_CHANNELS) if (channel <= LIBIPW_24GHZ_CHANNELS)
return &ieee->geo.bg[index]; return &ieee->geo.bg[index];
return &ieee->geo.a[index]; return &ieee->geo.a[index];
} }
EXPORT_SYMBOL(ieee80211_get_channel); EXPORT_SYMBOL(libipw_get_channel);
EXPORT_SYMBOL(ieee80211_get_channel_flags); EXPORT_SYMBOL(libipw_get_channel_flags);
EXPORT_SYMBOL(ieee80211_is_valid_channel); EXPORT_SYMBOL(libipw_is_valid_channel);
EXPORT_SYMBOL(ieee80211_freq_to_channel); EXPORT_SYMBOL(libipw_freq_to_channel);
EXPORT_SYMBOL(ieee80211_channel_to_freq); EXPORT_SYMBOL(libipw_channel_to_freq);
EXPORT_SYMBOL(ieee80211_channel_to_index); EXPORT_SYMBOL(libipw_channel_to_index);
EXPORT_SYMBOL(ieee80211_set_geo); EXPORT_SYMBOL(libipw_set_geo);
EXPORT_SYMBOL(ieee80211_get_geo); EXPORT_SYMBOL(libipw_get_geo);
...@@ -50,11 +50,11 @@ ...@@ -50,11 +50,11 @@
#include <net/net_namespace.h> #include <net/net_namespace.h>
#include <net/arp.h> #include <net/arp.h>
#include "ieee80211.h" #include "libipw.h"
#define DRV_DESCRIPTION "802.11 data/management/control stack" #define DRV_DESCRIPTION "802.11 data/management/control stack"
#define DRV_NAME "ieee80211" #define DRV_NAME "ieee80211"
#define DRV_VERSION IEEE80211_VERSION #define DRV_VERSION LIBIPW_VERSION
#define DRV_COPYRIGHT "Copyright (C) 2004-2005 Intel Corporation <jketreno@linux.intel.com>" #define DRV_COPYRIGHT "Copyright (C) 2004-2005 Intel Corporation <jketreno@linux.intel.com>"
MODULE_VERSION(DRV_VERSION); MODULE_VERSION(DRV_VERSION);
...@@ -62,13 +62,13 @@ MODULE_DESCRIPTION(DRV_DESCRIPTION); ...@@ -62,13 +62,13 @@ MODULE_DESCRIPTION(DRV_DESCRIPTION);
MODULE_AUTHOR(DRV_COPYRIGHT); MODULE_AUTHOR(DRV_COPYRIGHT);
MODULE_LICENSE("GPL"); MODULE_LICENSE("GPL");
static int ieee80211_networks_allocate(struct ieee80211_device *ieee) static int libipw_networks_allocate(struct libipw_device *ieee)
{ {
if (ieee->networks) if (ieee->networks)
return 0; return 0;
ieee->networks = ieee->networks =
kzalloc(MAX_NETWORK_COUNT * sizeof(struct ieee80211_network), kzalloc(MAX_NETWORK_COUNT * sizeof(struct libipw_network),
GFP_KERNEL); GFP_KERNEL);
if (!ieee->networks) { if (!ieee->networks) {
printk(KERN_WARNING "%s: Out of memory allocating beacons\n", printk(KERN_WARNING "%s: Out of memory allocating beacons\n",
...@@ -79,7 +79,7 @@ static int ieee80211_networks_allocate(struct ieee80211_device *ieee) ...@@ -79,7 +79,7 @@ static int ieee80211_networks_allocate(struct ieee80211_device *ieee)
return 0; return 0;
} }
void ieee80211_network_reset(struct ieee80211_network *network) void libipw_network_reset(struct libipw_network *network)
{ {
if (!network) if (!network)
return; return;
...@@ -90,7 +90,7 @@ void ieee80211_network_reset(struct ieee80211_network *network) ...@@ -90,7 +90,7 @@ void ieee80211_network_reset(struct ieee80211_network *network)
} }
} }
static inline void ieee80211_networks_free(struct ieee80211_device *ieee) static inline void libipw_networks_free(struct libipw_device *ieee)
{ {
int i; int i;
...@@ -105,10 +105,10 @@ static inline void ieee80211_networks_free(struct ieee80211_device *ieee) ...@@ -105,10 +105,10 @@ static inline void ieee80211_networks_free(struct ieee80211_device *ieee)
ieee->networks = NULL; ieee->networks = NULL;
} }
void ieee80211_networks_age(struct ieee80211_device *ieee, void libipw_networks_age(struct libipw_device *ieee,
unsigned long age_secs) unsigned long age_secs)
{ {
struct ieee80211_network *network = NULL; struct libipw_network *network = NULL;
unsigned long flags; unsigned long flags;
unsigned long age_jiffies = msecs_to_jiffies(age_secs * MSEC_PER_SEC); unsigned long age_jiffies = msecs_to_jiffies(age_secs * MSEC_PER_SEC);
...@@ -118,9 +118,9 @@ void ieee80211_networks_age(struct ieee80211_device *ieee, ...@@ -118,9 +118,9 @@ void ieee80211_networks_age(struct ieee80211_device *ieee,
} }
spin_unlock_irqrestore(&ieee->lock, flags); spin_unlock_irqrestore(&ieee->lock, flags);
} }
EXPORT_SYMBOL(ieee80211_networks_age); EXPORT_SYMBOL(libipw_networks_age);
static void ieee80211_networks_initialize(struct ieee80211_device *ieee) static void libipw_networks_initialize(struct libipw_device *ieee)
{ {
int i; int i;
...@@ -131,38 +131,38 @@ static void ieee80211_networks_initialize(struct ieee80211_device *ieee) ...@@ -131,38 +131,38 @@ static void ieee80211_networks_initialize(struct ieee80211_device *ieee)
&ieee->network_free_list); &ieee->network_free_list);
} }
int ieee80211_change_mtu(struct net_device *dev, int new_mtu) int libipw_change_mtu(struct net_device *dev, int new_mtu)
{ {
if ((new_mtu < 68) || (new_mtu > IEEE80211_DATA_LEN)) if ((new_mtu < 68) || (new_mtu > LIBIPW_DATA_LEN))
return -EINVAL; return -EINVAL;
dev->mtu = new_mtu; dev->mtu = new_mtu;
return 0; return 0;
} }
EXPORT_SYMBOL(ieee80211_change_mtu); EXPORT_SYMBOL(libipw_change_mtu);
struct net_device *alloc_ieee80211(int sizeof_priv) struct net_device *alloc_ieee80211(int sizeof_priv)
{ {
struct ieee80211_device *ieee; struct libipw_device *ieee;
struct net_device *dev; struct net_device *dev;
int err; int err;
IEEE80211_DEBUG_INFO("Initializing...\n"); LIBIPW_DEBUG_INFO("Initializing...\n");
dev = alloc_etherdev(sizeof(struct ieee80211_device) + sizeof_priv); dev = alloc_etherdev(sizeof(struct libipw_device) + sizeof_priv);
if (!dev) { if (!dev) {
IEEE80211_ERROR("Unable to allocate network device.\n"); LIBIPW_ERROR("Unable to allocate network device.\n");
goto failed; goto failed;
} }
ieee = netdev_priv(dev); ieee = netdev_priv(dev);
ieee->dev = dev; ieee->dev = dev;
err = ieee80211_networks_allocate(ieee); err = libipw_networks_allocate(ieee);
if (err) { if (err) {
IEEE80211_ERROR("Unable to allocate beacon storage: %d\n", err); LIBIPW_ERROR("Unable to allocate beacon storage: %d\n", err);
goto failed_free_netdev; goto failed_free_netdev;
} }
ieee80211_networks_initialize(ieee); libipw_networks_initialize(ieee);
/* Default fragmentation threshold is maximum payload size */ /* Default fragmentation threshold is maximum payload size */
ieee->fts = DEFAULT_FTS; ieee->fts = DEFAULT_FTS;
...@@ -201,25 +201,25 @@ struct net_device *alloc_ieee80211(int sizeof_priv) ...@@ -201,25 +201,25 @@ struct net_device *alloc_ieee80211(int sizeof_priv)
void free_ieee80211(struct net_device *dev) void free_ieee80211(struct net_device *dev)
{ {
struct ieee80211_device *ieee = netdev_priv(dev); struct libipw_device *ieee = netdev_priv(dev);
lib80211_crypt_info_free(&ieee->crypt_info); lib80211_crypt_info_free(&ieee->crypt_info);
ieee80211_networks_free(ieee); libipw_networks_free(ieee);
free_netdev(dev); free_netdev(dev);
} }
#ifdef CONFIG_LIBIPW_DEBUG #ifdef CONFIG_LIBIPW_DEBUG
static int debug = 0; static int debug = 0;
u32 ieee80211_debug_level = 0; u32 libipw_debug_level = 0;
EXPORT_SYMBOL_GPL(ieee80211_debug_level); EXPORT_SYMBOL_GPL(libipw_debug_level);
static struct proc_dir_entry *ieee80211_proc = NULL; static struct proc_dir_entry *libipw_proc = NULL;
static int show_debug_level(char *page, char **start, off_t offset, static int show_debug_level(char *page, char **start, off_t offset,
int count, int *eof, void *data) int count, int *eof, void *data)
{ {
return snprintf(page, count, "0x%08X\n", ieee80211_debug_level); return snprintf(page, count, "0x%08X\n", libipw_debug_level);
} }
static int store_debug_level(struct file *file, const char __user * buffer, static int store_debug_level(struct file *file, const char __user * buffer,
...@@ -236,29 +236,29 @@ static int store_debug_level(struct file *file, const char __user * buffer, ...@@ -236,29 +236,29 @@ static int store_debug_level(struct file *file, const char __user * buffer,
printk(KERN_INFO DRV_NAME printk(KERN_INFO DRV_NAME
": %s is not in hex or decimal form.\n", buf); ": %s is not in hex or decimal form.\n", buf);
else else
ieee80211_debug_level = val; libipw_debug_level = val;
return strnlen(buf, len); return strnlen(buf, len);
} }
#endif /* CONFIG_LIBIPW_DEBUG */ #endif /* CONFIG_LIBIPW_DEBUG */
static int __init ieee80211_init(void) static int __init libipw_init(void)
{ {
#ifdef CONFIG_LIBIPW_DEBUG #ifdef CONFIG_LIBIPW_DEBUG
struct proc_dir_entry *e; struct proc_dir_entry *e;
ieee80211_debug_level = debug; libipw_debug_level = debug;
ieee80211_proc = proc_mkdir(DRV_NAME, init_net.proc_net); libipw_proc = proc_mkdir(DRV_NAME, init_net.proc_net);
if (ieee80211_proc == NULL) { if (libipw_proc == NULL) {
IEEE80211_ERROR("Unable to create " DRV_NAME LIBIPW_ERROR("Unable to create " DRV_NAME
" proc directory\n"); " proc directory\n");
return -EIO; return -EIO;
} }
e = create_proc_entry("debug_level", S_IFREG | S_IRUGO | S_IWUSR, e = create_proc_entry("debug_level", S_IFREG | S_IRUGO | S_IWUSR,
ieee80211_proc); libipw_proc);
if (!e) { if (!e) {
remove_proc_entry(DRV_NAME, init_net.proc_net); remove_proc_entry(DRV_NAME, init_net.proc_net);
ieee80211_proc = NULL; libipw_proc = NULL;
return -EIO; return -EIO;
} }
e->read_proc = show_debug_level; e->read_proc = show_debug_level;
...@@ -272,13 +272,13 @@ static int __init ieee80211_init(void) ...@@ -272,13 +272,13 @@ static int __init ieee80211_init(void)
return 0; return 0;
} }
static void __exit ieee80211_exit(void) static void __exit libipw_exit(void)
{ {
#ifdef CONFIG_LIBIPW_DEBUG #ifdef CONFIG_LIBIPW_DEBUG
if (ieee80211_proc) { if (libipw_proc) {
remove_proc_entry("debug_level", ieee80211_proc); remove_proc_entry("debug_level", libipw_proc);
remove_proc_entry(DRV_NAME, init_net.proc_net); remove_proc_entry(DRV_NAME, init_net.proc_net);
ieee80211_proc = NULL; libipw_proc = NULL;
} }
#endif /* CONFIG_LIBIPW_DEBUG */ #endif /* CONFIG_LIBIPW_DEBUG */
} }
...@@ -289,8 +289,8 @@ module_param(debug, int, 0444); ...@@ -289,8 +289,8 @@ module_param(debug, int, 0444);
MODULE_PARM_DESC(debug, "debug output mask"); MODULE_PARM_DESC(debug, "debug output mask");
#endif /* CONFIG_LIBIPW_DEBUG */ #endif /* CONFIG_LIBIPW_DEBUG */
module_exit(ieee80211_exit); module_exit(libipw_exit);
module_init(ieee80211_init); module_init(libipw_init);
EXPORT_SYMBOL(alloc_ieee80211); EXPORT_SYMBOL(alloc_ieee80211);
EXPORT_SYMBOL(free_ieee80211); EXPORT_SYMBOL(free_ieee80211);
This diff is collapsed.
...@@ -41,7 +41,7 @@ ...@@ -41,7 +41,7 @@
#include <linux/etherdevice.h> #include <linux/etherdevice.h>
#include <asm/uaccess.h> #include <asm/uaccess.h>
#include "ieee80211.h" #include "libipw.h"
/* /*
...@@ -126,12 +126,12 @@ payload of each frame is reduced to 492 bytes. ...@@ -126,12 +126,12 @@ payload of each frame is reduced to 492 bytes.
static u8 P802_1H_OUI[P80211_OUI_LEN] = { 0x00, 0x00, 0xf8 }; static u8 P802_1H_OUI[P80211_OUI_LEN] = { 0x00, 0x00, 0xf8 };
static u8 RFC1042_OUI[P80211_OUI_LEN] = { 0x00, 0x00, 0x00 }; static u8 RFC1042_OUI[P80211_OUI_LEN] = { 0x00, 0x00, 0x00 };
static int ieee80211_copy_snap(u8 * data, __be16 h_proto) static int libipw_copy_snap(u8 * data, __be16 h_proto)
{ {
struct ieee80211_snap_hdr *snap; struct libipw_snap_hdr *snap;
u8 *oui; u8 *oui;
snap = (struct ieee80211_snap_hdr *)data; snap = (struct libipw_snap_hdr *)data;
snap->dsap = 0xaa; snap->dsap = 0xaa;
snap->ssap = 0xaa; snap->ssap = 0xaa;
snap->ctrl = 0x03; snap->ctrl = 0x03;
...@@ -149,7 +149,7 @@ static int ieee80211_copy_snap(u8 * data, __be16 h_proto) ...@@ -149,7 +149,7 @@ static int ieee80211_copy_snap(u8 * data, __be16 h_proto)
return SNAP_SIZE + sizeof(u16); return SNAP_SIZE + sizeof(u16);
} }
static int ieee80211_encrypt_fragment(struct ieee80211_device *ieee, static int libipw_encrypt_fragment(struct libipw_device *ieee,
struct sk_buff *frag, int hdr_len) struct sk_buff *frag, int hdr_len)
{ {
struct lib80211_crypt_data *crypt = struct lib80211_crypt_data *crypt =
...@@ -177,7 +177,7 @@ static int ieee80211_encrypt_fragment(struct ieee80211_device *ieee, ...@@ -177,7 +177,7 @@ static int ieee80211_encrypt_fragment(struct ieee80211_device *ieee,
return 0; return 0;
} }
void ieee80211_txb_free(struct ieee80211_txb *txb) void libipw_txb_free(struct libipw_txb *txb)
{ {
int i; int i;
if (unlikely(!txb)) if (unlikely(!txb))
...@@ -188,17 +188,17 @@ void ieee80211_txb_free(struct ieee80211_txb *txb) ...@@ -188,17 +188,17 @@ void ieee80211_txb_free(struct ieee80211_txb *txb)
kfree(txb); kfree(txb);
} }
static struct ieee80211_txb *ieee80211_alloc_txb(int nr_frags, int txb_size, static struct libipw_txb *libipw_alloc_txb(int nr_frags, int txb_size,
int headroom, gfp_t gfp_mask) int headroom, gfp_t gfp_mask)
{ {
struct ieee80211_txb *txb; struct libipw_txb *txb;
int i; int i;
txb = kmalloc(sizeof(struct ieee80211_txb) + (sizeof(u8 *) * nr_frags), txb = kmalloc(sizeof(struct libipw_txb) + (sizeof(u8 *) * nr_frags),
gfp_mask); gfp_mask);
if (!txb) if (!txb)
return NULL; return NULL;
memset(txb, 0, sizeof(struct ieee80211_txb)); memset(txb, 0, sizeof(struct libipw_txb));
txb->nr_frags = nr_frags; txb->nr_frags = nr_frags;
txb->frag_size = txb_size; txb->frag_size = txb_size;
...@@ -220,7 +220,7 @@ static struct ieee80211_txb *ieee80211_alloc_txb(int nr_frags, int txb_size, ...@@ -220,7 +220,7 @@ static struct ieee80211_txb *ieee80211_alloc_txb(int nr_frags, int txb_size,
return txb; return txb;
} }
static int ieee80211_classify(struct sk_buff *skb) static int libipw_classify(struct sk_buff *skb)
{ {
struct ethhdr *eth; struct ethhdr *eth;
struct iphdr *ip; struct iphdr *ip;
...@@ -252,11 +252,11 @@ static int ieee80211_classify(struct sk_buff *skb) ...@@ -252,11 +252,11 @@ static int ieee80211_classify(struct sk_buff *skb)
/* Incoming skb is converted to a txb which consists of /* Incoming skb is converted to a txb which consists of
* a block of 802.11 fragment packets (stored as skbs) */ * a block of 802.11 fragment packets (stored as skbs) */
int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev) int libipw_xmit(struct sk_buff *skb, struct net_device *dev)
{ {
struct ieee80211_device *ieee = netdev_priv(dev); struct libipw_device *ieee = netdev_priv(dev);
struct ieee80211_txb *txb = NULL; struct libipw_txb *txb = NULL;
struct ieee80211_hdr_3addrqos *frag_hdr; struct libipw_hdr_3addrqos *frag_hdr;
int i, bytes_per_frag, nr_frags, bytes_last_frag, frag_size, int i, bytes_per_frag, nr_frags, bytes_last_frag, frag_size,
rts_required; rts_required;
unsigned long flags; unsigned long flags;
...@@ -264,7 +264,7 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -264,7 +264,7 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev)
__be16 ether_type; __be16 ether_type;
int bytes, fc, hdr_len; int bytes, fc, hdr_len;
struct sk_buff *skb_frag; struct sk_buff *skb_frag;
struct ieee80211_hdr_3addrqos header = {/* Ensure zero initialized */ struct libipw_hdr_3addrqos header = {/* Ensure zero initialized */
.duration_id = 0, .duration_id = 0,
.seq_ctl = 0, .seq_ctl = 0,
.qos_ctl = 0 .qos_ctl = 0
...@@ -331,14 +331,14 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -331,14 +331,14 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev)
memcpy(header.addr2, src, ETH_ALEN); memcpy(header.addr2, src, ETH_ALEN);
memcpy(header.addr3, ieee->bssid, ETH_ALEN); memcpy(header.addr3, ieee->bssid, ETH_ALEN);
} }
hdr_len = IEEE80211_3ADDR_LEN; hdr_len = LIBIPW_3ADDR_LEN;
if (ieee->is_qos_active && ieee->is_qos_active(dev, skb)) { if (ieee->is_qos_active && ieee->is_qos_active(dev, skb)) {
fc |= IEEE80211_STYPE_QOS_DATA; fc |= IEEE80211_STYPE_QOS_DATA;
hdr_len += 2; hdr_len += 2;
skb->priority = ieee80211_classify(skb); skb->priority = libipw_classify(skb);
header.qos_ctl |= cpu_to_le16(skb->priority & IEEE80211_QCTL_TID); header.qos_ctl |= cpu_to_le16(skb->priority & LIBIPW_QCTL_TID);
} }
header.frame_ctl = cpu_to_le16(fc); header.frame_ctl = cpu_to_le16(fc);
...@@ -362,12 +362,12 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -362,12 +362,12 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev)
skb_reserve(skb_new, crypt->ops->extra_msdu_prefix_len); skb_reserve(skb_new, crypt->ops->extra_msdu_prefix_len);
memcpy(skb_put(skb_new, hdr_len), &header, hdr_len); memcpy(skb_put(skb_new, hdr_len), &header, hdr_len);
snapped = 1; snapped = 1;
ieee80211_copy_snap(skb_put(skb_new, SNAP_SIZE + sizeof(u16)), libipw_copy_snap(skb_put(skb_new, SNAP_SIZE + sizeof(u16)),
ether_type); ether_type);
skb_copy_from_linear_data(skb, skb_put(skb_new, skb->len), skb->len); skb_copy_from_linear_data(skb, skb_put(skb_new, skb->len), skb->len);
res = crypt->ops->encrypt_msdu(skb_new, hdr_len, crypt->priv); res = crypt->ops->encrypt_msdu(skb_new, hdr_len, crypt->priv);
if (res < 0) { if (res < 0) {
IEEE80211_ERROR("msdu encryption failed\n"); LIBIPW_ERROR("msdu encryption failed\n");
dev_kfree_skb_any(skb_new); dev_kfree_skb_any(skb_new);
goto failed; goto failed;
} }
...@@ -393,8 +393,8 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -393,8 +393,8 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev)
* for it when determining the amount of payload space. */ * for it when determining the amount of payload space. */
bytes_per_frag = frag_size - hdr_len; bytes_per_frag = frag_size - hdr_len;
if (ieee->config & if (ieee->config &
(CFG_IEEE80211_COMPUTE_FCS | CFG_IEEE80211_RESERVE_FCS)) (CFG_LIBIPW_COMPUTE_FCS | CFG_LIBIPW_RESERVE_FCS))
bytes_per_frag -= IEEE80211_FCS_LEN; bytes_per_frag -= LIBIPW_FCS_LEN;
/* Each fragment may need to have room for encryptiong /* Each fragment may need to have room for encryptiong
* pre/postfix */ * pre/postfix */
...@@ -417,14 +417,14 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -417,14 +417,14 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev)
} }
rts_required = (frag_size > ieee->rts rts_required = (frag_size > ieee->rts
&& ieee->config & CFG_IEEE80211_RTS); && ieee->config & CFG_LIBIPW_RTS);
if (rts_required) if (rts_required)
nr_frags++; nr_frags++;
/* When we allocate the TXB we allocate enough space for the reserve /* When we allocate the TXB we allocate enough space for the reserve
* and full fragment bytes (bytes_per_frag doesn't include prefix, * and full fragment bytes (bytes_per_frag doesn't include prefix,
* postfix, header, FCS, etc.) */ * postfix, header, FCS, etc.) */
txb = ieee80211_alloc_txb(nr_frags, frag_size, txb = libipw_alloc_txb(nr_frags, frag_size,
ieee->tx_headroom, GFP_ATOMIC); ieee->tx_headroom, GFP_ATOMIC);
if (unlikely(!txb)) { if (unlikely(!txb)) {
printk(KERN_WARNING "%s: Could not allocate TXB\n", printk(KERN_WARNING "%s: Could not allocate TXB\n",
...@@ -441,7 +441,7 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -441,7 +441,7 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev)
if (rts_required) { if (rts_required) {
skb_frag = txb->fragments[0]; skb_frag = txb->fragments[0];
frag_hdr = frag_hdr =
(struct ieee80211_hdr_3addrqos *)skb_put(skb_frag, hdr_len); (struct libipw_hdr_3addrqos *)skb_put(skb_frag, hdr_len);
/* /*
* Set header frame_ctl to the RTS. * Set header frame_ctl to the RTS.
...@@ -456,7 +456,7 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -456,7 +456,7 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev)
header.frame_ctl = cpu_to_le16(fc); header.frame_ctl = cpu_to_le16(fc);
if (ieee->config & if (ieee->config &
(CFG_IEEE80211_COMPUTE_FCS | CFG_IEEE80211_RESERVE_FCS)) (CFG_LIBIPW_COMPUTE_FCS | CFG_LIBIPW_RESERVE_FCS))
skb_put(skb_frag, 4); skb_put(skb_frag, 4);
txb->rts_included = 1; txb->rts_included = 1;
...@@ -472,7 +472,7 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -472,7 +472,7 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev)
crypt->ops->extra_mpdu_prefix_len); crypt->ops->extra_mpdu_prefix_len);
frag_hdr = frag_hdr =
(struct ieee80211_hdr_3addrqos *)skb_put(skb_frag, hdr_len); (struct libipw_hdr_3addrqos *)skb_put(skb_frag, hdr_len);
memcpy(frag_hdr, &header, hdr_len); memcpy(frag_hdr, &header, hdr_len);
/* If this is not the last fragment, then add the MOREFRAGS /* If this is not the last fragment, then add the MOREFRAGS
...@@ -487,7 +487,7 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -487,7 +487,7 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev)
} }
if (i == 0 && !snapped) { if (i == 0 && !snapped) {
ieee80211_copy_snap(skb_put libipw_copy_snap(skb_put
(skb_frag, SNAP_SIZE + sizeof(u16)), (skb_frag, SNAP_SIZE + sizeof(u16)),
ether_type); ether_type);
bytes -= SNAP_SIZE + sizeof(u16); bytes -= SNAP_SIZE + sizeof(u16);
...@@ -501,7 +501,7 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -501,7 +501,7 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev)
/* Encryption routine will move the header forward in order /* Encryption routine will move the header forward in order
* to insert the IV between the header and the payload */ * to insert the IV between the header and the payload */
if (host_encrypt) if (host_encrypt)
ieee80211_encrypt_fragment(ieee, skb_frag, hdr_len); libipw_encrypt_fragment(ieee, skb_frag, hdr_len);
else if (host_build_iv) { else if (host_build_iv) {
atomic_inc(&crypt->refcnt); atomic_inc(&crypt->refcnt);
if (crypt->ops->build_iv) if (crypt->ops->build_iv)
...@@ -513,7 +513,7 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -513,7 +513,7 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev)
} }
if (ieee->config & if (ieee->config &
(CFG_IEEE80211_COMPUTE_FCS | CFG_IEEE80211_RESERVE_FCS)) (CFG_LIBIPW_COMPUTE_FCS | CFG_LIBIPW_RESERVE_FCS))
skb_put(skb_frag, 4); skb_put(skb_frag, 4);
} }
...@@ -530,7 +530,7 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -530,7 +530,7 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev)
return NETDEV_TX_OK; return NETDEV_TX_OK;
} }
ieee80211_txb_free(txb); libipw_txb_free(txb);
} }
return NETDEV_TX_OK; return NETDEV_TX_OK;
...@@ -541,6 +541,6 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -541,6 +541,6 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev)
dev->stats.tx_errors++; dev->stats.tx_errors++;
return NETDEV_TX_BUSY; return NETDEV_TX_BUSY;
} }
EXPORT_SYMBOL(ieee80211_xmit); EXPORT_SYMBOL(libipw_xmit);
EXPORT_SYMBOL(ieee80211_txb_free); EXPORT_SYMBOL(libipw_txb_free);
This diff is collapsed.
...@@ -416,13 +416,13 @@ struct iw_spy_data ...@@ -416,13 +416,13 @@ struct iw_spy_data
* data (i.e. valid as long as struct net_device exist, same locking rules). * data (i.e. valid as long as struct net_device exist, same locking rules).
*/ */
/* Forward declaration */ /* Forward declaration */
struct ieee80211_device; struct libipw_device;
/* The struct */ /* The struct */
struct iw_public_data { struct iw_public_data {
/* Driver enhanced spy support */ /* Driver enhanced spy support */
struct iw_spy_data * spy_data; struct iw_spy_data * spy_data;
/* Structure managed by the in-kernel IEEE 802.11 layer */ /* Legacy structure managed by the ipw2x00-specific IEEE 802.11 layer */
struct ieee80211_device * ieee80211; struct libipw_device * libipw;
}; };
/**************************** PROTOTYPES ****************************/ /**************************** PROTOTYPES ****************************/
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment