linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] compat-2.6: compat.diff update for master-2009-02-18 wireless-testing.
@ 2009-02-19 18:29 Hauke Mehrtens
  2009-02-19 21:45 ` Luis R. Rodriguez
  0 siblings, 1 reply; 4+ messages in thread
From: Hauke Mehrtens @ 2009-02-19 18:29 UTC (permalink / raw)
  To: Luis R. Rodriguez; +Cc: linux-wireless

[-- Attachment #1: Type: text/plain, Size: 204 bytes --]

Hi Luis,

this patch makes compat-wireless work with the latest wireless-testing
again.
It also adds the at76c50x-usb driver.
I tested b43 with kernel 2.6.27 and rtl8187 with kernel 2.6.29-rc5.

--
Hauke

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-compat-wireless-compat.diff-update-for-master-2009.patch --]
[-- Type: text/x-diff; name="0001-compat-wireless-compat.diff-update-for-master-2009.patch", Size: 20182 bytes --]

From 1bc134361dd56726fa3c9dfaeee2d59aa61f8a0d Mon Sep 17 00:00:00 2001
From: Hauke Mehrtens <hauke@hauke-m.de>
Date: Thu, 19 Feb 2009 18:24:32 +0100
Subject: [PATCH] compat-wireless: compat.diff update for master-2009-02-18 wireless-testing.
 Revert commit 65949939dd23bcde83dc0fa56dd5932eda38c050 in wireless-testing for kernels older than 2.6.30.
 Add at76c50x-usb driver.

---
 Makefile                |   16 +-
 compat/compat.diff      |  513 +++++++++++++++++++++++++++++++++++++++++++++--
 config.mk               |   11 +-
 scripts/admin-update.sh |    5 +-
 4 files changed, 509 insertions(+), 36 deletions(-)

diff --git a/Makefile b/Makefile
index 95b404b..4b0a7e5 100644
--- a/Makefile
+++ b/Makefile
@@ -104,14 +104,16 @@ install: uninstall modules
 	@$(MODPROBE) -l cfg80211
 	@$(MODPROBE) -l lib80211
 	@$(MODPROBE) -l adm8211
-	@$(MODPROBE) -l at76_usb
+	@$(MODPROBE) -l at76c50x-usb
 	@$(MODPROBE) -l ath5k
 	@$(MODPROBE) -l ath9k
 	@$(MODPROBE) -l b43
 	@$(MODPROBE) -l b43legacy
+	@$(MODPROBE) -l b44
 	@$(MODPROBE) -l ssb
+	@$(MODPROBE) -l rc80211_simple
+	@$(MODPROBE) -l iwlcore
 	@$(MODPROBE) -l iwl3945
-	@$(MODPROBE) -l iwl4965
 	@$(MODPROBE) -l iwlagn
 	@$(MODPROBE) -l ipw2100
 	@$(MODPROBE) -l ipw2200
@@ -122,8 +124,8 @@ install: uninstall modules
 	@$(MODPROBE) -l libertas_tf
 	@$(MODPROBE) -l libertas_tf_usb
 	@$(MODPROBE) -l ub8xxx
-	@$(MODPROBE) -l p54_pci
-	@$(MODPROBE) -l p54_usb
+	@$(MODPROBE) -l p54pci
+	@$(MODPROBE) -l p54usb
 	@$(MODPROBE) -l rt2400pci
 	@$(MODPROBE) -l rt2500pci
 	@$(MODPROBE) -l rt2500usb
@@ -164,15 +166,16 @@ uninstall:
 	@$(MODPROBE) -l cfg80211
 	@$(MODPROBE) -l lib80211
 	@$(MODPROBE) -l adm8211
+	@$(MODPROBE) -l at76c50x-usb
 	@$(MODPROBE) -l ath5k
 	@$(MODPROBE) -l ath9k
-	@$(MODPROBE) -l at76_usb
 	@$(MODPROBE) -l b43
 	@$(MODPROBE) -l b43legacy
+	@$(MODPROBE) -l b44
 	@$(MODPROBE) -l ssb
 	@$(MODPROBE) -l rc80211_simple
+	@$(MODPROBE) -l iwlcore
 	@$(MODPROBE) -l iwl3945
-	@$(MODPROBE) -l iwl4965
 	@$(MODPROBE) -l iwlagn
 	@$(MODPROBE) -l ipw2100
 	@$(MODPROBE) -l ipw2200
@@ -182,7 +185,6 @@ uninstall:
 	@$(MODPROBE) -l libertas_cs
 	@$(MODPROBE) -l libertas_tf
 	@$(MODPROBE) -l libertas_tf_usb
-	@$(MODPROBE) -l mac80211
 	@$(MODPROBE) -l ub8xxx
 	@$(MODPROBE) -l p54pci
 	@$(MODPROBE) -l p54usb
diff --git a/compat/compat.diff b/compat/compat.diff
index 1b93356..ce98e63 100644
--- a/compat/compat.diff
+++ b/compat/compat.diff
@@ -93,25 +93,25 @@ diff --git a/net/mac80211/wme.c b/net/mac80211/wme.c
 index a0c860f..9c6f214 100644
 --- a/net/mac80211/wme.c
 +++ b/net/mac80211/wme.c
-@@ -124,6 +124,7 @@ u16 ieee80211_select_queue(struct net_device *dev, struct sk_buff *skb)
+@@ -122,6 +122,7 @@ u16 ieee80211_select_queue(struct net_device *dev, struct sk_buff *skb)
  	if (unlikely(queue >= local->hw.queues))
  		queue = local->hw.queues - 1;
  
 +#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,28))
- 	if (skb->requeue) {
- 		if (!hw->ampdu_queues)
- 			return queue;
-@@ -142,6 +143,7 @@ u16 ieee80211_select_queue(struct net_device *dev, struct sk_buff *skb)
- 
- 		return queue;
+ 	/*
+ 	 * Now we know the 1d priority, fill in the QoS header if
+ 	 * there is one (and we haven't done this before).
+@@ -137,6 +138,7 @@ u16 ieee80211_select_queue(struct net_device *dev, struct sk_buff *skb)
+ 		*p++ = ack_policy | tid;
+ 		*p = 0;
  	}
 +#endif
  
- 	/* Now we know the 1d priority, fill in the QoS header if
- 	 * there is one.
+ 	return queue;
+ }
 --- a/drivers/net/wireless/Makefile	2008-11-10 12:55:55.000000000 -0800
 +++ b/drivers/net/wireless/Makefile	2008-11-10 12:57:30.000000000 -0800
-@@ -5,41 +5,14 @@
+@@ -5,43 +5,17 @@
  obj-$(CONFIG_IPW2100) += ipw2x00/
  obj-$(CONFIG_IPW2200) += ipw2x00/
  
@@ -134,6 +134,8 @@ index a0c860f..9c6f214 100644
 -obj-$(CONFIG_PCI_ATMEL)         += atmel_pci.o 
 -obj-$(CONFIG_PCMCIA_ATMEL)      += atmel_cs.o
 -
+ obj-$(CONFIG_AT76C50X_USB)      += at76c50x-usb.o
+ 
 -obj-$(CONFIG_PRISM54)		+= prism54/
 -
 -obj-$(CONFIG_HOSTAP)		+= hostap/
@@ -146,7 +148,7 @@ index a0c860f..9c6f214 100644
 -# 16-bit wireless PCMCIA client drivers
 -obj-$(CONFIG_PCMCIA_RAYCS)	+= ray_cs.o
 -obj-$(CONFIG_PCMCIA_WL3501)	+= wl3501_cs.o
--
+ 
  obj-$(CONFIG_USB_NET_RNDIS_WLAN)	+= rndis_wlan.o
  
 -obj-$(CONFIG_USB_ZD1201)	+= zd1201.o
@@ -301,7 +303,7 @@ index a0c860f..9c6f214 100644
  
 --- a/net/mac80211/iface.c	2009-02-13 14:25:06.000000000 -0800
 +++ b/net/mac80211/iface.c	2009-02-13 14:25:08.000000000 -0800
-@@ -657,6 +657,7 @@
+@@ -667,6 +667,7 @@
  	WARN_ON(flushed);
  }
  
@@ -309,7 +311,7 @@ index a0c860f..9c6f214 100644
  static const struct net_device_ops ieee80211_dataif_ops = {
  	.ndo_open		= ieee80211_open,
  	.ndo_stop		= ieee80211_stop,
-@@ -676,11 +677,22 @@
+@@ -686,11 +687,22 @@
  	.ndo_change_mtu 	= ieee80211_change_mtu,
  	.ndo_set_mac_address 	= eth_mac_addr,
  };
@@ -332,7 +334,7 @@ index a0c860f..9c6f214 100644
  	dev->wireless_handlers = &ieee80211_iw_handler_def;
  	dev->destructor = free_netdev;
  }
-@@ -696,7 +708,11 @@
+@@ -706,7 +718,11 @@
  
  	/* and set some type-dependent values */
  	sdata->vif.type = type;
@@ -344,7 +346,7 @@ index a0c860f..9c6f214 100644
  	sdata->wdev.iftype = type;
  
  	/* only monitor differs */
-@@ -717,7 +733,11 @@
+@@ -729,7 +745,11 @@
  		break;
  	case NL80211_IFTYPE_MONITOR:
  		sdata->dev->type = ARPHRD_IEEE80211_RADIOTAP;
@@ -356,7 +358,7 @@ index a0c860f..9c6f214 100644
  		sdata->u.mntr_flags = MONITOR_FLAG_CONTROL |
  				      MONITOR_FLAG_OTHER_BSS;
  		break;
-@@ -823,6 +843,10 @@
+@@ -836,6 +856,10 @@
  	if (ret)
  		goto fail;
  
@@ -369,7 +371,7 @@ index a0c860f..9c6f214 100644
  		ieee80211_sdata_set_mesh_id(sdata,
 --- a/net/mac80211/main.c	2009-02-13 14:25:06.000000000 -0800
 +++ b/net/mac80211/main.c	2009-02-13 14:25:08.000000000 -0800
-@@ -487,6 +487,7 @@
+@@ -488,6 +488,7 @@
  		return;
  	}
  
@@ -377,7 +379,7 @@ index a0c860f..9c6f214 100644
  	if (!test_sta_flags(sta, WLAN_STA_PS) && !skb->requeue) {
  		/* Software retry the packet once */
  		skb->requeue = 1;
-@@ -494,6 +495,7 @@
+@@ -495,6 +496,7 @@
  		dev_queue_xmit(skb);
  		return;
  	}
@@ -385,7 +387,7 @@ index a0c860f..9c6f214 100644
  
  #ifdef CONFIG_MAC80211_VERBOSE_DEBUG
  	if (net_ratelimit())
-@@ -797,6 +799,7 @@
+@@ -803,6 +805,7 @@
  }
  EXPORT_SYMBOL(ieee80211_alloc_hw);
  
@@ -393,7 +395,7 @@ index a0c860f..9c6f214 100644
  static const struct net_device_ops ieee80211_master_ops = {
  	.ndo_start_xmit = ieee80211_master_start_xmit,
  	.ndo_open = ieee80211_master_open,
-@@ -804,12 +807,22 @@
+@@ -810,12 +813,22 @@
  	.ndo_set_multicast_list = ieee80211_master_set_multicast_list,
  	.ndo_select_queue = ieee80211_select_queue,
  };
@@ -438,3 +440,474 @@ index a0c860f..9c6f214 100644
  
  	return ops;
  }
+diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c
+index c157d60..40f86df 100644
+--- a/net/wireless/nl80211.c
++++ b/net/wireless/nl80211.c
+@@ -21,6 +21,7 @@
+ #include "nl80211.h"
+ #include "reg.h"
+ 
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,30))
+ static int nl80211_lock_doit(struct sk_buff *skb, struct genl_info *info)
+ {
+ 	rtnl_lock();
+@@ -38,6 +39,7 @@
+ 	rtnl_unlock();
+ }
+ 
++#endif
+ /* the netlink family */
+ static struct genl_family nl80211_fam = {
+ 	.id = GENL_ID_GENERATE,	/* don't bother with a hardcoded ID */
+@@ -45,10 +47,12 @@
+ 	.hdrsize = 0,		/* no private header */
+ 	.version = 1,		/* no particular meaning now */
+ 	.maxattr = NL80211_ATTR_MAX,
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,30))
+ 	.pre_doit = nl80211_lock_doit,
+ 	.pre_dumpit = nl80211_lock_dumpit,
+ 	.post_doit = nl80211_unlock,
+ 	.post_dumpit = nl80211_unlock,
++#endif
+ };
+ 
+ /* internal helper: get drv and dev */
+@@ -637,12 +641,18 @@
+ 			flags = &_flags;
+ 	}
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
++#endif
+ 	err = drv->ops->change_virtual_intf(&drv->wiphy, ifindex,
+ 					    type, flags, &params);
+ 
+ 	dev = __dev_get_by_index(&init_net, ifindex);
+ 	WARN_ON(!dev || (!err && dev->ieee80211_ptr->iftype != type));
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_unlock();
++#endif
+  unlock:
+ 	cfg80211_put_dev(drv);
+ 	return err;
+@@ -683,12 +693,18 @@
+ 		params.mesh_id_len = nla_len(info->attrs[NL80211_ATTR_MESH_ID]);
+ 	}
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
++#endif
+ 	err = parse_monitor_flags(type == NL80211_IFTYPE_MONITOR ?
+ 				  info->attrs[NL80211_ATTR_MNTR_FLAGS] : NULL,
+ 				  &flags);
+ 	err = drv->ops->add_virtual_intf(&drv->wiphy,
+ 		nla_data(info->attrs[NL80211_ATTR_IFNAME]),
+ 		type, err ? NULL : &flags, &params);
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_unlock();
++#endif
+ 
+  unlock:
+ 	cfg80211_put_dev(drv);
+@@ -712,7 +728,13 @@
+ 		goto out;
+ 	}
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
++	err = drv->ops->del_virtual_intf(&drv->wiphy, ifindex);
++	rtnl_unlock();
++#else
+ 	err = drv->ops->del_virtual_intf(&drv->wiphy, ifindex);
++#endif
+ 
+  out:
+ 	cfg80211_put_dev(drv);
+@@ -797,8 +819,15 @@
+ 	if (mac_addr)
+ 		NLA_PUT(msg, NL80211_ATTR_MAC, ETH_ALEN, mac_addr);
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
+ 	err = drv->ops->get_key(&drv->wiphy, dev, key_idx, mac_addr,
+ 				&cookie, get_key_callback);
++	rtnl_unlock();
++#else
++	err = drv->ops->get_key(&drv->wiphy, dev, key_idx, mac_addr,
++				&cookie, get_key_callback);
++#endif
+ 
+ 	if (err)
+ 		goto out;
+@@ -858,7 +887,13 @@
+ 		goto out;
+ 	}
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
+ 	err = func(&drv->wiphy, dev, key_idx);
++	rtnl_unlock();
++#else
++	err = func(&drv->wiphy, dev, key_idx);
++#endif
+ 
+  out:
+ 	cfg80211_put_dev(drv);
+@@ -941,7 +976,13 @@
+ 		goto out;
+ 	}
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
++	err = drv->ops->add_key(&drv->wiphy, dev, key_idx, mac_addr, &params);
++	rtnl_unlock();
++#else
+ 	err = drv->ops->add_key(&drv->wiphy, dev, key_idx, mac_addr, &params);
++#endif
+ 
+  out:
+ 	cfg80211_put_dev(drv);
+@@ -975,7 +1016,13 @@
+ 		goto out;
+ 	}
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
++	err = drv->ops->del_key(&drv->wiphy, dev, key_idx, mac_addr);
++	rtnl_unlock();
++#else
+ 	err = drv->ops->del_key(&drv->wiphy, dev, key_idx, mac_addr);
++#endif
+ 
+  out:
+ 	cfg80211_put_dev(drv);
+@@ -1056,7 +1103,13 @@
+ 		goto out;
+ 	}
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
+ 	err = call(&drv->wiphy, dev, &params);
++	rtnl_unlock();
++#else
++	err = call(&drv->wiphy, dev, &params);
++#endif
+ 
+  out:
+ 	cfg80211_put_dev(drv);
+@@ -1079,7 +1132,13 @@
+ 		goto out;
+ 	}
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
+ 	err = drv->ops->del_beacon(&drv->wiphy, dev);
++	rtnl_unlock();
++#else
++	err = drv->ops->del_beacon(&drv->wiphy, dev);
++#endif
+ 
+  out:
+ 	cfg80211_put_dev(drv);
+@@ -1264,13 +1323,20 @@
+ 		goto out_err;
+ 	}
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
++#endif
+ 	while (1) {
+ 		err = dev->ops->dump_station(&dev->wiphy, netdev, sta_idx,
+ 					     mac_addr, &sinfo);
+ 		if (err == -ENOENT)
+ 			break;
+ 		if (err)
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++			goto out_err_rtnl;
++#else
+ 			goto out_err;
++#endif
+ 
+ 		if (nl80211_send_station(skb,
+ 				NETLINK_CB(cb->skb).pid,
+@@ -1286,6 +1352,10 @@
+  out:
+ 	cb->args[1] = sta_idx;
+ 	err = skb->len;
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++ out_err_rtnl:
++	rtnl_unlock();
++#endif
+  out_err:
+ 	cfg80211_put_dev(dev);
+  out_put_netdev:
+@@ -1319,7 +1389,13 @@
+ 		goto out;
+ 	}
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
+ 	err = drv->ops->get_station(&drv->wiphy, dev, mac_addr, &sinfo);
++	rtnl_unlock();
++#else
++	err = drv->ops->get_station(&drv->wiphy, dev, mac_addr, &sinfo);
++#endif
+ 
+ 	if (err)
+ 		goto out;
+@@ -1421,7 +1497,13 @@
+ 		goto out;
+ 	}
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
+ 	err = drv->ops->change_station(&drv->wiphy, dev, mac_addr, &params);
++	rtnl_unlock();
++#else
++	err = drv->ops->change_station(&drv->wiphy, dev, mac_addr, &params);
++#endif
+ 
+  out:
+ 	if (params.vlan)
+@@ -1482,7 +1564,13 @@
+ 		goto out;
+ 	}
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
++	err = drv->ops->add_station(&drv->wiphy, dev, mac_addr, &params);
++	rtnl_unlock();
++#else
+ 	err = drv->ops->add_station(&drv->wiphy, dev, mac_addr, &params);
++#endif
+ 
+  out:
+ 	if (params.vlan)
+@@ -1511,7 +1599,13 @@
+ 		goto out;
+ 	}
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
++	err = drv->ops->del_station(&drv->wiphy, dev, mac_addr);
++	rtnl_unlock();
++#else
+ 	err = drv->ops->del_station(&drv->wiphy, dev, mac_addr);
++#endif
+ 
+  out:
+ 	cfg80211_put_dev(drv);
+@@ -1611,13 +1705,20 @@
+ 		goto out_err;
+ 	}
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
++#endif
+ 	while (1) {
+ 		err = dev->ops->dump_mpath(&dev->wiphy, netdev, path_idx,
+ 					   dst, next_hop, &pinfo);
+ 		if (err == -ENOENT)
+ 			break;
+ 		if (err)
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++			goto out_err_rtnl;
++#else
+ 			goto out_err;
++#endif
+ 
+ 		if (nl80211_send_mpath(skb, NETLINK_CB(cb->skb).pid,
+ 				       cb->nlh->nlmsg_seq, NLM_F_MULTI,
+@@ -1632,6 +1733,10 @@
+  out:
+ 	cb->args[1] = path_idx;
+ 	err = skb->len;
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++ out_err_rtnl:
++	rtnl_unlock();
++#endif
+  out_err:
+ 	cfg80211_put_dev(dev);
+  out_put_netdev:
+@@ -1666,7 +1771,13 @@
+ 		goto out;
+ 	}
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
++	err = drv->ops->get_mpath(&drv->wiphy, dev, dst, next_hop, &pinfo);
++	rtnl_unlock();
++#else
+ 	err = drv->ops->get_mpath(&drv->wiphy, dev, dst, next_hop, &pinfo);
++#endif
+ 
+ 	if (err)
+ 		goto out;
+@@ -1717,7 +1828,13 @@
+ 		goto out;
+ 	}
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
++	err = drv->ops->change_mpath(&drv->wiphy, dev, dst, next_hop);
++	rtnl_unlock();
++#else
+ 	err = drv->ops->change_mpath(&drv->wiphy, dev, dst, next_hop);
++#endif
+ 
+  out:
+ 	cfg80211_put_dev(drv);
+@@ -1750,7 +1867,13 @@
+ 		goto out;
+ 	}
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
++	err = drv->ops->add_mpath(&drv->wiphy, dev, dst, next_hop);
++	rtnl_unlock();
++#else
+ 	err = drv->ops->add_mpath(&drv->wiphy, dev, dst, next_hop);
++#endif
+ 
+  out:
+ 	cfg80211_put_dev(drv);
+@@ -1777,7 +1900,13 @@
+ 		goto out;
+ 	}
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
+ 	err = drv->ops->del_mpath(&drv->wiphy, dev, dst);
++	rtnl_unlock();
++#else
++	err = drv->ops->del_mpath(&drv->wiphy, dev, dst);
++#endif
+ 
+  out:
+ 	cfg80211_put_dev(drv);
+@@ -1823,7 +1952,13 @@
+ 		goto out;
+ 	}
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
+ 	err = drv->ops->change_bss(&drv->wiphy, dev, &params);
++	rtnl_unlock();
++#else
++	err = drv->ops->change_bss(&drv->wiphy, dev, &params);
++#endif
+ 
+  out:
+ 	cfg80211_put_dev(drv);
+@@ -1920,7 +2055,13 @@
+ 		return err;
+ 
+ 	/* Get the mesh params */
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
++	err = drv->ops->get_mesh_params(&drv->wiphy, dev, &cur_params);
++	rtnl_unlock();
++#else
+ 	err = drv->ops->get_mesh_params(&drv->wiphy, dev, &cur_params);
++#endif
+ 	if (err)
+ 		goto out;
+ 
+@@ -2066,7 +2207,13 @@
+ 			nla_get_u16);
+ 
+ 	/* Apply changes */
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
++	err = drv->ops->set_mesh_params(&drv->wiphy, dev, &cfg, mask);
++	rtnl_unlock();
++#else
+ 	err = drv->ops->set_mesh_params(&drv->wiphy, dev, &cfg, mask);
++#endif
+ 
+ 	/* cleanup */
+ 	cfg80211_put_dev(drv);
+@@ -2241,9 +2388,15 @@
+ 	if (err)
+ 		return err;
+ 
+-	if (drv->ops->set_mgmt_extra_ie)
++	if (drv->ops->set_mgmt_extra_ie) {
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++		rtnl_lock();
+ 		err = drv->ops->set_mgmt_extra_ie(&drv->wiphy, dev, &params);
+-	else
++		rtnl_unlock();
++#else
++		err = drv->ops->set_mgmt_extra_ie(&drv->wiphy, dev, &params);
++#endif
++	} else
+ 		err = -EOPNOTSUPP;
+ 
+ 	cfg80211_put_dev(drv);
+@@ -2275,9 +2428,16 @@
+ 		goto out;
+ 	}
+ 
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++	rtnl_lock();
++#endif
+ 	if (drv->scan_req) {
+ 		err = -EBUSY;
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++		goto out_unlock;
++#else
+ 		goto out;
++#endif
+ 	}
+ 
+ 	if (info->attrs[NL80211_ATTR_SCAN_FREQUENCIES]) {
+@@ -2285,7 +2445,11 @@
+ 			n_channels++;
+ 		if (!n_channels) {
+ 			err = -EINVAL;
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++			goto out_unlock;
++#else
+ 			goto out;
++#endif
+ 		}
+ 	} else {
+ 		for (band = 0; band < IEEE80211_NUM_BANDS; band++)
+@@ -2299,7 +2463,11 @@
+ 
+ 	if (n_ssids > wiphy->max_scan_ssids) {
+ 		err = -EINVAL;
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++		goto out_unlock;
++#else
+ 		goto out;
++#endif
+ 	}
+ 
+ 	if (info->attrs[NL80211_ATTR_IE])
+@@ -2313,7 +2481,11 @@
+ 			+ ie_len, GFP_KERNEL);
+ 	if (!request) {
+ 		err = -ENOMEM;
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++		goto out_unlock;
++#else
+ 		goto out;
++#endif
+ 	}
+ 
+ 	request->channels = (void *)((char *)request + sizeof(*request));
+@@ -2384,6 +2556,10 @@
+ 		drv->scan_req = NULL;
+ 		kfree(request);
+ 	}
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
++ out_unlock:
++	rtnl_unlock();
++#endif
+  out:
+ 	cfg80211_put_dev(drv);
+ 	dev_put(dev);
diff --git a/config.mk b/config.mk
index 0e1546e..e9cdae7 100644
--- a/config.mk
+++ b/config.mk
@@ -113,21 +113,18 @@ CONFIG_ATH9K=m
 # CONFIG_ATH9K_DEBUG is not set
 
 
-CONFIG_IWLWIFI=y
-CONFIG_IWLCORE=m
+CONFIG_IWLWIFI=m
 CONFIG_IWLWIFI_LEDS=y
 # CONFIG_IWLWIFI_RFKILL=y
+CONFIG_IWLWIFI_SPECTRUM_MEASUREMENT=y
 # CONFIG_IWLWIFI_DEBUG is not set
+# CONFIG_IWLWIFI_DEBUGFS is not set
 CONFIG_IWLAGN=m
-CONFIG_IWLAGN_SPECTRUM_MEASUREMENT=y
-CONFIG_IWLAGN_LEDS=y
 CONFIG_IWL4965=y
 CONFIG_IWL5000=y
 CONFIG_IWL3945=m
-# CONFIG_IWL3945_RFKILL=y
 CONFIG_IWL3945_SPECTRUM_MEASUREMENT=y
 CONFIG_IWL3945_LEDS=y
-# CONFIG_IWL3945_DEBUG is not set
 
 
 CONFIG_B43=m
@@ -241,6 +238,8 @@ CONFIG_USB_NET_CDCETHER=m
 CONFIG_P54_USB=m
 CONFIG_RTL8187=m
 
+CONFIG_AT76C50X_USB=m
+
 
 # RT2500USB does not require firmware
 CONFIG_RT2500USB=m
diff --git a/scripts/admin-update.sh b/scripts/admin-update.sh
index 5fa23c0..8eeef89 100755
--- a/scripts/admin-update.sh
+++ b/scripts/admin-update.sh
@@ -24,10 +24,8 @@ INCLUDE_LINUX="$INCLUDE_LINUX ath9k_platform.h"
 # For rndis_wext
 INCLUDE_LINUX_USB="usbnet.h rndis_host.h"
 
-# Stuff that should die or be merged, only ipw uses it
-INCLUDE_NET_OLD="ieee80211.h"
 # The good new yummy stuff
-INCLUDE_NET="$INCLUDE_NET_OLD cfg80211.h ieee80211_radiotap.h iw_handler.h"
+INCLUDE_NET="cfg80211.h ieee80211_radiotap.h iw_handler.h"
 INCLUDE_NET="$INCLUDE_NET mac80211.h wext.h wireless.h lib80211.h"
 
 NET_DIRS="wireless mac80211"
@@ -66,6 +64,7 @@ DRIVERS="$DRIVERS drivers/net/wireless/ipw2x00"
 DRIVER_FILES="adm8211.c  adm8211.h"
 DRIVER_FILES="$DRIVER_FILES rndis_wlan.c"
 DRIVER_FILES="$DRIVER_FILES mac80211_hwsim.c"
+DRIVER_FILES="$DRIVER_FILES at76c50x-usb.c at76c50x-usb.h"
 
 mkdir -p include/linux/ include/net/ include/linux/usb \
 	net/mac80211/ net/wireless/ \
-- 
1.5.6.3


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] compat-2.6: compat.diff update for master-2009-02-18 wireless-testing.
  2009-02-19 18:29 [PATCH] compat-2.6: compat.diff update for master-2009-02-18 wireless-testing Hauke Mehrtens
@ 2009-02-19 21:45 ` Luis R. Rodriguez
  2009-02-20  2:54   ` [PATCH] compat-2.6: Add place holder for CONFIG_MAC80211_DEBUGFS in config.mk Larry Finger
  0 siblings, 1 reply; 4+ messages in thread
From: Luis R. Rodriguez @ 2009-02-19 21:45 UTC (permalink / raw)
  To: Hauke Mehrtens; +Cc: linux-wireless

On Thu, Feb 19, 2009 at 10:29 AM, Hauke Mehrtens <hauke@hauke-m.de> wrote:
> Hi Luis,
>
> this patch makes compat-wireless work with the latest wireless-testing
> again.
> It also adds the at76c50x-usb driver.
> I tested b43 with kernel 2.6.27 and rtl8187 with kernel 2.6.29-rc5.

Thanks! Applied with some small changes (leave iwlwifi kconfig changes
in a separate patch).

compat-wireless updated and new tarball regenerated.

  Luis

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH] compat-2.6: Add place holder for CONFIG_MAC80211_DEBUGFS in config.mk
  2009-02-19 21:45 ` Luis R. Rodriguez
@ 2009-02-20  2:54   ` Larry Finger
  2009-02-20  3:01     ` Luis R. Rodriguez
  0 siblings, 1 reply; 4+ messages in thread
From: Larry Finger @ 2009-02-20  2:54 UTC (permalink / raw)
  To: Luis R. Rodriguez; +Cc: linux-wireless

It is difficult to help someone debug a rate-setting problem when using
compat-wireless because debugging is not set for mac80211. With this patch
the place holder is in the make file even though the debug option is not
set, and it will be easier to coach a user on turning it on.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
---

Index: compat-wireless-2009-02-19/config.mk
===================================================================
--- compat-wireless-2009-02-19.orig/config.mk
+++ compat-wireless-2009-02-19/config.mk
@@ -74,6 +74,7 @@ endif # kernel Makefile check

 # Wireless subsystem stuff
 CONFIG_MAC80211=m
+# CONFIG_MAC80211_DEBUGFS is not set

 # choose between pid and minstrel as default rate control algorithm
 CONFIG_MAC80211_RC_DEFAULT=minstrel


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] compat-2.6: Add place holder for CONFIG_MAC80211_DEBUGFS in config.mk
  2009-02-20  2:54   ` [PATCH] compat-2.6: Add place holder for CONFIG_MAC80211_DEBUGFS in config.mk Larry Finger
@ 2009-02-20  3:01     ` Luis R. Rodriguez
  0 siblings, 0 replies; 4+ messages in thread
From: Luis R. Rodriguez @ 2009-02-20  3:01 UTC (permalink / raw)
  To: Larry Finger; +Cc: Luis Rodriguez, linux-wireless

On Thu, Feb 19, 2009 at 06:54:25PM -0800, Larry Finger wrote:
> It is difficult to help someone debug a rate-setting problem when using
> compat-wireless because debugging is not set for mac80211. With this patch
> the place holder is in the make file even though the debug option is not
> set, and it will be easier to coach a user on turning it on.
> 
> Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>

Thanks, applied and new tarball regenerated.

  Luis

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2009-02-20  3:02 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-02-19 18:29 [PATCH] compat-2.6: compat.diff update for master-2009-02-18 wireless-testing Hauke Mehrtens
2009-02-19 21:45 ` Luis R. Rodriguez
2009-02-20  2:54   ` [PATCH] compat-2.6: Add place holder for CONFIG_MAC80211_DEBUGFS in config.mk Larry Finger
2009-02-20  3:01     ` Luis R. Rodriguez

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).