rpms/kernel/F-7 linux-2.6-rt2x00-usb-1_1-timeout.patch, NONE, 1.1 linux-2.6-wireless-pending.patch, NONE, 1.1 git-wireless-dev.patch, 1.20, 1.21 kernel-2.6.spec, 1.3308, 1.3309 linux-2.6-wireless.patch, 1.7, 1.8 linux-2.6-softmac-deadlock.patch, 1.2, NONE

John W. Linville (linville) fedora-extras-commits at redhat.com
Wed Aug 8 21:00:17 UTC 2007


Author: linville

Update of /cvs/pkgs/rpms/kernel/F-7
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv12401

Modified Files:
	git-wireless-dev.patch kernel-2.6.spec 
	linux-2.6-wireless.patch 
Added Files:
	linux-2.6-rt2x00-usb-1_1-timeout.patch 
	linux-2.6-wireless-pending.patch 
Removed Files:
	linux-2.6-softmac-deadlock.patch 
Log Message:
wireless fixes from upstream, wireless-dev update

linux-2.6-rt2x00-usb-1_1-timeout.patch:

--- NEW FILE linux-2.6-rt2x00-usb-1_1-timeout.patch ---
diff --git a/drivers/net/wireless/rt2x00usb.h b/drivers/net/wireless/rt2x00usb.h
index 56044f6..62cf959 100644
--- a/drivers/net/wireless/rt2x00usb.h
+++ b/drivers/net/wireless/rt2x00usb.h
@@ -44,7 +44,7 @@
  */
 #define REGISTER_BUSY_COUNT		5
 #define REGISTER_BUSY_DELAY		100
-#define REGISTER_TIMEOUT		20
+#define REGISTER_TIMEOUT		500
 #define REGISTER_TIMEOUT_FIRMWARE	1000
 
 /*

linux-2.6-wireless-pending.patch:

--- NEW FILE linux-2.6-wireless-pending.patch ---
--- linux-2.6.22.noarch/drivers/net/wireless/orinoco_tmd.c.orig	2007-07-08 19:32:17.000000000 -0400
+++ linux-2.6.22.noarch/drivers/net/wireless/orinoco_tmd.c	2007-08-08 16:42:22.000000000 -0400
@@ -190,7 +190,7 @@ static int orinoco_tmd_init_one(struct p
 static void __devexit orinoco_tmd_remove_one(struct pci_dev *pdev)
 {
 	struct net_device *dev = pci_get_drvdata(pdev);
-	struct orinoco_private *priv = dev->priv;
+	struct orinoco_private *priv = netdev_priv(dev);
 	struct orinoco_pci_card *card = priv->card;
 
 	unregister_netdev(dev);
--- linux-2.6.22.noarch/drivers/net/wireless/airo.c.orig	2007-08-08 16:42:02.000000000 -0400
+++ linux-2.6.22.noarch/drivers/net/wireless/airo.c	2007-08-08 16:42:22.000000000 -0400
@@ -241,8 +241,8 @@ static int proc_perm = 0644;
 
 MODULE_AUTHOR("Benjamin Reed");
 MODULE_DESCRIPTION("Support for Cisco/Aironet 802.11 wireless ethernet \
-                   cards.  Direct support for ISA/PCI/MPI cards and support \
-		   for PCMCIA when used with airo_cs.");
+cards.  Direct support for ISA/PCI/MPI cards and support \
+for PCMCIA when used with airo_cs.");
 MODULE_LICENSE("Dual BSD/GPL");
 MODULE_SUPPORTED_DEVICE("Aironet 4500, 4800 and Cisco 340/350");
 module_param_array(io, int, NULL, 0);
--- linux-2.6.22.noarch/drivers/net/wireless/strip.c.orig	2007-07-08 19:32:17.000000000 -0400
+++ linux-2.6.22.noarch/drivers/net/wireless/strip.c	2007-08-08 16:42:22.000000000 -0400
@@ -2571,7 +2571,7 @@ static struct strip *strip_alloc(void)
 		return NULL;	/* If no more memory, return */
 
 
-	strip_info = dev->priv;
+	strip_info = netdev_priv(dev);
 	strip_info->dev = dev;
 
 	strip_info->magic = STRIP_MAGIC;
--- linux-2.6.22.noarch/drivers/net/wireless/ray_cs.c.orig	2007-07-08 19:32:17.000000000 -0400
+++ linux-2.6.22.noarch/drivers/net/wireless/ray_cs.c	2007-08-08 16:42:22.000000000 -0400
@@ -314,7 +314,7 @@ static int ray_probe(struct pcmcia_devic
     if (!dev)
 	    goto fail_alloc_dev;
 
-    local = dev->priv;
+    local = netdev_priv(dev);
     local->finder = p_dev;
 
     /* The io structure describes IO port mapping. None used here */
@@ -388,7 +388,7 @@ static void ray_detach(struct pcmcia_dev
 
     ray_release(link);
 
-    local = (ray_dev_t *)dev->priv;
+    local = netdev_priv(dev);
     del_timer(&local->timer);
 
     if (link->priv) {
@@ -412,7 +412,7 @@ static int ray_config(struct pcmcia_devi
     win_req_t req;
     memreq_t mem;
     struct net_device *dev = (struct net_device *)link->priv;
-    ray_dev_t *local = (ray_dev_t *)dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
 
     DEBUG(1, "ray_config(0x%p)\n", link);
 
@@ -520,7 +520,7 @@ static int ray_init(struct net_device *d
     int i;
     UCHAR *p;
     struct ccs __iomem *pccs;
-    ray_dev_t *local = (ray_dev_t *)dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     struct pcmcia_device *link = local->finder;
     DEBUG(1, "ray_init(0x%p)\n", dev);
     if (!(pcmcia_dev_present(link))) {
@@ -581,7 +581,7 @@ static int ray_init(struct net_device *d
 static int dl_startup_params(struct net_device *dev)
 {
     int ccsindex;
-    ray_dev_t *local = (ray_dev_t *)dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     struct ccs __iomem *pccs;
     struct pcmcia_device *link = local->finder;
 
@@ -786,7 +786,7 @@ static void join_net(u_long data)
 static void ray_release(struct pcmcia_device *link)
 {
     struct net_device *dev = link->priv; 
-    ray_dev_t *local = dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     int i;
     
     DEBUG(1, "ray_release(0x%p)\n", link);
@@ -834,7 +834,7 @@ int ray_dev_init(struct net_device *dev)
 #ifdef RAY_IMMEDIATE_INIT
     int i;
 #endif	/* RAY_IMMEDIATE_INIT */
-    ray_dev_t *local = dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     struct pcmcia_device *link = local->finder;
 
     DEBUG(1,"ray_dev_init(dev=%p)\n",dev);
@@ -868,7 +868,7 @@ int ray_dev_init(struct net_device *dev)
 /*===========================================================================*/
 static int ray_dev_config(struct net_device *dev, struct ifmap *map)
 {
-    ray_dev_t *local = dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     struct pcmcia_device *link = local->finder;
     /* Dummy routine to satisfy device structure */
     DEBUG(1,"ray_dev_config(dev=%p,ifmap=%p)\n",dev,map);
@@ -882,7 +882,7 @@ static int ray_dev_config(struct net_dev
 /*===========================================================================*/
 static int ray_dev_start_xmit(struct sk_buff *skb, struct net_device *dev)
 {
-    ray_dev_t *local = dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     struct pcmcia_device *link = local->finder;
     short length = skb->len;
 
@@ -925,7 +925,7 @@ static int ray_dev_start_xmit(struct sk_
 static int ray_hw_xmit(unsigned char* data, int len, struct net_device* dev, 
                 UCHAR msg_type)
 {
-    ray_dev_t *local = (ray_dev_t *)dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     struct ccs __iomem *pccs;
     int ccsindex;
     int offset;
@@ -1099,7 +1099,7 @@ static int ray_set_freq(struct net_devic
 			struct iw_freq *fwrq,
 			char *extra)
 {
-	ray_dev_t *local = (ray_dev_t *)dev->priv;
+	ray_dev_t *local = netdev_priv(dev);
 	int err = -EINPROGRESS;		/* Call commit handler */
 
 	/* Reject if card is already initialised */
@@ -1124,7 +1124,7 @@ static int ray_get_freq(struct net_devic
 			struct iw_freq *fwrq,
 			char *extra)
 {
-	ray_dev_t *local = (ray_dev_t *)dev->priv;
+	ray_dev_t *local = netdev_priv(dev);
 
 	fwrq->m = local->sparm.b5.a_hop_pattern;
 	fwrq->e = 0;
@@ -1140,7 +1140,7 @@ static int ray_set_essid(struct net_devi
 			 struct iw_point *dwrq,
 			 char *extra)
 {
-	ray_dev_t *local = (ray_dev_t *)dev->priv;
+	ray_dev_t *local = netdev_priv(dev);
 
 	/* Reject if card is already initialised */
 	if(local->card_status != CARD_AWAITING_PARAM)
@@ -1173,7 +1173,7 @@ static int ray_get_essid(struct net_devi
 			 struct iw_point *dwrq,
 			 char *extra)
 {
-	ray_dev_t *local = (ray_dev_t *)dev->priv;
+	ray_dev_t *local = netdev_priv(dev);
 
 	/* Get the essid that was set */
 	memcpy(extra, local->sparm.b5.a_current_ess_id, IW_ESSID_MAX_SIZE);
@@ -1194,7 +1194,7 @@ static int ray_get_wap(struct net_device
 			struct sockaddr *awrq,
 			char *extra)
 {
-	ray_dev_t *local = (ray_dev_t *)dev->priv;
+	ray_dev_t *local = netdev_priv(dev);
 
 	memcpy(awrq->sa_data, local->bss_id, ETH_ALEN);
 	awrq->sa_family = ARPHRD_ETHER;
@@ -1211,7 +1211,7 @@ static int ray_set_rate(struct net_devic
 			struct iw_param *vwrq,
 			char *extra)
 {
-	ray_dev_t *local = (ray_dev_t *)dev->priv;
+	ray_dev_t *local = netdev_priv(dev);
 
 	/* Reject if card is already initialised */
 	if(local->card_status != CARD_AWAITING_PARAM)
@@ -1240,7 +1240,7 @@ static int ray_get_rate(struct net_devic
 			struct iw_param *vwrq,
 			char *extra)
 {
-	ray_dev_t *local = (ray_dev_t *)dev->priv;
+	ray_dev_t *local = netdev_priv(dev);
 
 	if(local->net_default_tx_rate == 3)
 		vwrq->value = 2000000;		/* Hum... */
@@ -1260,7 +1260,7 @@ static int ray_set_rts(struct net_device
 		       struct iw_param *vwrq,
 		       char *extra)
 {
-	ray_dev_t *local = (ray_dev_t *)dev->priv;
+	ray_dev_t *local = netdev_priv(dev);
 	int rthr = vwrq->value;
 
 	/* Reject if card is already initialised */
[...12035 lines suppressed...]
 		  goto final;
 	} else
-		priva = arlan_device[devnum]->priv;
+		priva = netdev_priv(arlan_device[devnum]);
 	if (priva == NULL)
 	{
 		printk(KERN_WARNING " Could not find the device private in arlan procsys, bad\n ");
@@ -745,7 +745,7 @@ static int arlan_sysctl_info18(ctl_table
 		goto final;
 	}
 	else
-		priva = arlan_device[devnum]->priv;
+		priva = netdev_priv(arlan_device[devnum]);
 	if (priva == NULL)
 	{
 		printk(KERN_WARNING " Could not find the device private in arlan procsys, bad\n ");
@@ -780,7 +780,7 @@ static int arlan_configure(ctl_table * c
 	}
 	else if (arlan_device[devnum] != NULL)
 	{
-		  priv = arlan_device[devnum]->priv;
+		  priv = netdev_priv(arlan_device[devnum]);
 
 		  arlan_command(arlan_device[devnum], ARLAN_COMMAND_CLEAN_AND_CONF);
 	}
@@ -805,7 +805,7 @@ static int arlan_sysctl_reset(ctl_table 
 	}
 	else if (arlan_device[devnum] != NULL)
 	{
-		priv = arlan_device[devnum]->priv;
+		priv = netdev_priv(arlan_device[devnum]);
 		arlan_command(arlan_device[devnum], ARLAN_COMMAND_CLEAN_AND_RESET);
 
 	} else
--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_wlan.h.orig	2007-07-08 19:32:17.000000000 -0400
+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_wlan.h	2007-08-08 16:42:22.000000000 -0400
@@ -3,6 +3,7 @@
 
 #include <linux/wireless.h>
 #include <linux/netdevice.h>
+#include <linux/mutex.h>
 #include <net/iw_handler.h>
 
 #include "hostap_config.h"
@@ -641,7 +642,7 @@ struct local_info {
 			      * when removing entries from the list.
 			      * TX and RX paths can use read lock. */
 	spinlock_t cmdlock, baplock, lock;
-	struct semaphore rid_bap_sem;
+	struct mutex rid_bap_mtx;
 	u16 infofid; /* MAC buffer id for info frame */
 	/* txfid, intransmitfid, next_txtid, and next_alloc are protected by
 	 * txfidlock */
--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_cs.c.orig	2007-08-08 16:42:02.000000000 -0400
+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_cs.c	2007-08-08 16:42:22.000000000 -0400
@@ -272,7 +272,7 @@ static int sandisk_enable_wireless(struc
 {
 	int res, ret = 0;
 	conf_reg_t reg;
-	struct hostap_interface *iface = dev->priv;
+	struct hostap_interface *iface = netdev_priv(dev);
 	local_info_t *local = iface->local;
 	tuple_t tuple;
 	cisparse_t *parse = NULL;
--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_hw.c.orig	2007-07-08 19:32:17.000000000 -0400
+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_hw.c	2007-08-08 16:42:22.000000000 -0400
@@ -825,7 +825,7 @@ static int hfa384x_get_rid(struct net_de
 	    local->hw_downloading)
 		return -ENODEV;
 
-	res = down_interruptible(&local->rid_bap_sem);
+	res = mutex_lock_interruptible(&local->rid_bap_mtx);
 	if (res)
 		return res;
 
@@ -834,7 +834,7 @@ static int hfa384x_get_rid(struct net_de
 		printk(KERN_DEBUG "%s: hfa384x_get_rid: CMDCODE_ACCESS failed "
 		       "(res=%d, rid=%04x, len=%d)\n",
 		       dev->name, res, rid, len);
-		up(&local->rid_bap_sem);
+		mutex_unlock(&local->rid_bap_mtx);
 		return res;
 	}
 
@@ -861,7 +861,7 @@ static int hfa384x_get_rid(struct net_de
 		res = hfa384x_from_bap(dev, BAP0, buf, len);
 
 	spin_unlock_bh(&local->baplock);
-	up(&local->rid_bap_sem);
+	mutex_unlock(&local->rid_bap_mtx);
 
 	if (res) {
 		if (res != -ENODATA)
@@ -902,7 +902,7 @@ static int hfa384x_set_rid(struct net_de
 	/* RID len in words and +1 for rec.rid */
 	rec.len = cpu_to_le16(len / 2 + len % 2 + 1);
 
-	res = down_interruptible(&local->rid_bap_sem);
+	res = mutex_lock_interruptible(&local->rid_bap_mtx);
 	if (res)
 		return res;
 
@@ -917,12 +917,12 @@ static int hfa384x_set_rid(struct net_de
 	if (res) {
 		printk(KERN_DEBUG "%s: hfa384x_set_rid (rid=%04x, len=%d) - "
 		       "failed - res=%d\n", dev->name, rid, len, res);
-		up(&local->rid_bap_sem);
+		mutex_unlock(&local->rid_bap_mtx);
 		return res;
 	}
 
 	res = hfa384x_cmd(dev, HFA384X_CMDCODE_ACCESS_WRITE, rid, NULL, NULL);
-	up(&local->rid_bap_sem);
+	mutex_unlock(&local->rid_bap_mtx);
 
 	if (res) {
 		printk(KERN_DEBUG "%s: hfa384x_set_rid: CMDCODE_ACCESS_WRITE "
@@ -3171,7 +3171,7 @@ prism2_init_local_data(struct prism2_hel
 	spin_lock_init(&local->cmdlock);
 	spin_lock_init(&local->baplock);
 	spin_lock_init(&local->lock);
-	init_MUTEX(&local->rid_bap_sem);
+	mutex_init(&local->rid_bap_mtx);
 
 	if (card_idx < 0 || card_idx >= MAX_PARM_DEVICES)
 		card_idx = 0;
@@ -3424,7 +3424,7 @@ static void prism2_suspend(struct net_de
 	struct local_info *local;
 	union iwreq_data wrqu;
 
-	iface = dev->priv;
+	iface = netdev_priv(dev);
 	local = iface->local;
 
 	/* Send disconnect event, e.g., to trigger reassociation after resume
--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_ioctl.c.orig	2007-08-08 16:42:02.000000000 -0400
+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_ioctl.c	2007-08-08 16:42:22.000000000 -0400
@@ -3088,7 +3088,7 @@ static int prism2_ioctl_priv_download(lo
 static int prism2_set_genericelement(struct net_device *dev, u8 *elem,
 				     size_t len)
 {
-	struct hostap_interface *iface = dev->priv;
+	struct hostap_interface *iface = netdev_priv(dev);
 	local_info_t *local = iface->local;
 	u8 *buf;
 
@@ -3116,7 +3116,7 @@ static int prism2_ioctl_siwauth(struct n
 				struct iw_request_info *info,
 				struct iw_param *data, char *extra)
 {
-	struct hostap_interface *iface = dev->priv;
+	struct hostap_interface *iface = netdev_priv(dev);
 	local_info_t *local = iface->local;
 
 	switch (data->flags & IW_AUTH_INDEX) {
@@ -3182,7 +3182,7 @@ static int prism2_ioctl_giwauth(struct n
 				struct iw_request_info *info,
 				struct iw_param *data, char *extra)
 {
-	struct hostap_interface *iface = dev->priv;
+	struct hostap_interface *iface = netdev_priv(dev);
 	local_info_t *local = iface->local;
 
 	switch (data->flags & IW_AUTH_INDEX) {
@@ -3221,7 +3221,7 @@ static int prism2_ioctl_siwencodeext(str
 				     struct iw_request_info *info,
 				     struct iw_point *erq, char *extra)
 {
-	struct hostap_interface *iface = dev->priv;
+	struct hostap_interface *iface = netdev_priv(dev);
 	local_info_t *local = iface->local;
 	struct iw_encode_ext *ext = (struct iw_encode_ext *) extra;
 	int i, ret = 0;
@@ -3395,7 +3395,7 @@ static int prism2_ioctl_giwencodeext(str
 				     struct iw_request_info *info,
 				     struct iw_point *erq, char *extra)
 {
-	struct hostap_interface *iface = dev->priv;
+	struct hostap_interface *iface = netdev_priv(dev);
 	local_info_t *local = iface->local;
 	struct ieee80211_crypt_data **crypt;
 	void *sta_ptr;
@@ -3716,7 +3716,7 @@ static int prism2_ioctl_giwgenie(struct 
 				 struct iw_request_info *info,
 				 struct iw_point *data, char *extra)
 {
-	struct hostap_interface *iface = dev->priv;
+	struct hostap_interface *iface = netdev_priv(dev);
 	local_info_t *local = iface->local;
 	int len = local->generic_elem_len - 2;
 
@@ -3755,7 +3755,7 @@ static int prism2_ioctl_siwmlme(struct n
 				struct iw_request_info *info,
 				struct iw_point *data, char *extra)
 {
-	struct hostap_interface *iface = dev->priv;
+	struct hostap_interface *iface = netdev_priv(dev);
 	local_info_t *local = iface->local;
 	struct iw_mlme *mlme = (struct iw_mlme *) extra;
 	u16 reason;

git-wireless-dev.patch:

View full diff with command:
/usr/bin/cvs -f diff  -kk -u -N -r 1.20 -r 1.21 git-wireless-dev.patch
Index: git-wireless-dev.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-7/git-wireless-dev.patch,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- git-wireless-dev.patch	7 Aug 2007 00:16:26 -0000	1.20
+++ git-wireless-dev.patch	8 Aug 2007 20:59:43 -0000	1.21
@@ -1,5 +1,5 @@
 --- linux-2.6.22.noarch/CREDITS.orig	2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/CREDITS	2007-08-06 20:01:53.000000000 -0400
++++ linux-2.6.22.noarch/CREDITS	2007-08-08 16:44:13.000000000 -0400
 @@ -665,6 +665,11 @@ D: Minor updates to SCSI types, added /p
  S: (ask for current address)
  S: USA
@@ -67,7 +67,7 @@
  E: liw at iki.fi
  D: Linux System Administrator's Guide, author, former maintainer
 --- linux-2.6.22.noarch/include/linux/nl80211.h.orig	2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/include/linux/nl80211.h	2007-08-06 20:01:53.000000000 -0400
++++ linux-2.6.22.noarch/include/linux/nl80211.h	2007-08-08 16:44:13.000000000 -0400
 @@ -7,6 +7,201 @@
   */
  
@@ -327,8 +327,8 @@
 +#define NL80211_KEYTYPE_MAX (__NL80211_KEYTYPE_AFTER_LAST - 1)
 +
  #endif /* __LINUX_NL80211_H */
---- linux-2.6.22.noarch/include/linux/ieee80211.h.orig	2007-08-06 20:01:05.000000000 -0400
-+++ linux-2.6.22.noarch/include/linux/ieee80211.h	2007-08-06 20:01:53.000000000 -0400
+--- linux-2.6.22.noarch/include/linux/ieee80211.h.orig	2007-08-08 16:43:47.000000000 -0400
++++ linux-2.6.22.noarch/include/linux/ieee80211.h	2007-08-08 16:44:13.000000000 -0400
 @@ -106,6 +106,75 @@ struct ieee80211_hdr {
  } __attribute__ ((packed));
  
@@ -627,8 +627,8 @@
 +};
 +
  #endif /* IEEE80211_H */
---- /dev/null	2007-08-06 19:21:45.791015256 -0400
-+++ linux-2.6.22.noarch/include/linux/ssb/ssb_driver_chipcommon.h	2007-08-06 20:01:53.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/include/linux/ssb/ssb_driver_chipcommon.h	2007-08-08 16:44:13.000000000 -0400
 @@ -0,0 +1,390 @@
 +#ifndef LINUX_SSB_CHIPCO_H_
 +#define LINUX_SSB_CHIPCO_H_
@@ -1020,8 +1020,8 @@
 +#endif /* CONFIG_SSB_SERIAL */
 +
 +#endif /* LINUX_SSB_CHIPCO_H_ */
---- /dev/null	2007-08-06 19:21:45.791015256 -0400
-+++ linux-2.6.22.noarch/include/linux/ssb/ssb_driver_extif.h	2007-08-06 20:02:18.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/include/linux/ssb/ssb_driver_extif.h	2007-08-08 16:44:13.000000000 -0400
 @@ -0,0 +1,198 @@
 +/*
 + * Hardware-specific External Interface I/O core definitions
@@ -1221,8 +1221,8 @@
 +
 +#endif /* CONFIG_SSB_DRIVER_EXTIF */
 +#endif /* LINUX_SSB_EXTIFCORE_H_ */
---- /dev/null	2007-08-06 19:21:45.791015256 -0400
-+++ linux-2.6.22.noarch/include/linux/ssb/ssb_driver_mips.h	2007-08-06 20:02:18.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/include/linux/ssb/ssb_driver_mips.h	2007-08-08 16:44:13.000000000 -0400
 @@ -0,0 +1,46 @@
 +#ifndef LINUX_SSB_MIPSCORE_H_
 +#define LINUX_SSB_MIPSCORE_H_
@@ -1270,8 +1270,8 @@
 +#endif /* CONFIG_SSB_DRIVER_MIPS */
 +
 +#endif /* LINUX_SSB_MIPSCORE_H_ */
---- /dev/null	2007-08-06 19:21:45.791015256 -0400
-+++ linux-2.6.22.noarch/include/linux/ssb/ssb_regs.h	2007-08-06 20:01:53.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/include/linux/ssb/ssb_regs.h	2007-08-08 16:44:13.000000000 -0400
 @@ -0,0 +1,292 @@
 +#ifndef LINUX_SSB_REGS_H_
 +#define LINUX_SSB_REGS_H_
@@ -1565,8 +1565,8 @@
 +
 +
 +#endif /* LINUX_SSB_REGS_H_ */
---- /dev/null	2007-08-06 19:21:45.791015256 -0400
-+++ linux-2.6.22.noarch/include/linux/ssb/ssb_driver_pci.h	2007-08-06 20:01:53.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/include/linux/ssb/ssb_driver_pci.h	2007-08-08 16:44:13.000000000 -0400
 @@ -0,0 +1,106 @@
 +#ifndef LINUX_SSB_PCICORE_H_
 +#define LINUX_SSB_PCICORE_H_
@@ -1674,8 +1674,8 @@
 +
 +#endif /* CONFIG_SSB_DRIVER_PCICORE */
 +#endif /* LINUX_SSB_PCICORE_H_ */
---- /dev/null	2007-08-06 19:21:45.791015256 -0400
-+++ linux-2.6.22.noarch/include/linux/ssb/ssb.h	2007-08-06 20:01:53.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/include/linux/ssb/ssb.h	2007-08-08 16:44:13.000000000 -0400
 @@ -0,0 +1,432 @@
 +#ifndef LINUX_SSB_H_
 +#define LINUX_SSB_H_
@@ -2109,8 +2109,8 @@
 +
 +
 +#endif /* LINUX_SSB_H_ */
---- linux-2.6.22.noarch/include/net/cfg80211.h.orig	2007-08-06 20:01:05.000000000 -0400
-+++ linux-2.6.22.noarch/include/net/cfg80211.h	2007-08-06 20:01:53.000000000 -0400
+--- linux-2.6.22.noarch/include/net/cfg80211.h.orig	2007-08-08 16:43:47.000000000 -0400
++++ linux-2.6.22.noarch/include/net/cfg80211.h	2007-08-08 16:44:13.000000000 -0400
 @@ -3,6 +3,7 @@
  
  #include <linux/netlink.h>
@@ -2253,8 +2253,8 @@
 +			    u32 seq, int flags, u8 cmd);
 +
  #endif /* __NET_CFG80211_H */
---- linux-2.6.22.noarch/include/net/mac80211.h.orig	2007-08-06 20:01:05.000000000 -0400
-+++ linux-2.6.22.noarch/include/net/mac80211.h	2007-08-06 20:01:53.000000000 -0400
+--- linux-2.6.22.noarch/include/net/mac80211.h.orig	2007-08-08 16:43:47.000000000 -0400
++++ linux-2.6.22.noarch/include/net/mac80211.h	2007-08-08 16:44:13.000000000 -0400
 @@ -300,7 +300,6 @@ struct ieee80211_conf {
  	/* Following five fields are used for IEEE 802.11H */
  	unsigned int radar_detect;
@@ -2426,7 +2426,7 @@
  					int rate);
  
 --- linux-2.6.22.noarch/include/net/iw_handler.h.orig	2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/include/net/iw_handler.h	2007-08-06 20:01:53.000000000 -0400
++++ linux-2.6.22.noarch/include/net/iw_handler.h	2007-08-08 16:44:13.000000000 -0400
 @@ -431,7 +431,13 @@ struct iw_public_data {
   * Those may be called only within the kernel.
   */
@@ -2442,8 +2442,8 @@
  
  /* Send a single event to user space */
  extern void wireless_send_event(struct net_device *	dev,
---- linux-2.6.22.noarch/MAINTAINERS.orig	2007-08-06 20:01:14.000000000 -0400
-+++ linux-2.6.22.noarch/MAINTAINERS	2007-08-06 20:01:53.000000000 -0400
+--- linux-2.6.22.noarch/MAINTAINERS.orig	2007-08-08 16:43:47.000000000 -0400
++++ linux-2.6.22.noarch/MAINTAINERS	2007-08-08 16:44:13.000000000 -0400
 @@ -299,6 +299,14 @@ M:	corentin.labbe at geomatys.fr
  L:	lm-sensors at lm-sensors.org
  S:	Maintained
@@ -2548,8 +2548,8 @@
  SONY VAIO CONTROL DEVICE DRIVER
  P:	Mattia Dongili
  M:	malattia at linux.it
---- linux-2.6.22.noarch/net/mac80211/ieee80211_iface.c.orig	2007-08-06 20:01:05.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/ieee80211_iface.c	2007-08-06 20:01:53.000000000 -0400
+--- linux-2.6.22.noarch/net/mac80211/ieee80211_iface.c.orig	2007-08-08 16:43:47.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/ieee80211_iface.c	2007-08-08 16:44:13.000000000 -0400
 @@ -184,14 +184,31 @@ void ieee80211_if_set_type(struct net_de
  			    (unsigned long) sdata);
  		skb_queue_head_init(&ifsta->skb_queue);
@@ -2592,8 +2592,8 @@
  		} else {
  #ifdef CONFIG_MAC80211_VERBOSE_DEBUG
  			printk(KERN_DEBUG "%s: Someone had deleted my STA "
---- linux-2.6.22.noarch/net/mac80211/ieee80211_ioctl.c.orig	2007-08-06 20:01:05.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/ieee80211_ioctl.c	2007-08-06 20:01:53.000000000 -0400
+--- linux-2.6.22.noarch/net/mac80211/ieee80211_ioctl.c.orig	2007-08-08 16:43:47.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/ieee80211_ioctl.c	2007-08-08 16:44:13.000000000 -0400
 @@ -27,12 +27,411 @@
  #include "aes_ccm.h"
  #include "debugfs_key.h"
@@ -3889,7 +3889,7 @@
  	default:
  		return -EINVAL;
  	}
-@@ -1035,6 +2169,31 @@ static int ieee80211_ioctl_prism2_param(
+@@ -1042,6 +2176,31 @@ static int ieee80211_ioctl_prism2_param(
  	sdata = IEEE80211_DEV_TO_SUB_IF(dev);
  
  	switch (param) {
@@ -3921,7 +3921,7 @@
  	case PRISM2_PARAM_IEEE_802_1X:
  		if (local->ops->set_ieee8021x)
  			ret = local->ops->set_ieee8021x(local_to_hw(local),
-@@ -1047,14 +2206,21 @@ static int ieee80211_ioctl_prism2_param(
+@@ -1054,14 +2213,21 @@ static int ieee80211_ioctl_prism2_param(
  		break;
  
  	case PRISM2_PARAM_CTS_PROTECT_ERP_FRAMES:
@@ -3947,7 +3947,7 @@
  		break;
  
  	case PRISM2_PARAM_STAT_TIME:
-@@ -1075,6 +2241,12 @@ static int ieee80211_ioctl_prism2_param(
+@@ -1082,6 +2248,12 @@ static int ieee80211_ioctl_prism2_param(
  			ret = -EINVAL;
  		break;
  
@@ -3960,7 +3960,7 @@
  	case PRISM2_PARAM_NEXT_MODE:
  		local->next_mode = value;
  		break;
-@@ -1089,6 +2261,15 @@ static int ieee80211_ioctl_prism2_param(
+@@ -1096,6 +2268,15 @@ static int ieee80211_ioctl_prism2_param(
  			ret = -EINVAL;
  		break;
[...6302 lines suppressed...]
-+
-+		for (; j < 8; j++)
-+			out += snprintf(buf + out, count - out, " ");
-+	}
-+
-+	return out;
-+}
-+
-+#ifdef CONFIG_IWLWIFI_DEBUG
-+static inline void printk_buf(int level, const void *p, u32 len)
-+{
-+	const u8 *data = p;
-+	char line[81];
-+	u32 ofs = 0;
-+	if (!(iwl_debug_level & level))
-+		return;
-+
-+	while (len) {
-+		snprint_line(line, sizeof(line), &data[ofs],
-+			     min(len, 16U), ofs);
-+		printk(KERN_DEBUG "%s\n", line);
-+		ofs += 16;
-+		len -= min(len, 16U);
-+	}
-+}
-+#else
-+#define printk_buf(level, p, len) do {} while (0)
-+#endif
-+
 +#endif				/* __iwl_helpers_h__ */
---- /dev/null	2007-08-06 19:21:45.791015256 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/rt73usb.c	2007-08-06 20:01:55.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/rt73usb.c	2007-08-08 16:44:14.000000000 -0400
 @@ -0,0 +1,1961 @@
 +/*
 +	Copyright (C) 2004 - 2007 rt2x00 SourceForge Project
@@ -87355,8 +87318,8 @@
 +
 +module_init(rt73usb_init);
 +module_exit(rt73usb_exit);
---- /dev/null	2007-08-06 19:21:45.791015256 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/iwl-3945-rs.c	2007-08-06 20:01:55.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/iwl-3945-rs.c	2007-08-08 16:44:14.000000000 -0400
 @@ -0,0 +1,985 @@
 +/******************************************************************************
 + *
@@ -88105,9 +88068,9 @@
 +		IWL_DEBUG_RATE("decrease rate because of low success_ratio\n");
 +		scale_action = -1;
 +	} else if ((low_tpt == IWL_INVALID_VALUE) &&
-+		   (high_tpt == IWL_INVALID_VALUE)) {
++		   (high_tpt == IWL_INVALID_VALUE))
 +		scale_action = 1;
-+	} else if ((low_tpt != IWL_INVALID_VALUE) &&
++	else if ((low_tpt != IWL_INVALID_VALUE) &&
 +		   (high_tpt != IWL_INVALID_VALUE)
 +		   && (low_tpt < current_tpt)
 +		   && (high_tpt < current_tpt)) {
@@ -88343,9 +88306,9 @@
 +}
 +
 +
---- /dev/null	2007-08-06 19:21:45.791015256 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/Makefile	2007-08-06 20:02:18.000000000 -0400
-@@ -0,0 +1,13 @@
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/drivers/ssb/Makefile	2007-08-08 16:44:14.000000000 -0400
+@@ -0,0 +1,14 @@
 +# core
 +ssb-y					+= main.o scan.o
 +
@@ -88355,12 +88318,13 @@
 +
 +# built-in drivers
 +ssb-y					+= driver_chipcommon.o
-+ssb-$(CONFIG_SSB_DRIVER_MIPS)		+= driver_mipscore.o driver_extif.o
++ssb-$(CONFIG_SSB_DRIVER_MIPS)		+= driver_mipscore.o
++ssb-$(CONFIG_SSB_DRIVER_EXTIF)		+= driver_extif.o
 +ssb-$(CONFIG_SSB_DRIVER_PCICORE)	+= driver_pcicore.o
 +
 +obj-$(CONFIG_SSB)			+= ssb.o
---- /dev/null	2007-08-06 19:21:45.791015256 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/pcmcia.c	2007-08-06 20:01:55.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/drivers/ssb/pcmcia.c	2007-08-08 16:44:14.000000000 -0400
 @@ -0,0 +1,265 @@
 +/*
 + * Sonics Silicon Backplane
@@ -88627,8 +88591,8 @@
 +error:
 +	return -ENODEV;
 +}
---- /dev/null	2007-08-06 19:21:45.791015256 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/main.c	2007-08-06 20:02:18.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/drivers/ssb/main.c	2007-08-08 16:44:14.000000000 -0400
 @@ -0,0 +1,1113 @@
 +/*
 + * Sonics Silicon Backplane
@@ -89743,8 +89707,8 @@
 +	bus_unregister(&ssb_bustype);
 +}
 +module_exit(ssb_modexit)
---- /dev/null	2007-08-06 19:21:45.791015256 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/pcihost_wrapper.c	2007-08-06 20:01:55.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/drivers/ssb/pcihost_wrapper.c	2007-08-08 16:44:14.000000000 -0400
 @@ -0,0 +1,104 @@
 +/*
 + * Sonics Silicon Backplane
@@ -89850,8 +89814,8 @@
 +	return pci_register_driver(driver);
 +}
 +EXPORT_SYMBOL(ssb_pcihost_register);
---- /dev/null	2007-08-06 19:21:45.791015256 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/driver_mipscore.c	2007-08-06 20:02:18.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/drivers/ssb/driver_mipscore.c	2007-08-08 16:44:14.000000000 -0400
 @@ -0,0 +1,223 @@
 +/*
 + * Sonics Silicon Backplane
@@ -90076,8 +90040,8 @@
 +	ssb_mips_serial_init(mcore);
 +	ssb_mips_flash_detect(mcore);
 +}
---- /dev/null	2007-08-06 19:21:45.791015256 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/ssb_private.h	2007-08-06 20:01:55.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/drivers/ssb/ssb_private.h	2007-08-08 16:44:14.000000000 -0400
 @@ -0,0 +1,122 @@
 +#ifndef LINUX_SSB_PRIVATE_H_
 +#define LINUX_SSB_PRIVATE_H_
@@ -90201,8 +90165,8 @@
 +extern struct ssb_bus *ssb_pci_dev_to_bus(struct pci_dev *pdev);
 +
 +#endif /* LINUX_SSB_PRIVATE_H_ */
---- /dev/null	2007-08-06 19:21:45.791015256 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/pci.c	2007-08-06 20:01:55.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/drivers/ssb/pci.c	2007-08-08 16:44:14.000000000 -0400
 @@ -0,0 +1,704 @@
 +/*
 + * Sonics Silicon Backplane PCI-Hostbus related functions.
@@ -90908,8 +90872,8 @@
 +out:
 +	return err;
 +}
---- /dev/null	2007-08-06 19:21:45.791015256 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/driver_chipcommon.c	2007-08-06 20:01:55.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/drivers/ssb/driver_chipcommon.c	2007-08-08 16:44:14.000000000 -0400
 @@ -0,0 +1,425 @@
 +/*
 + * Sonics Silicon Backplane
@@ -91336,8 +91300,8 @@
 +	return nr_ports;
 +}
 +#endif /* CONFIG_SSB_SERIAL */
---- /dev/null	2007-08-06 19:21:45.791015256 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/Kconfig	2007-08-06 20:01:55.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/drivers/ssb/Kconfig	2007-08-08 16:44:14.000000000 -0400
 @@ -0,0 +1,92 @@
 +menu "Sonics Silicon Backplane"
 +
@@ -91431,8 +91395,8 @@
 +	  If unsure, say N
 +
 +endmenu
---- /dev/null	2007-08-06 19:21:45.791015256 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/scan.c	2007-08-06 20:01:55.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/drivers/ssb/scan.c	2007-08-08 16:44:14.000000000 -0400
 @@ -0,0 +1,413 @@
 +/*
 + * Sonics Silicon Backplane
@@ -91847,8 +91811,8 @@
 +	ssb_iounmap(bus);
 +	goto out;
 +}
---- linux-2.6.22.noarch/drivers/ssb/driver_extif.c.orig	2007-08-06 20:03:45.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/driver_extif.c	2007-08-06 20:02:18.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/drivers/ssb/driver_extif.c	2007-08-08 16:44:14.000000000 -0400
 @@ -0,0 +1,104 @@
 +/*
 + * Sonics Silicon Backplane
@@ -91954,8 +91918,8 @@
 +	*m = extif_read32(extif, SSB_EXTIF_CLOCK_SB);
 +}
 +
---- /dev/null	2007-08-06 19:21:45.791015256 -0400
-+++ linux-2.6.22.noarch/drivers/ssb/driver_pcicore.c	2007-08-06 20:01:55.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/drivers/ssb/driver_pcicore.c	2007-08-08 16:44:14.000000000 -0400
 @@ -0,0 +1,568 @@
 +/*
 + * Sonics Silicon Backplane


Index: kernel-2.6.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-7/kernel-2.6.spec,v
retrieving revision 1.3308
retrieving revision 1.3309
diff -u -r1.3308 -r1.3309
--- kernel-2.6.spec	8 Aug 2007 18:57:18 -0000	1.3308
+++ kernel-2.6.spec	8 Aug 2007 20:59:44 -0000	1.3309
@@ -606,12 +606,13 @@
 Patch671: linux-2.6-libata-pata_ali-fix-hp-detect.patch
 Patch680: linux-2.6-rtl8187.patch
 Patch681: linux-2.6-wireless.patch
-Patch682: linux-2.6-bcm43xx-pci-neuter.patch
-Patch685: linux-2.6-softmac-deadlock.patch
+Patch682: linux-2.6-wireless-pending.patch
+Patch683: linux-2.6-bcm43xx-pci-neuter.patch
 Patch690: git-wireless-dev.patch
 Patch691: linux-2.6-mac80211-local-mcast-filter.patch
 Patch692: linux-2.6-mac80211-probe-hidden-essid.patch
 Patch700: linux-2.6-iwlwifi-fw-name-compat.patch
+Patch701: linux-2.6-rt2x00-usb-1_1-timeout.patch
 Patch710: linux-2.6-e1000-ich9.patch
 Patch712: linux-2.6-sky2-restore-workarounds.patch
 Patch713: linux-2.6-net-atl1-fix-typo-in-dma-setup.patch
@@ -1327,6 +1328,8 @@
 ApplyPatch linux-2.6-rtl8187.patch
 # post-2.6.22 wireless patches from upstream
 ApplyPatch linux-2.6-wireless.patch
+# pre-2.6.24 wireless patches from upstream
+ApplyPatch linux-2.6-wireless-pending.patch
 # Add the new wireless stack and drivers from wireless-dev
 ApplyPatch git-wireless-dev.patch
 # mac80211: Filter locally-originated multicast frames echoed by AP
@@ -1335,10 +1338,10 @@
 ApplyPatch linux-2.6-mac80211-probe-hidden-essid.patch
 # temp compat patch for iwlwifi firmware filenames
 ApplyPatch linux-2.6-iwlwifi-fw-name-compat.patch
+# temp make rt2x00 play nice w/ USB 1.1
+ApplyPatch linux-2.6-rt2x00-usb-1_1-timeout.patch
 # avoid bcm3xx vs bcm43xx-mac80211 PCI ID conflicts
 ApplyPatch linux-2.6-bcm43xx-pci-neuter.patch
-# Fix deadlock in ieee80211 softmac
-ApplyPatch linux-2.6-softmac-deadlock.patch
 
 # add patch from markmc so that e1000 supports ICH9
 ApplyPatch linux-2.6-e1000-ich9.patch
@@ -2322,6 +2325,9 @@
 %endif
 
 %changelog
+* Wed Aug 08 2007 John W. Linville <linville at redhat.com>
+- Update wireless bits (upstream fixes, iwlwifi and bcm43xx updates)
+
 * Wed Aug 08 2007 Chuck Ebbert <cebbert at redhat.com>
 - add xt_statistic.h to header list for iptables
 - detect broken lapic timer on some dual-core AMD systems

linux-2.6-wireless.patch:

Index: linux-2.6-wireless.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-7/linux-2.6-wireless.patch,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- linux-2.6-wireless.patch	27 Jul 2007 21:05:11 -0000	1.7
+++ linux-2.6-wireless.patch	8 Aug 2007 20:59:44 -0000	1.8
@@ -1,5 +1,5 @@
---- linux-2.6.22.noarch/include/linux/ieee80211.h.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/include/linux/ieee80211.h	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/include/linux/ieee80211.h.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/include/linux/ieee80211.h	2007-08-08 16:40:24.000000000 -0400
 @@ -227,6 +227,17 @@ struct ieee80211_cts {
  #define WLAN_CAPABILITY_SHORT_SLOT_TIME	(1<<10)
  #define WLAN_CAPABILITY_DSSS_OFDM	(1<<13)
@@ -18,8 +18,8 @@
  /* Status codes */
  enum ieee80211_statuscode {
  	WLAN_STATUS_SUCCESS = 0,
---- linux-2.6.22.noarch/include/net/cfg80211.h.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/include/net/cfg80211.h	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/include/net/cfg80211.h.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/include/net/cfg80211.h	2007-08-08 16:40:24.000000000 -0400
 @@ -11,6 +11,44 @@
   * Copyright 2006 Johannes Berg <johannes at sipsolutions.net>
   */
@@ -65,8 +65,8 @@
  /* from net/wireless.h */
  struct wiphy;
  
---- linux-2.6.22.noarch/include/net/mac80211.h.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/include/net/mac80211.h	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/include/net/mac80211.h.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/include/net/mac80211.h	2007-08-08 16:40:24.000000000 -0400
 @@ -347,9 +347,16 @@ enum ieee80211_if_types {
   * @mac_addr: pointer to MAC address of the interface. This pointer is valid
   *	until the interface is removed (i.e. it cannot be used after
@@ -113,8 +113,8 @@
  /* Given an sk_buff with a raw 802.11 header at the data pointer this function
   * returns the 802.11 header length in bytes (not including encryption
   * headers). If the data in the sk_buff is too short to contain a valid 802.11
---- linux-2.6.22.noarch/net/ieee80211/ieee80211_wx.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/net/ieee80211/ieee80211_wx.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/net/ieee80211/ieee80211_wx.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/net/ieee80211/ieee80211_wx.c	2007-08-08 16:40:24.000000000 -0400
 @@ -90,14 +90,11 @@ static char *ieee80211_translate_scan(st
  	}
  
@@ -132,8 +132,8 @@
  	start = iwe_stream_add_event(start, stop, &iwe, IW_EV_FREQ_LEN);
  
  	/* Add encryption capability */
---- linux-2.6.22.noarch/net/ieee80211/softmac/ieee80211softmac_assoc.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/net/ieee80211/softmac/ieee80211softmac_assoc.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/net/ieee80211/softmac/ieee80211softmac_assoc.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/net/ieee80211/softmac/ieee80211softmac_assoc.c	2007-08-08 16:40:24.000000000 -0400
 @@ -271,8 +271,11 @@ ieee80211softmac_assoc_work(struct work_
  			 */
  			dprintk(KERN_INFO PFX "Associate: Scanning for networks first.\n");
@@ -147,8 +147,8 @@
  			goto out;
  		} else {
  			mac->associnfo.associating = 0;
---- linux-2.6.22.noarch/net/ieee80211/softmac/ieee80211softmac_module.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/net/ieee80211/softmac/ieee80211softmac_module.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/net/ieee80211/softmac/ieee80211softmac_module.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/net/ieee80211/softmac/ieee80211softmac_module.c	2007-08-08 16:40:24.000000000 -0400
 @@ -456,18 +456,13 @@ void
  ieee80211softmac_add_network_locked(struct ieee80211softmac_device *mac,
  	struct ieee80211softmac_network *add_net)
@@ -208,8 +208,8 @@
  		if (softmac_net->essid.len == essid->len &&
  			!memcmp(softmac_net->essid.data, essid->data, essid->len))
  			return softmac_net;
---- linux-2.6.22.noarch/net/mac80211/ieee80211_iface.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/ieee80211_iface.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/net/mac80211/ieee80211_iface.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/ieee80211_iface.c	2007-08-08 16:40:24.000000000 -0400
 @@ -157,6 +157,8 @@ void ieee80211_if_set_type(struct net_de
  	struct ieee80211_local *local = wdev_priv(dev->ieee80211_ptr);
  	int oldtype = sdata->type;
@@ -227,8 +227,8 @@
  		break;
  	default:
  		printk(KERN_WARNING "%s: %s: Unknown interface type 0x%x",
---- linux-2.6.22.noarch/net/mac80211/ieee80211_ioctl.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/ieee80211_ioctl.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/net/mac80211/ieee80211_ioctl.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/ieee80211_ioctl.c	2007-08-08 16:40:38.000000000 -0400
 @@ -27,20 +27,6 @@
  #include "aes_ccm.h"
  #include "debugfs_key.h"
@@ -410,7 +410,38 @@
  	return 0;
  }
  
-@@ -838,6 +730,67 @@ static int ieee80211_ioctl_giwscan(struc
+@@ -805,17 +697,24 @@ static int ieee80211_ioctl_siwscan(struc
+ 	if (!netif_running(dev))
+ 		return -ENETDOWN;
+ 
+-	if (local->scan_flags & IEEE80211_SCAN_MATCH_SSID) {
+-		if (sdata->type == IEEE80211_IF_TYPE_STA ||
+-		    sdata->type == IEEE80211_IF_TYPE_IBSS) {
++	switch (sdata->type) {
++	case IEEE80211_IF_TYPE_STA:
++	case IEEE80211_IF_TYPE_IBSS:
++		if (local->scan_flags & IEEE80211_SCAN_MATCH_SSID) {
+ 			ssid = sdata->u.sta.ssid;
+ 			ssid_len = sdata->u.sta.ssid_len;
+-		} else if (sdata->type == IEEE80211_IF_TYPE_AP) {
++		}
++		break;
++	case IEEE80211_IF_TYPE_AP:
++		if (local->scan_flags & IEEE80211_SCAN_MATCH_SSID) {
+ 			ssid = sdata->u.ap.ssid;
+ 			ssid_len = sdata->u.ap.ssid_len;
+-		} else
+-			return -EINVAL;
++		}
++		break;
++	default:
++		return -EOPNOTSUPP;
+ 	}
++
+ 	return ieee80211_sta_req_scan(dev, ssid, ssid_len);
+ }
+ 
+@@ -838,6 +737,67 @@ static int ieee80211_ioctl_giwscan(struc
  }
  
  
@@ -478,7 +509,7 @@
  static int ieee80211_ioctl_siwrts(struct net_device *dev,
  				  struct iw_request_info *info,
  				  struct iw_param *rts, char *extra)
-@@ -970,118 +923,6 @@ static int ieee80211_ioctl_giwretry(stru
+@@ -970,118 +930,6 @@ static int ieee80211_ioctl_giwretry(stru
  	return 0;
  }
  
@@ -597,7 +628,7 @@
  static void ieee80211_key_enable_hwaccel(struct ieee80211_local *local,
  					 struct ieee80211_key *key)
  {
-@@ -1205,24 +1046,11 @@ static int ieee80211_ioctl_prism2_param(
+@@ -1205,24 +1053,11 @@ static int ieee80211_ioctl_prism2_param(
  			sdata->ieee802_1x = value;
  		break;
  
@@ -626,7 +657,7 @@
  		break;
  
  	case PRISM2_PARAM_PREAMBLE:
-@@ -1251,10 +1079,6 @@ static int ieee80211_ioctl_prism2_param(
+@@ -1251,10 +1086,6 @@ static int ieee80211_ioctl_prism2_param(
  		local->next_mode = value;
  		break;
  
@@ -637,7 +668,7 @@
  	case PRISM2_PARAM_RADIO_ENABLED:
  		ret = ieee80211_ioctl_set_radio_enabled(dev, value);
  		break;
-@@ -1269,22 +1093,6 @@ static int ieee80211_ioctl_prism2_param(
+@@ -1269,22 +1100,6 @@ static int ieee80211_ioctl_prism2_param(
  		local->sta_antenna_sel = value;
  		break;
  
@@ -660,7 +691,7 @@
  	case PRISM2_PARAM_TX_POWER_REDUCTION:
  		if (value < 0)
  			ret = -EINVAL;
-@@ -1364,20 +1172,8 @@ static int ieee80211_ioctl_get_prism2_pa
+@@ -1364,20 +1179,8 @@ static int ieee80211_ioctl_get_prism2_pa
  		*param = sdata->ieee802_1x;
  		break;
  
@@ -682,7 +713,7 @@
  		break;
  
  	case PRISM2_PARAM_PREAMBLE:
-@@ -1403,14 +1199,6 @@ static int ieee80211_ioctl_get_prism2_pa
+@@ -1403,14 +1206,6 @@ static int ieee80211_ioctl_get_prism2_pa
  		*param = local->sta_antenna_sel;
  		break;
  
@@ -697,7 +728,7 @@
  	case PRISM2_PARAM_TX_POWER_REDUCTION:
  		*param = local->hw.conf.tx_power_reduction;
  		break;
-@@ -1778,8 +1566,8 @@ static const iw_handler ieee80211_handle
+@@ -1778,8 +1573,8 @@ static const iw_handler ieee80211_handle
  	(iw_handler) NULL,				/* SIOCGIWNICKN */
  	(iw_handler) NULL,				/* -- hole -- */
  	(iw_handler) NULL,				/* -- hole -- */
@@ -708,8 +739,8 @@
  	(iw_handler) ieee80211_ioctl_siwrts,		/* SIOCSIWRTS */
  	(iw_handler) ieee80211_ioctl_giwrts,		/* SIOCGIWRTS */
  	(iw_handler) ieee80211_ioctl_siwfrag,		/* SIOCSIWFRAG */
---- linux-2.6.22.noarch/net/mac80211/ieee80211_rate.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/ieee80211_rate.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/net/mac80211/ieee80211_rate.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/ieee80211_rate.c	2007-08-08 16:40:24.000000000 -0400
 @@ -24,11 +24,10 @@ int ieee80211_rate_control_register(stru
  {
  	struct rate_control_alg *alg;
@@ -723,8 +754,8 @@
  	alg->ops = ops;
  
  	mutex_lock(&rate_ctrl_mutex);
---- linux-2.6.22.noarch/net/mac80211/Makefile.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/Makefile	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/net/mac80211/Makefile.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/Makefile	2007-08-08 16:40:24.000000000 -0400
 @@ -13,6 +13,7 @@ mac80211-objs := \
  	ieee80211_iface.o \
  	ieee80211_rate.o \
@@ -733,8 +764,8 @@
  	tkip.o \
  	aes_ccm.o \
  	wme.o \
---- /dev/null	2007-07-20 08:31:48.355055592 -0400
-+++ linux-2.6.22.noarch/net/mac80211/regdomain.c	2007-07-20 17:06:56.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/net/mac80211/regdomain.c	2007-08-08 16:40:24.000000000 -0400
 @@ -0,0 +1,158 @@
 +/*
 + * Copyright 2002-2005, Instant802 Networks, Inc.
@@ -894,8 +925,8 @@
 +		channel_range = ieee80211_mkk_channels;
 +}
 +
---- linux-2.6.22.noarch/net/mac80211/hostapd_ioctl.h.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/hostapd_ioctl.h	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/net/mac80211/hostapd_ioctl.h.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/hostapd_ioctl.h	2007-08-08 16:40:24.000000000 -0400
 @@ -26,24 +26,16 @@
   * mess shall be deleted completely. */
  enum {
@@ -921,8 +952,8 @@
  	PRISM2_PARAM_TX_POWER_REDUCTION = 1022,
  	PRISM2_PARAM_KEY_TX_RX_THRESHOLD = 1024,
  	PRISM2_PARAM_DEFAULT_WEP_ONLY = 1026,
---- linux-2.6.22.noarch/net/mac80211/ieee80211_common.h.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/ieee80211_common.h	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/net/mac80211/ieee80211_common.h.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/ieee80211_common.h	2007-08-08 16:40:24.000000000 -0400
 @@ -47,21 +47,16 @@ enum ieee80211_msg_type {
  	ieee80211_msg_normal = 0,
  	ieee80211_msg_tx_callback_ack = 1,
@@ -947,8 +978,8 @@
  struct ieee80211_msg_key_notification {
  	int tx_rx_count;
  	char ifname[IFNAMSIZ];
---- linux-2.6.22.noarch/net/mac80211/ieee80211.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/ieee80211.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/net/mac80211/ieee80211.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/ieee80211.c	2007-08-08 16:40:38.000000000 -0400
 @@ -24,6 +24,7 @@
  #include <linux/compiler.h>
  #include <linux/bitmap.h>
@@ -1256,7 +1287,7 @@
  	}
  
  	skb = tx.skb; /* handlers are allowed to change skb */
-@@ -1467,8 +1646,7 @@ static int ieee80211_master_start_xmit(s
+@@ -1467,11 +1646,11 @@ static int ieee80211_master_start_xmit(s
  	}
  	osdata = IEEE80211_DEV_TO_SUB_IF(odev);
  
@@ -1266,7 +1297,11 @@
  	if (skb_headroom(skb) < headroom) {
  		if (pskb_expand_head(skb, headroom, 0, GFP_ATOMIC)) {
  			dev_kfree_skb(skb);
-@@ -1494,6 +1672,56 @@ static int ieee80211_master_start_xmit(s
++			dev_put(odev);
+ 			return 0;
+ 		}
+ 	}
+@@ -1494,6 +1673,56 @@ static int ieee80211_master_start_xmit(s
  }
  
  
@@ -1323,7 +1358,7 @@
  /**
   * ieee80211_subif_start_xmit - netif start_xmit function for Ethernet-type
   * subinterfaces (wlan#, WDS, and VLAN interfaces)
-@@ -1509,8 +1737,8 @@ static int ieee80211_master_start_xmit(s
+@@ -1509,8 +1738,8 @@ static int ieee80211_master_start_xmit(s
   * encapsulated packet will then be passed to master interface, wlan#.11, for
   * transmission (through low-level driver).
   */
@@ -1334,7 +1369,7 @@
  {
  	struct ieee80211_local *local = wdev_priv(dev->ieee80211_ptr);
  	struct ieee80211_tx_packet_data *pkt_data;
-@@ -1619,7 +1847,7 @@ static int ieee80211_subif_start_xmit(st
+@@ -1619,7 +1848,7 @@ static int ieee80211_subif_start_xmit(st
  	 * build in headroom in __dev_alloc_skb() (linux/skbuff.h) and
  	 * alloc_skb() (net/core/skbuff.c)
  	 */
@@ -1343,7 +1378,7 @@
  	head_need -= skb_headroom(skb);
  
  	/* We are going to modify skb data, so make a copy of it if happens to
-@@ -1658,7 +1886,7 @@ static int ieee80211_subif_start_xmit(st
+@@ -1658,7 +1887,7 @@ static int ieee80211_subif_start_xmit(st
  
  	pkt_data = (struct ieee80211_tx_packet_data *)skb->cb;
  	memset(pkt_data, 0, sizeof(struct ieee80211_tx_packet_data));
@@ -1352,7 +1387,7 @@
  	pkt_data->mgmt_iface = (sdata->type == IEEE80211_IF_TYPE_MGMT);
  	pkt_data->do_not_encrypt = no_encrypt;
  
-@@ -1706,9 +1934,9 @@ ieee80211_mgmt_start_xmit(struct sk_buff
+@@ -1706,9 +1935,9 @@ ieee80211_mgmt_start_xmit(struct sk_buff
  		return 0;
  	}
  
@@ -1365,7 +1400,7 @@
  			dev_kfree_skb(skb);
  			return 0;
  		}
-@@ -1847,12 +2075,12 @@ struct sk_buff * ieee80211_beacon_get(st
+@@ -1847,12 +2076,12 @@ struct sk_buff * ieee80211_beacon_get(st
  	bh_len = ap->beacon_head_len;
  	bt_len = ap->beacon_tail_len;
  
@@ -1380,7 +1415,7 @@
  	memcpy(skb_put(skb, bh_len), b_head, bh_len);
  
  	ieee80211_include_sequence(sdata, (struct ieee80211_hdr *)skb->data);
-@@ -2376,8 +2604,7 @@ static void ieee80211_start_hard_monitor
+@@ -2376,8 +2605,7 @@ static void ieee80211_start_hard_monitor
  	struct ieee80211_if_init_conf conf;
  
  	if (local->open_count && local->open_count == local->monitors &&
@@ -1390,7 +1425,7 @@
  		conf.if_id = -1;
  		conf.type = IEEE80211_IF_TYPE_MNTR;
  		conf.mac_addr = NULL;
-@@ -2420,21 +2647,14 @@ static int ieee80211_open(struct net_dev
+@@ -2420,21 +2648,14 @@ static int ieee80211_open(struct net_dev
  	}
  	ieee80211_start_soft_monitor(local);
  
@@ -1420,7 +1455,7 @@
  	}
  
  	if (local->open_count == 0) {
-@@ -2941,34 +3161,6 @@ int ieee80211_radar_status(struct ieee80
+@@ -2941,34 +3162,6 @@ int ieee80211_radar_status(struct ieee80
  }
  EXPORT_SYMBOL(ieee80211_radar_status);
  
@@ -1455,7 +1490,7 @@
  
  static void ap_sta_ps_start(struct net_device *dev, struct sta_info *sta)
  {
-@@ -4284,6 +4476,9 @@ void ieee80211_tx_status(struct ieee8021
+@@ -4284,6 +4477,9 @@ void ieee80211_tx_status(struct ieee8021
  	struct ieee80211_local *local = hw_to_local(hw);
  	u16 frag, type;
  	u32 msg_type;
@@ -1465,7 +1500,7 @@
  
  	if (!status) {
  		printk(KERN_ERR
-@@ -4395,27 +4590,100 @@ void ieee80211_tx_status(struct ieee8021
+@@ -4395,27 +4591,100 @@ void ieee80211_tx_status(struct ieee8021
  			local->dot11FailedCount++;
  	}
  
@@ -1578,7 +1613,7 @@
  }
  EXPORT_SYMBOL(ieee80211_tx_status);
  
-@@ -4619,6 +4887,9 @@ struct ieee80211_hw *ieee80211_alloc_hw(
+@@ -4619,6 +4888,9 @@ struct ieee80211_hw *ieee80211_alloc_hw(
  			 ((sizeof(struct ieee80211_local) +
  			   NETDEV_ALIGN_CONST) & ~NETDEV_ALIGN_CONST);
  
@@ -1588,7 +1623,7 @@
  	local->ops = ops;
  
  	/* for now, mdev needs sub_if_data :/ */
-@@ -4647,8 +4918,6 @@ struct ieee80211_hw *ieee80211_alloc_hw(
+@@ -4647,8 +4919,6 @@ struct ieee80211_hw *ieee80211_alloc_hw(
  	local->short_retry_limit = 7;
  	local->long_retry_limit = 4;
  	local->hw.conf.radio_enabled = 1;
@@ -1597,7 +1632,7 @@
  
  	local->enabled_modes = (unsigned int) -1;
  
-@@ -4712,6 +4981,14 @@ int ieee80211_register_hw(struct ieee802
+@@ -4712,6 +4982,14 @@ int ieee80211_register_hw(struct ieee802
  		goto fail_workqueue;
  	}
  
@@ -1612,7 +1647,7 @@
  	debugfs_hw_add(local);
  
  	local->hw.conf.beacon_int = 1000;
-@@ -4818,7 +5095,7 @@ int ieee80211_register_hwmode(struct iee
+@@ -4818,7 +5096,7 @@ int ieee80211_register_hwmode(struct iee
  	}
  
  	if (!(hw->flags & IEEE80211_HW_DEFAULT_REG_DOMAIN_CONFIGURED))
@@ -1621,7 +1656,7 @@
  
  	return 0;
  }
-@@ -4969,6 +5246,7 @@ static int __init ieee80211_init(void)
+@@ -4969,6 +5247,7 @@ static int __init ieee80211_init(void)
  	}
  
  	ieee80211_debugfs_netdev_init();
@@ -1629,8 +1664,8 @@
  
  	return 0;
  }
---- linux-2.6.22.noarch/net/mac80211/rc80211_simple.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/rc80211_simple.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/net/mac80211/rc80211_simple.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/rc80211_simple.c	2007-08-08 16:40:24.000000000 -0400
 @@ -187,9 +187,13 @@ static void rate_control_simple_tx_statu
  		}
  #endif
@@ -1669,8 +1704,8 @@
  	}
  }
  
---- linux-2.6.22.noarch/net/mac80211/ieee80211_i.h.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/ieee80211_i.h	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/net/mac80211/ieee80211_i.h.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/ieee80211_i.h	2007-08-08 16:40:24.000000000 -0400
 @@ -99,6 +99,12 @@ struct ieee80211_sta_bss {
  	int probe_resp;
  	unsigned long last_update;
@@ -1753,8 +1788,8 @@
  /* for wiphy privid */
  extern void *mac80211_wiphy_privid;
  
---- linux-2.6.22.noarch/net/mac80211/ieee80211_sta.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/ieee80211_sta.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/net/mac80211/ieee80211_sta.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/ieee80211_sta.c	2007-08-08 16:40:24.000000000 -0400
 @@ -25,7 +25,6 @@
  #include <linux/wireless.h>
  #include <linux/random.h>
@@ -1984,8 +2019,8 @@
  	return -1;
  }
  
---- linux-2.6.22.noarch/net/mac80211/debugfs_netdev.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/net/mac80211/debugfs_netdev.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/net/mac80211/debugfs_netdev.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/net/mac80211/debugfs_netdev.c	2007-08-08 16:40:38.000000000 -0400
 @@ -118,7 +118,7 @@ static ssize_t ieee80211_if_fmt_flags(
  			 sdata->u.sta.authenticated ? "AUTH\n" : "",
  			 sdata->u.sta.associated ? "ASSOC\n" : "",
@@ -1995,7 +2030,22 @@
  }
  __IEEE80211_IF_FILE(flags);
  
-@@ -397,6 +397,8 @@ static int netdev_notify(struct notifier
+@@ -271,9 +271,11 @@ static void add_files(struct ieee80211_s
+ 	}
+ }
+ 
+-#define DEBUGFS_DEL(name, type)\
+-	debugfs_remove(sdata->debugfs.type.name);\
+-	sdata->debugfs.type.name = NULL;
++#define DEBUGFS_DEL(name, type)					\
++	do {							\
++		debugfs_remove(sdata->debugfs.type.name);	\
++		sdata->debugfs.type.name = NULL;		\
++	} while (0)
+ 
+ static void del_sta_files(struct ieee80211_sub_if_data *sdata)
+ {
+@@ -397,6 +399,8 @@ static int netdev_notify(struct notifier
  			 void *ndev)
  {
  	struct net_device *dev = ndev;
@@ -2004,7 +2054,7 @@
  	char buf[10+IFNAMSIZ];
  
  	if (state != NETDEV_CHANGENAME)
-@@ -408,10 +410,11 @@ static int netdev_notify(struct notifier
+@@ -408,10 +412,11 @@ static int netdev_notify(struct notifier
  	if (dev->ieee80211_ptr->wiphy->privid != mac80211_wiphy_privid)
  		return 0;
  
@@ -2020,15 +2070,15 @@
  	return 0;
  }
 --- linux-2.6.22.noarch/net/wireless/Makefile.orig	2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22.noarch/net/wireless/Makefile	2007-07-20 17:07:18.000000000 -0400
++++ linux-2.6.22.noarch/net/wireless/Makefile	2007-08-08 16:40:24.000000000 -0400
 @@ -1,4 +1,4 @@
  obj-$(CONFIG_WIRELESS_EXT) += wext.o
  obj-$(CONFIG_CFG80211) += cfg80211.o
  
 -cfg80211-y += core.o sysfs.o
 +cfg80211-y += core.o sysfs.o radiotap.o
---- /dev/null	2007-07-20 08:31:48.355055592 -0400
-+++ linux-2.6.22.noarch/net/wireless/radiotap.c	2007-07-20 17:07:18.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/net/wireless/radiotap.c	2007-08-08 16:40:24.000000000 -0400
 @@ -0,0 +1,257 @@
 +/*
 + * Radiotap parser
@@ -2287,8 +2337,8 @@
 +	return -ENOENT;
 +}
 +EXPORT_SYMBOL(ieee80211_radiotap_iterator_next);
---- linux-2.6.22.noarch/drivers/net/wireless/airo.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/airo.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/airo.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/airo.c	2007-08-08 16:40:25.000000000 -0400
 @@ -52,6 +52,8 @@
  
  #include "airo.h"
@@ -2904,8 +2954,8 @@
  			return -EIO;
  		return 0;
  
---- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_chip.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_chip.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_chip.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_chip.c	2007-08-08 16:40:25.000000000 -0400
 @@ -49,8 +49,9 @@ void zd_chip_clear(struct zd_chip *chip)
  	ZD_MEMCLEAR(chip, sizeof(*chip));
  }
@@ -3086,8 +3136,8 @@
  		return 0;
  
  	ZD_ASSERT(mutex_is_locked(&chip->mutex));
---- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/Makefile.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/Makefile	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/Makefile.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/Makefile	2007-08-08 16:40:25.000000000 -0400
 @@ -3,7 +3,7 @@ obj-$(CONFIG_ZD1211RW) += zd1211rw.o
  zd1211rw-objs := zd_chip.o zd_ieee80211.o \
  		zd_mac.o zd_netdev.o \
@@ -3097,8 +3147,8 @@
  		zd_rf.o zd_usb.o zd_util.o
  
  ifeq ($(CONFIG_ZD1211RW_DEBUG),y)
---- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf.h.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf.h	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf.h.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf.h	2007-08-08 16:40:25.000000000 -0400
 @@ -26,7 +26,7 @@
  #define AL2210_RF			0x7
  #define MAXIM_NEW_RF			0x8
@@ -3160,8 +3210,8 @@
 +int zd_rf_init_uw2453(struct zd_rf *rf);
  
  #endif /* _ZD_RF_H */
---- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_chip.h.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_chip.h	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_chip.h.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_chip.h	2007-08-08 16:40:25.000000000 -0400
 @@ -608,6 +608,9 @@ enum {
  #define CR_ZD1211B_TXOP			CTL_REG(0x0b20)
  #define CR_ZD1211B_RETRY_MAX		CTL_REG(0x0b28)
@@ -3215,8 +3265,8 @@
  int zd_write_mac_addr(struct zd_chip *chip, const u8 *mac_addr);
  int zd_chip_switch_radio_on(struct zd_chip *chip);
  int zd_chip_switch_radio_off(struct zd_chip *chip);
---- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_al2230.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_al2230.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_al2230.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_al2230.c	2007-08-08 16:40:25.000000000 -0400
 @@ -21,6 +21,8 @@
  #include "zd_usb.h"
  #include "zd_chip.h"
@@ -3278,8 +3328,8 @@
 +	rf->patch_cck_gain = 1;
  	return 0;
  }
---- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_rf2959.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_rf2959.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_rf2959.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_rf2959.c	2007-08-08 16:40:25.000000000 -0400
 @@ -265,7 +265,7 @@ int zd_rf_init_rf2959(struct zd_rf *rf)
  {
  	struct zd_chip *chip = zd_rf_to_chip(rf);
@@ -3289,8 +3339,8 @@
  		dev_err(zd_chip_dev(chip),
  		       "RF2959 is currently not supported for ZD1211B"
  		       " devices\n");
---- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_usb.h.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_usb.h	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_usb.h.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_usb.h	2007-08-08 16:40:25.000000000 -0400
 @@ -188,6 +188,7 @@ struct zd_usb {
  	struct zd_usb_rx rx;
  	struct zd_usb_tx tx;
@@ -3308,8 +3358,8 @@
  extern struct workqueue_struct *zd_workqueue;
  
  #endif /* _ZD_USB_H */
---- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf.c	2007-08-08 16:40:25.000000000 -0400
 @@ -34,7 +34,7 @@ static const char * const rfs[] = {
  	[AL2210_RF]	= "AL2210_RF",
  	[MAXIM_NEW_RF]	= "MAXIM_NEW_RF",
@@ -3376,8 +3426,8 @@
  	rf->type = type;
  
  	r = zd_chip_lock_phy_regs(chip);
---- /dev/null	2007-07-20 08:31:48.355055592 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_uw2453.c	2007-07-20 17:06:56.000000000 -0400
+--- /dev/null	2007-08-08 08:21:33.519325700 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_uw2453.c	2007-08-08 16:40:25.000000000 -0400
 @@ -0,0 +1,534 @@
 +/* zd_rf_uw2453.c: Functions for the UW2453 RF controller
 + *
@@ -3913,8 +3963,8 @@
 +	return 0;
 +}
 +
---- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_mac.h.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_mac.h	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_mac.h.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_mac.h	2007-08-08 16:40:25.000000000 -0400
 @@ -189,7 +189,8 @@ int zd_mac_init(struct zd_mac *mac,
  		struct usb_interface *intf);
  void zd_mac_clear(struct zd_mac *mac);
@@ -3925,8 +3975,8 @@
  
  int zd_mac_open(struct net_device *netdev);
  int zd_mac_stop(struct net_device *netdev);
---- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_al7230b.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_al7230b.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_al7230b.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_rf_al7230b.c	2007-08-08 16:40:25.000000000 -0400
 @@ -473,7 +473,7 @@ int zd_rf_init_al7230b(struct zd_rf *rf)
  {
  	struct zd_chip *chip = zd_rf_to_chip(rf);
@@ -3944,8 +3994,8 @@
  	}
  
  	rf->switch_radio_off = al7230b_switch_radio_off;
---- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_usb.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_usb.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_usb.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_usb.c	2007-08-08 16:40:25.000000000 -0400
 @@ -15,7 +15,6 @@
   * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
   */
@@ -4157,8 +4207,8 @@
  	if (r) {
  		dev_dbg_f(&intf->dev,
  		         "couldn't initialize mac. Error number %d\n", r);
---- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_mac.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_mac.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_mac.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/zd1211rw/zd_mac.c	2007-08-08 16:40:38.000000000 -0400
 @@ -86,38 +86,46 @@ out:
  	return r;
  }
@@ -4262,6 +4312,15 @@
  
  	spin_lock_irqsave(&mac->lock, flags);
  	memcpy(netdev->dev_addr, addr->sa_data, ETH_ALEN);
+@@ -801,7 +822,7 @@ static void cs_set_control(struct zd_mac
+ 		cs->control |= ZD_CS_MULTICAST;
+ 
+ 	/* PS-POLL */
+-	if (stype == IEEE80211_STYPE_PSPOLL)
++	if (ftype == IEEE80211_FTYPE_CTL && stype == IEEE80211_STYPE_PSPOLL)
+ 		cs->control |= ZD_CS_PS_POLL_FRAME;
+ 
+ 	/* Unicast data frames over the threshold should have RTS */
 @@ -855,7 +876,7 @@ static int fill_ctrlset(struct zd_mac *m
  	/* ZD1211B: Computing the length difference this way, gives us
  	 * flexibility to compute the packet length.
@@ -4271,8 +4330,8 @@
  			packet_length - frag_len : packet_length);
  
  	/*
---- linux-2.6.22.noarch/drivers/net/wireless/libertas/wext.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/libertas/wext.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/libertas/wext.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/libertas/wext.c	2007-08-08 16:40:25.000000000 -0400
 @@ -1719,9 +1719,6 @@ static int wlan_set_encodeext(struct net
  			pkey->type = KEY_TYPE_ID_TKIP;
  		} else if (alg == IW_ENCODE_ALG_CCMP) {
@@ -4283,8 +4342,8 @@
  		}
  
  		/* If WPA isn't enabled yet, do that now */
---- linux-2.6.22.noarch/drivers/net/wireless/libertas/rx.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/libertas/rx.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/libertas/rx.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/libertas/rx.c	2007-08-08 16:40:25.000000000 -0400
 @@ -439,7 +439,6 @@ static int process_rxed_802_11_packet(wl
  	ret = 0;
  
@@ -4293,8 +4352,8 @@
  	lbs_deb_leave_args(LBS_DEB_RX, "ret %d", ret);
  	return ret;
  }
---- linux-2.6.22.noarch/drivers/net/wireless/libertas/main.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/libertas/main.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/libertas/main.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/libertas/main.c	2007-08-08 16:40:25.000000000 -0400
 @@ -613,6 +613,7 @@ static int wlan_service_main_thread(void
  
  	init_waitqueue_entry(&wait, current);
@@ -4303,8 +4362,8 @@
  	for (;;) {
  		lbs_deb_thread( "main-thread 111: intcounter=%d "
  		       "currenttxskb=%p dnld_sent=%d\n",
---- linux-2.6.22.noarch/drivers/net/wireless/libertas/cmd.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/libertas/cmd.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/libertas/cmd.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/libertas/cmd.c	2007-08-08 16:40:25.000000000 -0400
 @@ -240,7 +240,7 @@ static int wlan_cmd_802_11_enable_rsn(wl
  		if (*enable)
  			penableRSN->enable = cpu_to_le16(cmd_enable_rsn);
@@ -4314,8 +4373,8 @@
  	}
  
  	lbs_deb_leave(LBS_DEB_CMD);
---- linux-2.6.22.noarch/drivers/net/wireless/ipw2100.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/ipw2100.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/ipw2100.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/ipw2100.c	2007-08-08 16:40:25.000000000 -0400
 @@ -1768,7 +1768,8 @@ static int ipw2100_up(struct ipw2100_pri
  
  		if (priv->stop_rf_kill) {
@@ -4377,8 +4436,8 @@
  			break;
  		default:
  			timeout = timeout_duration[level - 1] / 1000;
---- linux-2.6.22.noarch/drivers/net/wireless/prism54/islpci_hotplug.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/prism54/islpci_hotplug.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/prism54/islpci_hotplug.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/prism54/islpci_hotplug.c	2007-08-08 16:40:25.000000000 -0400
 @@ -87,7 +87,6 @@ static struct pci_driver prism54_driver 
  	.remove = prism54_remove,
  	.suspend = prism54_suspend,
@@ -4387,8 +4446,8 @@
  };
  
  /******************************************************************************
---- linux-2.6.22.noarch/drivers/net/wireless/prism54/isl_ioctl.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/prism54/isl_ioctl.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/prism54/isl_ioctl.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/prism54/isl_ioctl.c	2007-08-08 16:40:25.000000000 -0400
 @@ -1853,7 +1853,6 @@ prism54_del_mac(struct net_device *ndev,
  	islpci_private *priv = netdev_priv(ndev);
  	struct islpci_acl *acl = &priv->acl;
@@ -4462,8 +4521,8 @@
  		kfree(bss);
  	}
  }
---- linux-2.6.22.noarch/drivers/net/wireless/ipw2200.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/ipw2200.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/ipw2200.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/ipw2200.c	2007-08-08 16:40:25.000000000 -0400
 @@ -70,7 +70,7 @@
  #define VQ
  #endif
@@ -4545,8 +4604,8 @@
  		goto none;
  	}
  
---- linux-2.6.22.noarch/drivers/net/wireless/wl3501_cs.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/wl3501_cs.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/wl3501_cs.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/wl3501_cs.c	2007-08-08 16:40:25.000000000 -0400
 @@ -1011,7 +1011,7 @@ static inline void wl3501_md_ind_interru
  	} else {
  		skb->dev = dev;
@@ -4556,8 +4615,8 @@
  		wl3501_receive(this, skb->data, pkt_len);
  		skb_put(skb, pkt_len);
  		skb->protocol	= eth_type_trans(skb, dev);
---- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_ap.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_ap.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_ap.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_ap.c	2007-08-08 16:40:25.000000000 -0400
 @@ -326,7 +326,6 @@ static int ap_control_proc_read(char *pa
  	char *p = page;
  	struct ap_data *ap = (struct ap_data *) data;
@@ -4682,8 +4741,8 @@
  		if (sta->ap)
  			hostap_wds_link_oper(local, sta->addr, WDS_ADD);
  	}
---- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_config.h.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_config.h	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_config.h.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_config.h	2007-08-08 16:40:25.000000000 -0400
 @@ -1,8 +1,6 @@
  #ifndef HOSTAP_CONFIG_H
  #define HOSTAP_CONFIG_H
@@ -4693,8 +4752,8 @@
  /* In the previous versions of Host AP driver, support for user space version
   * of IEEE 802.11 management (hostapd) used to be disabled in the default
   * configuration. From now on, support for hostapd is always included and it is
---- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_pci.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_pci.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_pci.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_pci.c	2007-08-08 16:40:25.000000000 -0400
 @@ -20,7 +20,6 @@
  #include "hostap_wlan.h"
  
@@ -4735,8 +4794,8 @@
  }
  
  
---- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_cs.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_cs.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_cs.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_cs.c	2007-08-08 16:40:25.000000000 -0400
 @@ -22,7 +22,6 @@
  #include "hostap_wlan.h"
  
@@ -4768,8 +4827,8 @@
  }
  
  
---- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_main.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_main.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_main.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_main.c	2007-08-08 16:40:25.000000000 -0400
 @@ -37,7 +37,6 @@
  MODULE_AUTHOR("Jouni Malinen");
  MODULE_DESCRIPTION("Host AP common routines");
@@ -4778,8 +4837,8 @@
  
  #define TX_TIMEOUT (2 * HZ)
  
---- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_ioctl.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_ioctl.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_ioctl.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_ioctl.c	2007-08-08 16:40:25.000000000 -0400
 @@ -3893,8 +3893,6 @@ static void prism2_get_drvinfo(struct ne
  	local = iface->local;
  
@@ -4789,8 +4848,8 @@
  	snprintf(info->fw_version, sizeof(info->fw_version) - 1,
  		 "%d.%d.%d", (local->sta_fw_ver >> 16) & 0xff,
  		 (local->sta_fw_ver >> 8) & 0xff,
---- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_plx.c.orig	2007-07-20 17:06:50.000000000 -0400
-+++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_plx.c	2007-07-20 17:06:56.000000000 -0400
+--- linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_plx.c.orig	2007-07-08 19:32:17.000000000 -0400
++++ linux-2.6.22.noarch/drivers/net/wireless/hostap/hostap_plx.c	2007-08-08 16:40:25.000000000 -0400
 @@ -23,7 +23,6 @@
  #include "hostap_wlan.h"
  


--- linux-2.6-softmac-deadlock.patch DELETED ---




More information about the fedora-extras-commits mailing list