#include "ath5k.h"
#include "debug.h"
---- a/drivers/net/wireless/ath/ath9k/hw.c 2009-07-21 13:18:14.945936434 -0700
-+++ b/drivers/net/wireless/ath/ath9k/hw.c 2009-07-21 13:18:15.389946641 -0700
-@@ -3434,7 +3434,7 @@
+--- a/drivers/net/wireless/ath/ath9k/hw.c 2009-07-27 07:59:47.565058244 -0700
++++ b/drivers/net/wireless/ath/ath9k/hw.c 2009-07-27 07:59:47.937064819 -0700
+@@ -3514,7 +3514,7 @@ void ath9k_hw_fill_cap_info(struct ath_h
pCap->hw_caps |= ATH9K_HW_CAP_ENHANCEDPM;
+#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,30))
#include <trace/define_trace.h>
+#endif /* (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,30)) */
---- a/net/mac80211/iface.c 2009-07-21 13:19:35.836937034 -0700
-+++ b/net/mac80211/iface.c 2009-07-21 13:19:36.396937822 -0700
-@@ -645,6 +645,7 @@
+--- a/net/mac80211/iface.c 2009-07-27 07:58:11.781079971 -0700
++++ b/net/mac80211/iface.c 2009-07-27 07:58:14.042068740 -0700
+@@ -660,6 +660,7 @@
WARN_ON(flushed);
}
static const struct net_device_ops ieee80211_dataif_ops = {
.ndo_open = ieee80211_open,
.ndo_stop = ieee80211_stop,
-@@ -664,11 +665,22 @@
+@@ -679,11 +680,22 @@
.ndo_change_mtu = ieee80211_change_mtu,
.ndo_set_mac_address = eth_mac_addr,
};
dev->wireless_handlers = &ieee80211_iw_handler_def;
dev->destructor = free_netdev;
}
-@@ -684,7 +696,11 @@
+@@ -699,7 +711,11 @@
/* and set some type-dependent values */
sdata->vif.type = type;
sdata->wdev.iftype = type;
/* only monitor differs */
-@@ -707,7 +723,11 @@
+@@ -722,7 +738,11 @@
break;
case NL80211_IFTYPE_MONITOR:
sdata->dev->type = ARPHRD_IEEE80211_RADIOTAP;
sdata->u.mntr_flags = MONITOR_FLAG_CONTROL |
MONITOR_FLAG_OTHER_BSS;
break;
-@@ -773,6 +793,8 @@
- if (!ndev)
+@@ -789,6 +809,8 @@
return -ENOMEM;
+ dev_net_set(ndev, wiphy_net(local->hw.wiphy));
+/* This is an optimization, just ignore for older kernels */
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,26))
ndev->needed_headroom = local->tx_headroom +
4*6 /* four MAC addresses */
+ 2 + 2 + 2 + 2 /* ctl, dur, seq, qos */
-@@ -781,6 +803,7 @@
+@@ -797,6 +819,7 @@
- ETH_HLEN /* ethernet hard_header_len */
+ IEEE80211_ENCRYPT_HEADROOM;
ndev->needed_tailroom = IEEE80211_ENCRYPT_TAILROOM;
ret = dev_alloc_name(ndev, ndev->name);
if (ret < 0)
-@@ -814,6 +837,10 @@
+@@ -829,6 +852,10 @@
if (ret)
goto fail;
#include <linux/workqueue.h>
#include <net/genetlink.h>
#include <net/cfg80211.h>
---- a/net/wireless/scan.c 2009-07-21 13:21:01.952935088 -0700
-+++ b/net/wireless/scan.c 2009-07-21 13:21:02.468936915 -0700
-@@ -408,7 +408,11 @@
+--- a/net/wireless/scan.c 2009-07-27 07:58:11.617048928 -0700
++++ b/net/wireless/scan.c 2009-07-27 07:58:14.042068740 -0700
+@@ -398,7 +398,11 @@
size_t used = dev->wiphy.bss_priv_size + sizeof(*res);
size_t ielen = res->pub.len_information_elements;