aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuis R. Rodriguez <lrodriguez@atheros.com>2008-07-08 07:50:45 -0700
committerLuis R. Rodriguez <lrodriguez@atheros.com>2008-07-08 07:50:45 -0700
commit66f3fb0fbcfe53d7ba503f3b02afb4ee17a1a569 (patch)
tree282829a8699a12a93fbf7d8fabef08f9c678d9b7
parent2517422f706b0c4ac10d93552e41fda4cf06048d (diff)
downloadcompat-wireless-2.6-old-66f3fb0fbcfe53d7ba503f3b02afb4ee17a1a569.tar.gz
Update compat.diff and add CONFIG_MAC80211_HWSIM support.
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
-rw-r--r--compat/compat.diff108
-rw-r--r--config.mk3
-rwxr-xr-xscripts/admin-update.sh1
3 files changed, 58 insertions, 54 deletions
diff --git a/compat/compat.diff b/compat/compat.diff
index 51f0ab5..10b6342 100644
--- a/compat/compat.diff
+++ b/compat/compat.diff
@@ -1052,8 +1052,57 @@
/**
* enum mac80211_rx_flags - receive flags
---- a/net/mac80211/wme.c 2008-07-06 23:07:15.000000000 -0700
-+++ b/net/mac80211/wme.c 2008-07-06 23:07:17.000000000 -0700
+--- a/net/mac80211/main.c 2008-07-06 23:07:14.000000000 -0700
++++ b/net/mac80211/main.c 2008-07-06 23:07:17.000000000 -0700
+@@ -21,7 +21,9 @@
+ #include <linux/wireless.h>
+ #include <linux/rtnetlink.h>
+ #include <linux/bitmap.h>
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,24))
+ #include <net/net_namespace.h>
++#endif
+ #include <net/cfg80211.h>
+
+ #include "ieee80211_i.h"
+@@ -982,6 +984,13 @@
+ .cache_update = eth_header_cache_update,
+ };
+
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22))
++static struct net_device_stats *ieee80211_get_stats(struct net_device *dev)
++{
++ return &IEEE80211_DEV_TO_SUB_IF(dev)->stats;
++}
++#endif
++
+ /* Must not be called for mdev */
+ void ieee80211_if_setup(struct net_device *dev)
+ {
+@@ -993,6 +1002,9 @@
+ dev->open = ieee80211_open;
+ dev->stop = ieee80211_stop;
+ dev->destructor = ieee80211_if_free;
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22))
++ dev->get_stats = ieee80211_get_stats;
++#endif
+ }
+
+ /* everything else */
+@@ -1717,7 +1729,12 @@
+ mdev->open = ieee80211_master_open;
+ mdev->stop = ieee80211_master_stop;
+ mdev->type = ARPHRD_IEEE80211;
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22))
++ mdev->get_stats = ieee80211_get_stats;
++#endif
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,24))
+ mdev->header_ops = &ieee80211_header_ops;
++#endif
+ mdev->set_multicast_list = ieee80211_master_set_multicast_list;
+
+ sdata->vif.type = IEEE80211_IF_TYPE_AP;
+--- a/net/mac80211/wme.c 2008-07-08 07:18:20.000000000 -0700
++++ b/net/mac80211/wme.c 2008-07-08 07:18:23.000000000 -0700
@@ -17,6 +17,9 @@
#include <net/mac80211.h>
#include "ieee80211_i.h"
@@ -1064,7 +1113,7 @@
/* maximum number of hardware queues we support. */
#define QD_MAX_QUEUES (IEEE80211_MAX_AMPDU_QUEUES + IEEE80211_MAX_QUEUES)
-@@ -319,14 +322,22 @@
+@@ -318,14 +321,22 @@
/* called whenever parameters are updated on existing qdisc */
@@ -1087,7 +1136,7 @@
{
struct ieee80211_sched_data *q = qdisc_priv(qd);
struct net_device *dev = qd->dev;
-@@ -447,7 +458,11 @@
+@@ -446,7 +457,11 @@
static int wme_classop_change(struct Qdisc *qd, u32 handle, u32 parent,
@@ -1099,7 +1148,7 @@
{
unsigned long cl = *arg;
struct ieee80211_local *local = wdev_priv(qd->dev->ieee80211_ptr);
-@@ -531,7 +546,11 @@
+@@ -530,7 +545,11 @@
/* this qdisc is classful (i.e. has classes, some of which may have leaf qdiscs attached)
* - these are the operations on the classes */
@@ -1111,52 +1160,3 @@
{
.graft = wme_classop_graft,
.leaf = wme_classop_leaf,
---- a/net/mac80211/main.c 2008-07-06 23:07:14.000000000 -0700
-+++ b/net/mac80211/main.c 2008-07-06 23:07:17.000000000 -0700
-@@ -21,7 +21,9 @@
- #include <linux/wireless.h>
- #include <linux/rtnetlink.h>
- #include <linux/bitmap.h>
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,24))
- #include <net/net_namespace.h>
-+#endif
- #include <net/cfg80211.h>
-
- #include "ieee80211_i.h"
-@@ -982,6 +984,13 @@
- .cache_update = eth_header_cache_update,
- };
-
-+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22))
-+static struct net_device_stats *ieee80211_get_stats(struct net_device *dev)
-+{
-+ return &IEEE80211_DEV_TO_SUB_IF(dev)->stats;
-+}
-+#endif
-+
- /* Must not be called for mdev */
- void ieee80211_if_setup(struct net_device *dev)
- {
-@@ -993,6 +1002,9 @@
- dev->open = ieee80211_open;
- dev->stop = ieee80211_stop;
- dev->destructor = ieee80211_if_free;
-+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22))
-+ dev->get_stats = ieee80211_get_stats;
-+#endif
- }
-
- /* everything else */
-@@ -1717,7 +1729,12 @@
- mdev->open = ieee80211_master_open;
- mdev->stop = ieee80211_master_stop;
- mdev->type = ARPHRD_IEEE80211;
-+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22))
-+ mdev->get_stats = ieee80211_get_stats;
-+#endif
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,24))
- mdev->header_ops = &ieee80211_header_ops;
-+#endif
- mdev->set_multicast_list = ieee80211_master_set_multicast_list;
-
- sdata->vif.type = IEEE80211_IF_TYPE_AP;
diff --git a/config.mk b/config.mk
index 0e3e37d..b1fb68e 100644
--- a/config.mk
+++ b/config.mk
@@ -62,6 +62,9 @@ CONFIG_MAC80211_MESH=y
CONFIG_CFG80211=m
CONFIG_NL80211=y
+# mac80211 test driver
+CONFIG_MAC80211_HWSIM=m
+
# PCI Drivers
ifneq ($(CONFIG_PCI),)
diff --git a/scripts/admin-update.sh b/scripts/admin-update.sh
index baa0390..e3d66fc 100755
--- a/scripts/admin-update.sh
+++ b/scripts/admin-update.sh
@@ -71,6 +71,7 @@ DRIVER_FILES="$DRIVER_FILES ipw2100.h ipw2100.c"
DRIVER_FILES="$DRIVER_FILES ipw2200.h ipw2200.c"
DRIVER_FILES="$DRIVER_FILES rndis_wlan.c"
DRIVER_FILES="$DRIVER_FILES at76_usb.h at76_usb.c"
+DRIVER_FILES="$DRIVER_FILES mac80211_hwsim.c"
mkdir -p include/linux/ include/net/ include/linux/usb \
net/mac80211/ net/wireless/ net/ieee80211/ \