Remove WIRELESS_EXT ifdefs from several wireless drivers.
This commit is contained in:
parent
596ff2e7c8
commit
e2e9650725
|
@ -1046,7 +1046,6 @@ static WifiCtlHdr wifictlhdr8023 = {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifdef WIRELESS_EXT
|
|
||||||
// Frequency list (map channels to frequencies)
|
// Frequency list (map channels to frequencies)
|
||||||
static const long frequency_list[] = { 2412, 2417, 2422, 2427, 2432, 2437, 2442,
|
static const long frequency_list[] = { 2412, 2417, 2422, 2427, 2432, 2437, 2442,
|
||||||
2447, 2452, 2457, 2462, 2467, 2472, 2484 };
|
2447, 2452, 2457, 2462, 2467, 2472, 2484 };
|
||||||
|
@ -1067,7 +1066,6 @@ typedef struct wep_key_t {
|
||||||
|
|
||||||
/* List of Wireless Handlers (new API) */
|
/* List of Wireless Handlers (new API) */
|
||||||
static const struct iw_handler_def airo_handler_def;
|
static const struct iw_handler_def airo_handler_def;
|
||||||
#endif /* WIRELESS_EXT */
|
|
||||||
|
|
||||||
static const char version[] = "airo.c 0.6 (Ben Reed & Javier Achirica)";
|
static const char version[] = "airo.c 0.6 (Ben Reed & Javier Achirica)";
|
||||||
|
|
||||||
|
@ -1110,10 +1108,8 @@ static irqreturn_t airo_interrupt( int irq, void* dev_id, struct pt_regs
|
||||||
static int airo_thread(void *data);
|
static int airo_thread(void *data);
|
||||||
static void timer_func( struct net_device *dev );
|
static void timer_func( struct net_device *dev );
|
||||||
static int airo_ioctl(struct net_device *dev, struct ifreq *rq, int cmd);
|
static int airo_ioctl(struct net_device *dev, struct ifreq *rq, int cmd);
|
||||||
#ifdef WIRELESS_EXT
|
|
||||||
static struct iw_statistics *airo_get_wireless_stats (struct net_device *dev);
|
static struct iw_statistics *airo_get_wireless_stats (struct net_device *dev);
|
||||||
static void airo_read_wireless_stats (struct airo_info *local);
|
static void airo_read_wireless_stats (struct airo_info *local);
|
||||||
#endif /* WIRELESS_EXT */
|
|
||||||
#ifdef CISCO_EXT
|
#ifdef CISCO_EXT
|
||||||
static int readrids(struct net_device *dev, aironet_ioctl *comp);
|
static int readrids(struct net_device *dev, aironet_ioctl *comp);
|
||||||
static int writerids(struct net_device *dev, aironet_ioctl *comp);
|
static int writerids(struct net_device *dev, aironet_ioctl *comp);
|
||||||
|
@ -1187,12 +1183,10 @@ struct airo_info {
|
||||||
int fid;
|
int fid;
|
||||||
} xmit, xmit11;
|
} xmit, xmit11;
|
||||||
struct net_device *wifidev;
|
struct net_device *wifidev;
|
||||||
#ifdef WIRELESS_EXT
|
|
||||||
struct iw_statistics wstats; // wireless stats
|
struct iw_statistics wstats; // wireless stats
|
||||||
unsigned long scan_timestamp; /* Time started to scan */
|
unsigned long scan_timestamp; /* Time started to scan */
|
||||||
struct iw_spy_data spy_data;
|
struct iw_spy_data spy_data;
|
||||||
struct iw_public_data wireless_data;
|
struct iw_public_data wireless_data;
|
||||||
#endif /* WIRELESS_EXT */
|
|
||||||
#ifdef MICSUPPORT
|
#ifdef MICSUPPORT
|
||||||
/* MIC stuff */
|
/* MIC stuff */
|
||||||
struct crypto_tfm *tfm;
|
struct crypto_tfm *tfm;
|
||||||
|
@ -2647,9 +2641,7 @@ static void wifi_setup(struct net_device *dev)
|
||||||
dev->get_stats = &airo_get_stats;
|
dev->get_stats = &airo_get_stats;
|
||||||
dev->set_mac_address = &airo_set_mac_address;
|
dev->set_mac_address = &airo_set_mac_address;
|
||||||
dev->do_ioctl = &airo_ioctl;
|
dev->do_ioctl = &airo_ioctl;
|
||||||
#ifdef WIRELESS_EXT
|
|
||||||
dev->wireless_handlers = &airo_handler_def;
|
dev->wireless_handlers = &airo_handler_def;
|
||||||
#endif /* WIRELESS_EXT */
|
|
||||||
dev->change_mtu = &airo_change_mtu;
|
dev->change_mtu = &airo_change_mtu;
|
||||||
dev->open = &airo_open;
|
dev->open = &airo_open;
|
||||||
dev->stop = &airo_close;
|
dev->stop = &airo_close;
|
||||||
|
@ -2675,9 +2667,7 @@ static struct net_device *init_wifidev(struct airo_info *ai,
|
||||||
dev->priv = ethdev->priv;
|
dev->priv = ethdev->priv;
|
||||||
dev->irq = ethdev->irq;
|
dev->irq = ethdev->irq;
|
||||||
dev->base_addr = ethdev->base_addr;
|
dev->base_addr = ethdev->base_addr;
|
||||||
#ifdef WIRELESS_EXT
|
|
||||||
dev->wireless_data = ethdev->wireless_data;
|
dev->wireless_data = ethdev->wireless_data;
|
||||||
#endif /* WIRELESS_EXT */
|
|
||||||
memcpy(dev->dev_addr, ethdev->dev_addr, dev->addr_len);
|
memcpy(dev->dev_addr, ethdev->dev_addr, dev->addr_len);
|
||||||
err = register_netdev(dev);
|
err = register_netdev(dev);
|
||||||
if (err<0) {
|
if (err<0) {
|
||||||
|
@ -2755,11 +2745,9 @@ static struct net_device *_init_airo_card( unsigned short irq, int port,
|
||||||
dev->set_multicast_list = &airo_set_multicast_list;
|
dev->set_multicast_list = &airo_set_multicast_list;
|
||||||
dev->set_mac_address = &airo_set_mac_address;
|
dev->set_mac_address = &airo_set_mac_address;
|
||||||
dev->do_ioctl = &airo_ioctl;
|
dev->do_ioctl = &airo_ioctl;
|
||||||
#ifdef WIRELESS_EXT
|
|
||||||
dev->wireless_handlers = &airo_handler_def;
|
dev->wireless_handlers = &airo_handler_def;
|
||||||
ai->wireless_data.spy_data = &ai->spy_data;
|
ai->wireless_data.spy_data = &ai->spy_data;
|
||||||
dev->wireless_data = &ai->wireless_data;
|
dev->wireless_data = &ai->wireless_data;
|
||||||
#endif /* WIRELESS_EXT */
|
|
||||||
dev->change_mtu = &airo_change_mtu;
|
dev->change_mtu = &airo_change_mtu;
|
||||||
dev->open = &airo_open;
|
dev->open = &airo_open;
|
||||||
dev->stop = &airo_close;
|
dev->stop = &airo_close;
|
||||||
|
@ -5598,7 +5586,6 @@ static void __exit airo_cleanup_module( void )
|
||||||
remove_proc_entry("aironet", proc_root_driver);
|
remove_proc_entry("aironet", proc_root_driver);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef WIRELESS_EXT
|
|
||||||
/*
|
/*
|
||||||
* Initial Wireless Extension code for Aironet driver by :
|
* Initial Wireless Extension code for Aironet driver by :
|
||||||
* Jean Tourrilhes <jt@hpl.hp.com> - HPL - 17 November 00
|
* Jean Tourrilhes <jt@hpl.hp.com> - HPL - 17 November 00
|
||||||
|
@ -7107,8 +7094,6 @@ static const struct iw_handler_def airo_handler_def =
|
||||||
.get_wireless_stats = airo_get_wireless_stats,
|
.get_wireless_stats = airo_get_wireless_stats,
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* WIRELESS_EXT */
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This defines the configuration part of the Wireless Extensions
|
* This defines the configuration part of the Wireless Extensions
|
||||||
* Note : irq and spinlock protection will occur in the subroutines
|
* Note : irq and spinlock protection will occur in the subroutines
|
||||||
|
@ -7187,7 +7172,6 @@ static int airo_ioctl(struct net_device *dev, struct ifreq *rq, int cmd)
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef WIRELESS_EXT
|
|
||||||
/*
|
/*
|
||||||
* Get the Wireless stats out of the driver
|
* Get the Wireless stats out of the driver
|
||||||
* Note : irq and spinlock protection will occur in the subroutines
|
* Note : irq and spinlock protection will occur in the subroutines
|
||||||
|
@ -7260,7 +7244,6 @@ static struct iw_statistics *airo_get_wireless_stats(struct net_device *dev)
|
||||||
|
|
||||||
return &local->wstats;
|
return &local->wstats;
|
||||||
}
|
}
|
||||||
#endif /* WIRELESS_EXT */
|
|
||||||
|
|
||||||
#ifdef CISCO_EXT
|
#ifdef CISCO_EXT
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -57,9 +57,7 @@
|
||||||
#include <linux/bitops.h>
|
#include <linux/bitops.h>
|
||||||
#ifdef CONFIG_NET_RADIO
|
#ifdef CONFIG_NET_RADIO
|
||||||
#include <linux/wireless.h>
|
#include <linux/wireless.h>
|
||||||
#if WIRELESS_EXT > 12
|
|
||||||
#include <net/iw_handler.h>
|
#include <net/iw_handler.h>
|
||||||
#endif /* WIRELESS_EXT > 12 */
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <pcmcia/cs_types.h>
|
#include <pcmcia/cs_types.h>
|
||||||
|
@ -225,10 +223,7 @@ static void update_stats(struct net_device *dev);
|
||||||
static struct net_device_stats *netwave_get_stats(struct net_device *dev);
|
static struct net_device_stats *netwave_get_stats(struct net_device *dev);
|
||||||
|
|
||||||
/* Wireless extensions */
|
/* Wireless extensions */
|
||||||
#ifdef WIRELESS_EXT
|
|
||||||
static struct iw_statistics* netwave_get_wireless_stats(struct net_device *dev);
|
static struct iw_statistics* netwave_get_wireless_stats(struct net_device *dev);
|
||||||
#endif
|
|
||||||
static int netwave_ioctl(struct net_device *, struct ifreq *, int);
|
|
||||||
|
|
||||||
static void set_multicast_list(struct net_device *dev);
|
static void set_multicast_list(struct net_device *dev);
|
||||||
|
|
||||||
|
@ -260,26 +255,7 @@ static dev_link_t *dev_list;
|
||||||
because they generally can't be allocated dynamically.
|
because they generally can't be allocated dynamically.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#if WIRELESS_EXT <= 12
|
|
||||||
/* Wireless extensions backward compatibility */
|
|
||||||
|
|
||||||
/* Part of iw_handler prototype we need */
|
|
||||||
struct iw_request_info
|
|
||||||
{
|
|
||||||
__u16 cmd; /* Wireless Extension command */
|
|
||||||
__u16 flags; /* More to come ;-) */
|
|
||||||
};
|
|
||||||
|
|
||||||
/* Wireless Extension Backward compatibility - Jean II
|
|
||||||
* If the new wireless device private ioctl range is not defined,
|
|
||||||
* default to standard device private ioctl range */
|
|
||||||
#ifndef SIOCIWFIRSTPRIV
|
|
||||||
#define SIOCIWFIRSTPRIV SIOCDEVPRIVATE
|
|
||||||
#endif /* SIOCIWFIRSTPRIV */
|
|
||||||
|
|
||||||
#else /* WIRELESS_EXT <= 12 */
|
|
||||||
static const struct iw_handler_def netwave_handler_def;
|
static const struct iw_handler_def netwave_handler_def;
|
||||||
#endif /* WIRELESS_EXT <= 12 */
|
|
||||||
|
|
||||||
#define SIOCGIPSNAP SIOCIWFIRSTPRIV + 1 /* Site Survey Snapshot */
|
#define SIOCGIPSNAP SIOCIWFIRSTPRIV + 1 /* Site Survey Snapshot */
|
||||||
|
|
||||||
|
@ -319,9 +295,7 @@ typedef struct netwave_private {
|
||||||
struct timer_list watchdog; /* To avoid blocking state */
|
struct timer_list watchdog; /* To avoid blocking state */
|
||||||
struct site_survey nss;
|
struct site_survey nss;
|
||||||
struct net_device_stats stats;
|
struct net_device_stats stats;
|
||||||
#ifdef WIRELESS_EXT
|
|
||||||
struct iw_statistics iw_stats; /* Wireless stats */
|
struct iw_statistics iw_stats; /* Wireless stats */
|
||||||
#endif
|
|
||||||
} netwave_private;
|
} netwave_private;
|
||||||
|
|
||||||
#ifdef NETWAVE_STATS
|
#ifdef NETWAVE_STATS
|
||||||
|
@ -353,7 +327,6 @@ static inline void wait_WOC(unsigned int iobase)
|
||||||
while ((inb(iobase + NETWAVE_REG_ASR) & 0x8) != 0x8) ;
|
while ((inb(iobase + NETWAVE_REG_ASR) & 0x8) != 0x8) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef WIRELESS_EXT
|
|
||||||
static void netwave_snapshot(netwave_private *priv, u_char __iomem *ramBase,
|
static void netwave_snapshot(netwave_private *priv, u_char __iomem *ramBase,
|
||||||
kio_addr_t iobase) {
|
kio_addr_t iobase) {
|
||||||
u_short resultBuffer;
|
u_short resultBuffer;
|
||||||
|
@ -376,9 +349,7 @@ static void netwave_snapshot(netwave_private *priv, u_char __iomem *ramBase,
|
||||||
sizeof(struct site_survey));
|
sizeof(struct site_survey));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef WIRELESS_EXT
|
|
||||||
/*
|
/*
|
||||||
* Function netwave_get_wireless_stats (dev)
|
* Function netwave_get_wireless_stats (dev)
|
||||||
*
|
*
|
||||||
|
@ -411,7 +382,6 @@ static struct iw_statistics *netwave_get_wireless_stats(struct net_device *dev)
|
||||||
|
|
||||||
return &priv->iw_stats;
|
return &priv->iw_stats;
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Function netwave_attach (void)
|
* Function netwave_attach (void)
|
||||||
|
@ -471,13 +441,7 @@ static dev_link_t *netwave_attach(void)
|
||||||
dev->get_stats = &netwave_get_stats;
|
dev->get_stats = &netwave_get_stats;
|
||||||
dev->set_multicast_list = &set_multicast_list;
|
dev->set_multicast_list = &set_multicast_list;
|
||||||
/* wireless extensions */
|
/* wireless extensions */
|
||||||
#if WIRELESS_EXT <= 16
|
|
||||||
dev->get_wireless_stats = &netwave_get_wireless_stats;
|
|
||||||
#endif /* WIRELESS_EXT <= 16 */
|
|
||||||
#if WIRELESS_EXT > 12
|
|
||||||
dev->wireless_handlers = (struct iw_handler_def *)&netwave_handler_def;
|
dev->wireless_handlers = (struct iw_handler_def *)&netwave_handler_def;
|
||||||
#endif /* WIRELESS_EXT > 12 */
|
|
||||||
dev->do_ioctl = &netwave_ioctl;
|
|
||||||
|
|
||||||
dev->tx_timeout = &netwave_watchdog;
|
dev->tx_timeout = &netwave_watchdog;
|
||||||
dev->watchdog_timeo = TX_TIMEOUT;
|
dev->watchdog_timeo = TX_TIMEOUT;
|
||||||
|
@ -576,13 +540,8 @@ static int netwave_set_nwid(struct net_device *dev,
|
||||||
/* Disable interrupts & save flags */
|
/* Disable interrupts & save flags */
|
||||||
spin_lock_irqsave(&priv->spinlock, flags);
|
spin_lock_irqsave(&priv->spinlock, flags);
|
||||||
|
|
||||||
#if WIRELESS_EXT > 8
|
|
||||||
if(!wrqu->nwid.disabled) {
|
if(!wrqu->nwid.disabled) {
|
||||||
domain = wrqu->nwid.value;
|
domain = wrqu->nwid.value;
|
||||||
#else /* WIRELESS_EXT > 8 */
|
|
||||||
if(wrqu->nwid.on) {
|
|
||||||
domain = wrqu->nwid.nwid;
|
|
||||||
#endif /* WIRELESS_EXT > 8 */
|
|
||||||
printk( KERN_DEBUG "Setting domain to 0x%x%02x\n",
|
printk( KERN_DEBUG "Setting domain to 0x%x%02x\n",
|
||||||
(domain >> 8) & 0x01, domain & 0xff);
|
(domain >> 8) & 0x01, domain & 0xff);
|
||||||
wait_WOC(iobase);
|
wait_WOC(iobase);
|
||||||
|
@ -606,15 +565,9 @@ static int netwave_get_nwid(struct net_device *dev,
|
||||||
union iwreq_data *wrqu,
|
union iwreq_data *wrqu,
|
||||||
char *extra)
|
char *extra)
|
||||||
{
|
{
|
||||||
#if WIRELESS_EXT > 8
|
|
||||||
wrqu->nwid.value = domain;
|
wrqu->nwid.value = domain;
|
||||||
wrqu->nwid.disabled = 0;
|
wrqu->nwid.disabled = 0;
|
||||||
wrqu->nwid.fixed = 1;
|
wrqu->nwid.fixed = 1;
|
||||||
#else /* WIRELESS_EXT > 8 */
|
|
||||||
wrqu->nwid.nwid = domain;
|
|
||||||
wrqu->nwid.on = 1;
|
|
||||||
#endif /* WIRELESS_EXT > 8 */
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -657,17 +610,11 @@ static int netwave_get_scramble(struct net_device *dev,
|
||||||
{
|
{
|
||||||
key[1] = scramble_key & 0xff;
|
key[1] = scramble_key & 0xff;
|
||||||
key[0] = (scramble_key>>8) & 0xff;
|
key[0] = (scramble_key>>8) & 0xff;
|
||||||
#if WIRELESS_EXT > 8
|
|
||||||
wrqu->encoding.flags = IW_ENCODE_ENABLED;
|
wrqu->encoding.flags = IW_ENCODE_ENABLED;
|
||||||
wrqu->encoding.length = 2;
|
wrqu->encoding.length = 2;
|
||||||
#else /* WIRELESS_EXT > 8 */
|
|
||||||
wrqu->encoding.method = 1;
|
|
||||||
#endif /* WIRELESS_EXT > 8 */
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if WIRELESS_EXT > 8
|
|
||||||
/*
|
/*
|
||||||
* Wireless Handler : get mode
|
* Wireless Handler : get mode
|
||||||
*/
|
*/
|
||||||
|
@ -683,7 +630,6 @@ static int netwave_get_mode(struct net_device *dev,
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
#endif /* WIRELESS_EXT > 8 */
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Wireless Handler : get range info
|
* Wireless Handler : get range info
|
||||||
|
@ -702,11 +648,9 @@ static int netwave_get_range(struct net_device *dev,
|
||||||
/* Set all the info we don't care or don't know about to zero */
|
/* Set all the info we don't care or don't know about to zero */
|
||||||
memset(range, 0, sizeof(struct iw_range));
|
memset(range, 0, sizeof(struct iw_range));
|
||||||
|
|
||||||
#if WIRELESS_EXT > 10
|
|
||||||
/* Set the Wireless Extension versions */
|
/* Set the Wireless Extension versions */
|
||||||
range->we_version_compiled = WIRELESS_EXT;
|
range->we_version_compiled = WIRELESS_EXT;
|
||||||
range->we_version_source = 9; /* Nothing for us in v10 and v11 */
|
range->we_version_source = 9; /* Nothing for us in v10 and v11 */
|
||||||
#endif /* WIRELESS_EXT > 10 */
|
|
||||||
|
|
||||||
/* Set information in the range struct */
|
/* Set information in the range struct */
|
||||||
range->throughput = 450 * 1000; /* don't argue on this ! */
|
range->throughput = 450 * 1000; /* don't argue on this ! */
|
||||||
|
@ -720,16 +664,12 @@ static int netwave_get_range(struct net_device *dev,
|
||||||
range->max_qual.level = 255;
|
range->max_qual.level = 255;
|
||||||
range->max_qual.noise = 0;
|
range->max_qual.noise = 0;
|
||||||
|
|
||||||
#if WIRELESS_EXT > 7
|
|
||||||
range->num_bitrates = 1;
|
range->num_bitrates = 1;
|
||||||
range->bitrate[0] = 1000000; /* 1 Mb/s */
|
range->bitrate[0] = 1000000; /* 1 Mb/s */
|
||||||
#endif /* WIRELESS_EXT > 7 */
|
|
||||||
|
|
||||||
#if WIRELESS_EXT > 8
|
|
||||||
range->encoding_size[0] = 2; /* 16 bits scrambling */
|
range->encoding_size[0] = 2; /* 16 bits scrambling */
|
||||||
range->num_encoding_sizes = 1;
|
range->num_encoding_sizes = 1;
|
||||||
range->max_encoding_tokens = 1; /* Only one key possible */
|
range->max_encoding_tokens = 1; /* Only one key possible */
|
||||||
#endif /* WIRELESS_EXT > 8 */
|
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
@ -775,8 +715,6 @@ static const struct iw_priv_args netwave_private_args[] = {
|
||||||
"getsitesurvey" },
|
"getsitesurvey" },
|
||||||
};
|
};
|
||||||
|
|
||||||
#if WIRELESS_EXT > 12
|
|
||||||
|
|
||||||
static const iw_handler netwave_handler[] =
|
static const iw_handler netwave_handler[] =
|
||||||
{
|
{
|
||||||
NULL, /* SIOCSIWNAME */
|
NULL, /* SIOCSIWNAME */
|
||||||
|
@ -839,131 +777,8 @@ static const struct iw_handler_def netwave_handler_def =
|
||||||
.standard = (iw_handler *) netwave_handler,
|
.standard = (iw_handler *) netwave_handler,
|
||||||
.private = (iw_handler *) netwave_private_handler,
|
.private = (iw_handler *) netwave_private_handler,
|
||||||
.private_args = (struct iw_priv_args *) netwave_private_args,
|
.private_args = (struct iw_priv_args *) netwave_private_args,
|
||||||
#if WIRELESS_EXT > 16
|
|
||||||
.get_wireless_stats = netwave_get_wireless_stats,
|
.get_wireless_stats = netwave_get_wireless_stats,
|
||||||
#endif /* WIRELESS_EXT > 16 */
|
|
||||||
};
|
};
|
||||||
#endif /* WIRELESS_EXT > 12 */
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Function netwave_ioctl (dev, rq, cmd)
|
|
||||||
*
|
|
||||||
* Perform ioctl : config & info stuff
|
|
||||||
* This is the stuff that are treated the wireless extensions (iwconfig)
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
static int netwave_ioctl(struct net_device *dev, /* ioctl device */
|
|
||||||
struct ifreq *rq, /* Data passed */
|
|
||||||
int cmd) /* Ioctl number */
|
|
||||||
{
|
|
||||||
int ret = 0;
|
|
||||||
#ifdef WIRELESS_EXT
|
|
||||||
#if WIRELESS_EXT <= 12
|
|
||||||
struct iwreq *wrq = (struct iwreq *) rq;
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
DEBUG(0, "%s: ->netwave_ioctl(cmd=0x%X)\n", dev->name, cmd);
|
|
||||||
|
|
||||||
/* Look what is the request */
|
|
||||||
switch(cmd) {
|
|
||||||
/* --------------- WIRELESS EXTENSIONS --------------- */
|
|
||||||
#ifdef WIRELESS_EXT
|
|
||||||
#if WIRELESS_EXT <= 12
|
|
||||||
case SIOCGIWNAME:
|
|
||||||
netwave_get_name(dev, NULL, &(wrq->u), NULL);
|
|
||||||
break;
|
|
||||||
case SIOCSIWNWID:
|
|
||||||
ret = netwave_set_nwid(dev, NULL, &(wrq->u), NULL);
|
|
||||||
break;
|
|
||||||
case SIOCGIWNWID:
|
|
||||||
ret = netwave_get_nwid(dev, NULL, &(wrq->u), NULL);
|
|
||||||
break;
|
|
||||||
#if WIRELESS_EXT > 8 /* Note : The API did change... */
|
|
||||||
case SIOCGIWENCODE:
|
|
||||||
/* Get scramble key */
|
|
||||||
if(wrq->u.encoding.pointer != (caddr_t) 0)
|
|
||||||
{
|
|
||||||
char key[2];
|
|
||||||
ret = netwave_get_scramble(dev, NULL, &(wrq->u), key);
|
|
||||||
if(copy_to_user(wrq->u.encoding.pointer, key, 2))
|
|
||||||
ret = -EFAULT;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case SIOCSIWENCODE:
|
|
||||||
/* Set scramble key */
|
|
||||||
if(wrq->u.encoding.pointer != (caddr_t) 0)
|
|
||||||
{
|
|
||||||
char key[2];
|
|
||||||
if(copy_from_user(key, wrq->u.encoding.pointer, 2))
|
|
||||||
{
|
|
||||||
ret = -EFAULT;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
ret = netwave_set_scramble(dev, NULL, &(wrq->u), key);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case SIOCGIWMODE:
|
|
||||||
/* Mode of operation */
|
|
||||||
ret = netwave_get_mode(dev, NULL, &(wrq->u), NULL);
|
|
||||||
break;
|
|
||||||
#else /* WIRELESS_EXT > 8 */
|
|
||||||
case SIOCGIWENCODE:
|
|
||||||
/* Get scramble key */
|
|
||||||
ret = netwave_get_scramble(dev, NULL, &(wrq->u),
|
|
||||||
(char *) &wrq->u.encoding.code);
|
|
||||||
break;
|
|
||||||
case SIOCSIWENCODE:
|
|
||||||
/* Set scramble key */
|
|
||||||
ret = netwave_set_scramble(dev, NULL, &(wrq->u),
|
|
||||||
(char *) &wrq->u.encoding.code);
|
|
||||||
break;
|
|
||||||
#endif /* WIRELESS_EXT > 8 */
|
|
||||||
case SIOCGIWRANGE:
|
|
||||||
/* Basic checking... */
|
|
||||||
if(wrq->u.data.pointer != (caddr_t) 0) {
|
|
||||||
struct iw_range range;
|
|
||||||
ret = netwave_get_range(dev, NULL, &(wrq->u), (char *) &range);
|
|
||||||
if (copy_to_user(wrq->u.data.pointer, &range,
|
|
||||||
sizeof(struct iw_range)))
|
|
||||||
ret = -EFAULT;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case SIOCGIWPRIV:
|
|
||||||
/* Basic checking... */
|
|
||||||
if(wrq->u.data.pointer != (caddr_t) 0) {
|
|
||||||
/* Set the number of ioctl available */
|
|
||||||
wrq->u.data.length = sizeof(netwave_private_args) / sizeof(netwave_private_args[0]);
|
|
||||||
|
|
||||||
/* Copy structure to the user buffer */
|
|
||||||
if(copy_to_user(wrq->u.data.pointer,
|
|
||||||
(u_char *) netwave_private_args,
|
|
||||||
sizeof(netwave_private_args)))
|
|
||||||
ret = -EFAULT;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case SIOCGIPSNAP:
|
|
||||||
if(wrq->u.data.pointer != (caddr_t) 0) {
|
|
||||||
char buffer[sizeof( struct site_survey)];
|
|
||||||
ret = netwave_get_snap(dev, NULL, &(wrq->u), buffer);
|
|
||||||
/* Copy structure to the user buffer */
|
|
||||||
if(copy_to_user(wrq->u.data.pointer,
|
|
||||||
buffer,
|
|
||||||
sizeof( struct site_survey)))
|
|
||||||
{
|
|
||||||
printk(KERN_DEBUG "Bad buffer!\n");
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
#endif /* WIRELESS_EXT <= 12 */
|
|
||||||
#endif /* WIRELESS_EXT */
|
|
||||||
default:
|
|
||||||
ret = -EOPNOTSUPP;
|
|
||||||
}
|
|
||||||
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Function netwave_pcmcia_config (link)
|
* Function netwave_pcmcia_config (link)
|
||||||
|
|
|
@ -462,14 +462,12 @@ prism54_get_range(struct net_device *ndev, struct iw_request_info *info,
|
||||||
/* txpower is supported in dBm's */
|
/* txpower is supported in dBm's */
|
||||||
range->txpower_capa = IW_TXPOW_DBM;
|
range->txpower_capa = IW_TXPOW_DBM;
|
||||||
|
|
||||||
#if WIRELESS_EXT > 16
|
|
||||||
/* Event capability (kernel + driver) */
|
/* Event capability (kernel + driver) */
|
||||||
range->event_capa[0] = (IW_EVENT_CAPA_K_0 |
|
range->event_capa[0] = (IW_EVENT_CAPA_K_0 |
|
||||||
IW_EVENT_CAPA_MASK(SIOCGIWTHRSPY) |
|
IW_EVENT_CAPA_MASK(SIOCGIWTHRSPY) |
|
||||||
IW_EVENT_CAPA_MASK(SIOCGIWAP));
|
IW_EVENT_CAPA_MASK(SIOCGIWAP));
|
||||||
range->event_capa[1] = IW_EVENT_CAPA_K_1;
|
range->event_capa[1] = IW_EVENT_CAPA_K_1;
|
||||||
range->event_capa[4] = IW_EVENT_CAPA_MASK(IWEVCUSTOM);
|
range->event_capa[4] = IW_EVENT_CAPA_MASK(IWEVCUSTOM);
|
||||||
#endif /* WIRELESS_EXT > 16 */
|
|
||||||
|
|
||||||
if (islpci_get_state(priv) < PRV_STATE_INIT)
|
if (islpci_get_state(priv) < PRV_STATE_INIT)
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -693,14 +691,13 @@ prism54_get_scan(struct net_device *ndev, struct iw_request_info *info,
|
||||||
extra + dwrq->length,
|
extra + dwrq->length,
|
||||||
&(bsslist->bsslist[i]),
|
&(bsslist->bsslist[i]),
|
||||||
noise);
|
noise);
|
||||||
#if WIRELESS_EXT > 16
|
|
||||||
/* Check if there is space for one more entry */
|
/* Check if there is space for one more entry */
|
||||||
if((extra + dwrq->length - current_ev) <= IW_EV_ADDR_LEN) {
|
if((extra + dwrq->length - current_ev) <= IW_EV_ADDR_LEN) {
|
||||||
/* Ask user space to try again with a bigger buffer */
|
/* Ask user space to try again with a bigger buffer */
|
||||||
rvalue = -E2BIG;
|
rvalue = -E2BIG;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
#endif /* WIRELESS_EXT > 16 */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
kfree(bsslist);
|
kfree(bsslist);
|
||||||
|
@ -2727,12 +2724,7 @@ const struct iw_handler_def prism54_handler_def = {
|
||||||
.standard = (iw_handler *) prism54_handler,
|
.standard = (iw_handler *) prism54_handler,
|
||||||
.private = (iw_handler *) prism54_private_handler,
|
.private = (iw_handler *) prism54_private_handler,
|
||||||
.private_args = (struct iw_priv_args *) prism54_private_args,
|
.private_args = (struct iw_priv_args *) prism54_private_args,
|
||||||
#if WIRELESS_EXT > 16
|
|
||||||
.get_wireless_stats = prism54_get_wireless_stats,
|
.get_wireless_stats = prism54_get_wireless_stats,
|
||||||
#endif /* WIRELESS_EXT > 16 */
|
|
||||||
#if WIRELESS_EXT == 16
|
|
||||||
.spy_offset = offsetof(islpci_private, spy_data),
|
|
||||||
#endif /* WIRELESS_EXT == 16 */
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/* For wpa_supplicant */
|
/* For wpa_supplicant */
|
||||||
|
|
|
@ -837,13 +837,9 @@ islpci_setup(struct pci_dev *pdev)
|
||||||
priv->ndev->type = (priv->iw_mode == IW_MODE_MONITOR) ?
|
priv->ndev->type = (priv->iw_mode == IW_MODE_MONITOR) ?
|
||||||
priv->monitor_type : ARPHRD_ETHER;
|
priv->monitor_type : ARPHRD_ETHER;
|
||||||
|
|
||||||
#if WIRELESS_EXT > 16
|
|
||||||
/* Add pointers to enable iwspy support. */
|
/* Add pointers to enable iwspy support. */
|
||||||
priv->wireless_data.spy_data = &priv->spy_data;
|
priv->wireless_data.spy_data = &priv->spy_data;
|
||||||
ndev->wireless_data = &priv->wireless_data;
|
ndev->wireless_data = &priv->wireless_data;
|
||||||
#else /* WIRELESS_EXT > 16 */
|
|
||||||
ndev->get_wireless_stats = &prism54_get_wireless_stats;
|
|
||||||
#endif /* WIRELESS_EXT > 16 */
|
|
||||||
|
|
||||||
/* save the start and end address of the PCI memory area */
|
/* save the start and end address of the PCI memory area */
|
||||||
ndev->mem_start = (unsigned long) priv->device_base;
|
ndev->mem_start = (unsigned long) priv->device_base;
|
||||||
|
|
|
@ -100,9 +100,7 @@ typedef struct {
|
||||||
|
|
||||||
struct iw_spy_data spy_data; /* iwspy support */
|
struct iw_spy_data spy_data; /* iwspy support */
|
||||||
|
|
||||||
#if WIRELESS_EXT > 16
|
|
||||||
struct iw_public_data wireless_data;
|
struct iw_public_data wireless_data;
|
||||||
#endif /* WIRELESS_EXT > 16 */
|
|
||||||
|
|
||||||
int monitor_type; /* ARPHRD_IEEE80211 or ARPHRD_IEEE80211_PRISM */
|
int monitor_type; /* ARPHRD_IEEE80211 or ARPHRD_IEEE80211_PRISM */
|
||||||
|
|
||||||
|
|
|
@ -430,7 +430,6 @@ static void fee_read(unsigned long ioaddr, /* I/O port of the card */
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef WIRELESS_EXT /* if the wireless extension exists in the kernel */
|
|
||||||
|
|
||||||
/*------------------------------------------------------------------*/
|
/*------------------------------------------------------------------*/
|
||||||
/*
|
/*
|
||||||
|
@ -514,7 +513,6 @@ static void fee_write(unsigned long ioaddr, /* I/O port of the card */
|
||||||
fee_wait(ioaddr, 10, 100);
|
fee_wait(ioaddr, 10, 100);
|
||||||
#endif /* EEPROM_IS_PROTECTED */
|
#endif /* EEPROM_IS_PROTECTED */
|
||||||
}
|
}
|
||||||
#endif /* WIRELESS_EXT */
|
|
||||||
|
|
||||||
/************************ I82586 SUBROUTINES *************************/
|
/************************ I82586 SUBROUTINES *************************/
|
||||||
/*
|
/*
|
||||||
|
@ -973,11 +971,9 @@ static void wv_mmc_show(struct net_device * dev)
|
||||||
mmc_read(ioaddr, 0, (u8 *) & m, sizeof(m));
|
mmc_read(ioaddr, 0, (u8 *) & m, sizeof(m));
|
||||||
mmc_out(ioaddr, mmwoff(0, mmw_freeze), 0);
|
mmc_out(ioaddr, mmwoff(0, mmw_freeze), 0);
|
||||||
|
|
||||||
#ifdef WIRELESS_EXT /* if wireless extension exists in the kernel */
|
|
||||||
/* Don't forget to update statistics */
|
/* Don't forget to update statistics */
|
||||||
lp->wstats.discard.nwid +=
|
lp->wstats.discard.nwid +=
|
||||||
(m.mmr_wrong_nwid_h << 8) | m.mmr_wrong_nwid_l;
|
(m.mmr_wrong_nwid_h << 8) | m.mmr_wrong_nwid_l;
|
||||||
#endif /* WIRELESS_EXT */
|
|
||||||
|
|
||||||
printk(KERN_DEBUG "##### WaveLAN modem status registers: #####\n");
|
printk(KERN_DEBUG "##### WaveLAN modem status registers: #####\n");
|
||||||
#ifdef DEBUG_SHOW_UNUSED
|
#ifdef DEBUG_SHOW_UNUSED
|
||||||
|
@ -1499,7 +1495,6 @@ static int wavelan_set_mac_address(struct net_device * dev, void *addr)
|
||||||
}
|
}
|
||||||
#endif /* SET_MAC_ADDRESS */
|
#endif /* SET_MAC_ADDRESS */
|
||||||
|
|
||||||
#ifdef WIRELESS_EXT /* if wireless extensions exist in the kernel */
|
|
||||||
|
|
||||||
/*------------------------------------------------------------------*/
|
/*------------------------------------------------------------------*/
|
||||||
/*
|
/*
|
||||||
|
@ -2473,7 +2468,6 @@ static iw_stats *wavelan_get_wireless_stats(struct net_device * dev)
|
||||||
#endif
|
#endif
|
||||||
return &lp->wstats;
|
return &lp->wstats;
|
||||||
}
|
}
|
||||||
#endif /* WIRELESS_EXT */
|
|
||||||
|
|
||||||
/************************* PACKET RECEPTION *************************/
|
/************************* PACKET RECEPTION *************************/
|
||||||
/*
|
/*
|
||||||
|
@ -4194,11 +4188,9 @@ static int __init wavelan_config(struct net_device *dev, unsigned short ioaddr)
|
||||||
dev->set_mac_address = &wavelan_set_mac_address;
|
dev->set_mac_address = &wavelan_set_mac_address;
|
||||||
#endif /* SET_MAC_ADDRESS */
|
#endif /* SET_MAC_ADDRESS */
|
||||||
|
|
||||||
#ifdef WIRELESS_EXT /* if wireless extension exists in the kernel */
|
|
||||||
dev->wireless_handlers = &wavelan_handler_def;
|
dev->wireless_handlers = &wavelan_handler_def;
|
||||||
lp->wireless_data.spy_data = &lp->spy_data;
|
lp->wireless_data.spy_data = &lp->spy_data;
|
||||||
dev->wireless_data = &lp->wireless_data;
|
dev->wireless_data = &lp->wireless_data;
|
||||||
#endif
|
|
||||||
|
|
||||||
dev->mtu = WAVELAN_MTU;
|
dev->mtu = WAVELAN_MTU;
|
||||||
|
|
||||||
|
|
|
@ -409,11 +409,9 @@
|
||||||
#define MULTICAST_AVOID /* Avoid extra multicast (I'm sceptical). */
|
#define MULTICAST_AVOID /* Avoid extra multicast (I'm sceptical). */
|
||||||
#undef SET_MAC_ADDRESS /* Experimental */
|
#undef SET_MAC_ADDRESS /* Experimental */
|
||||||
|
|
||||||
#ifdef WIRELESS_EXT /* If wireless extensions exist in the kernel */
|
|
||||||
/* Warning: this stuff will slow down the driver. */
|
/* Warning: this stuff will slow down the driver. */
|
||||||
#define WIRELESS_SPY /* Enable spying addresses. */
|
#define WIRELESS_SPY /* Enable spying addresses. */
|
||||||
#undef HISTOGRAM /* Enable histogram of signal level. */
|
#undef HISTOGRAM /* Enable histogram of signal level. */
|
||||||
#endif
|
|
||||||
|
|
||||||
/****************************** DEBUG ******************************/
|
/****************************** DEBUG ******************************/
|
||||||
|
|
||||||
|
@ -506,12 +504,10 @@ struct net_local
|
||||||
u_short tx_first_free;
|
u_short tx_first_free;
|
||||||
u_short tx_first_in_use;
|
u_short tx_first_in_use;
|
||||||
|
|
||||||
#ifdef WIRELESS_EXT
|
|
||||||
iw_stats wstats; /* Wireless-specific statistics */
|
iw_stats wstats; /* Wireless-specific statistics */
|
||||||
|
|
||||||
struct iw_spy_data spy_data;
|
struct iw_spy_data spy_data;
|
||||||
struct iw_public_data wireless_data;
|
struct iw_public_data wireless_data;
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef HISTOGRAM
|
#ifdef HISTOGRAM
|
||||||
int his_number; /* number of intervals */
|
int his_number; /* number of intervals */
|
||||||
|
|
|
@ -415,7 +415,6 @@ fee_read(u_long base, /* i/o port of the card */
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef WIRELESS_EXT /* If wireless extension exist in the kernel */
|
|
||||||
|
|
||||||
/*------------------------------------------------------------------*/
|
/*------------------------------------------------------------------*/
|
||||||
/*
|
/*
|
||||||
|
@ -500,7 +499,6 @@ fee_write(u_long base, /* i/o port of the card */
|
||||||
fee_wait(base, 10, 100);
|
fee_wait(base, 10, 100);
|
||||||
#endif /* EEPROM_IS_PROTECTED */
|
#endif /* EEPROM_IS_PROTECTED */
|
||||||
}
|
}
|
||||||
#endif /* WIRELESS_EXT */
|
|
||||||
|
|
||||||
/******************* WaveLAN Roaming routines... ********************/
|
/******************* WaveLAN Roaming routines... ********************/
|
||||||
|
|
||||||
|
@ -1161,10 +1159,8 @@ wv_mmc_show(struct net_device * dev)
|
||||||
mmc_read(base, 0, (u_char *)&m, sizeof(m));
|
mmc_read(base, 0, (u_char *)&m, sizeof(m));
|
||||||
mmc_out(base, mmwoff(0, mmw_freeze), 0);
|
mmc_out(base, mmwoff(0, mmw_freeze), 0);
|
||||||
|
|
||||||
#ifdef WIRELESS_EXT /* If wireless extension exist in the kernel */
|
|
||||||
/* Don't forget to update statistics */
|
/* Don't forget to update statistics */
|
||||||
lp->wstats.discard.nwid += (m.mmr_wrong_nwid_h << 8) | m.mmr_wrong_nwid_l;
|
lp->wstats.discard.nwid += (m.mmr_wrong_nwid_h << 8) | m.mmr_wrong_nwid_l;
|
||||||
#endif /* WIRELESS_EXT */
|
|
||||||
|
|
||||||
spin_unlock_irqrestore(&lp->spinlock, flags);
|
spin_unlock_irqrestore(&lp->spinlock, flags);
|
||||||
|
|
||||||
|
@ -1550,7 +1546,6 @@ wavelan_set_mac_address(struct net_device * dev,
|
||||||
}
|
}
|
||||||
#endif /* SET_MAC_ADDRESS */
|
#endif /* SET_MAC_ADDRESS */
|
||||||
|
|
||||||
#ifdef WIRELESS_EXT /* If wireless extension exist in the kernel */
|
|
||||||
|
|
||||||
/*------------------------------------------------------------------*/
|
/*------------------------------------------------------------------*/
|
||||||
/*
|
/*
|
||||||
|
@ -2793,7 +2788,6 @@ wavelan_get_wireless_stats(struct net_device * dev)
|
||||||
#endif
|
#endif
|
||||||
return &lp->wstats;
|
return &lp->wstats;
|
||||||
}
|
}
|
||||||
#endif /* WIRELESS_EXT */
|
|
||||||
|
|
||||||
/************************* PACKET RECEPTION *************************/
|
/************************* PACKET RECEPTION *************************/
|
||||||
/*
|
/*
|
||||||
|
@ -4679,11 +4673,9 @@ wavelan_attach(void)
|
||||||
dev->watchdog_timeo = WATCHDOG_JIFFIES;
|
dev->watchdog_timeo = WATCHDOG_JIFFIES;
|
||||||
SET_ETHTOOL_OPS(dev, &ops);
|
SET_ETHTOOL_OPS(dev, &ops);
|
||||||
|
|
||||||
#ifdef WIRELESS_EXT /* If wireless extension exist in the kernel */
|
|
||||||
dev->wireless_handlers = &wavelan_handler_def;
|
dev->wireless_handlers = &wavelan_handler_def;
|
||||||
lp->wireless_data.spy_data = &lp->spy_data;
|
lp->wireless_data.spy_data = &lp->spy_data;
|
||||||
dev->wireless_data = &lp->wireless_data;
|
dev->wireless_data = &lp->wireless_data;
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Other specific data */
|
/* Other specific data */
|
||||||
dev->mtu = WAVELAN_MTU;
|
dev->mtu = WAVELAN_MTU;
|
||||||
|
|
|
@ -472,11 +472,9 @@
|
||||||
#define MULTICAST_AVOID /* Avoid extra multicast (I'm sceptical) */
|
#define MULTICAST_AVOID /* Avoid extra multicast (I'm sceptical) */
|
||||||
#undef SET_MAC_ADDRESS /* Experimental */
|
#undef SET_MAC_ADDRESS /* Experimental */
|
||||||
|
|
||||||
#ifdef WIRELESS_EXT /* If wireless extension exist in the kernel */
|
|
||||||
/* Warning : these stuff will slow down the driver... */
|
/* Warning : these stuff will slow down the driver... */
|
||||||
#define WIRELESS_SPY /* Enable spying addresses */
|
#define WIRELESS_SPY /* Enable spying addresses */
|
||||||
#undef HISTOGRAM /* Enable histogram of sig level... */
|
#undef HISTOGRAM /* Enable histogram of sig level... */
|
||||||
#endif
|
|
||||||
|
|
||||||
/****************************** DEBUG ******************************/
|
/****************************** DEBUG ******************************/
|
||||||
|
|
||||||
|
@ -624,12 +622,10 @@ struct net_local
|
||||||
int rfp; /* Last DMA machine receive pointer */
|
int rfp; /* Last DMA machine receive pointer */
|
||||||
int overrunning; /* Receiver overrun flag */
|
int overrunning; /* Receiver overrun flag */
|
||||||
|
|
||||||
#ifdef WIRELESS_EXT
|
|
||||||
iw_stats wstats; /* Wireless specific stats */
|
iw_stats wstats; /* Wireless specific stats */
|
||||||
|
|
||||||
struct iw_spy_data spy_data;
|
struct iw_spy_data spy_data;
|
||||||
struct iw_public_data wireless_data;
|
struct iw_public_data wireless_data;
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef HISTOGRAM
|
#ifdef HISTOGRAM
|
||||||
int his_number; /* Number of intervals */
|
int his_number; /* Number of intervals */
|
||||||
|
|
Reference in New Issue