rpms/kernel/devel config-generic, 1.63, 1.64 kernel.spec, 1.398, 1.399 linux-2.6-wireless-pending.patch, 1.26, 1.27 linux-2.6-wireless.patch, 1.20, 1.21
John W. Linville (linville)
fedora-extras-commits at redhat.com
Fri Feb 1 22:34:17 UTC 2008
Author: linville
Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv28379
Modified Files:
config-generic kernel.spec linux-2.6-wireless-pending.patch
linux-2.6-wireless.patch
Log Message:
wireless updates 2008-02-01
Index: config-generic
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/config-generic,v
retrieving revision 1.63
retrieving revision 1.64
diff -u -r1.63 -r1.64
--- config-generic 29 Jan 2008 22:33:46 -0000 1.63
+++ config-generic 1 Feb 2008 22:33:38 -0000 1.64
@@ -1224,7 +1224,8 @@
CONFIG_MAC80211_RC_PID=y
CONFIG_MAC80211_RC_SIMPLE=y
CONFIG_MAC80211_LEDS=y
-# CONFIG_MAC80211_DEBUGFS is not set
+CONFIG_MAC80211_DEBUGFS=y
+# CONFIG_MAC80211_DEBUG_PACKET_ALIGNMENT is not set
# CONFIG_MAC80211_DEBUG is not set
CONFIG_IEEE80211=m
CONFIG_IEEE80211_DEBUG=y
@@ -1291,6 +1292,7 @@
CONFIG_PCMCIA_ATMEL=m
CONFIG_PCMCIA_WL3501=m
CONFIG_RT2X00=y
+CONFIG_RT2X00_LIB_DEBUGFS=y
# CONFIG_RT2X00_DEBUG is not set
CONFIG_RT2400PCI=m
CONFIG_RT2400PCI_RFKILL=y
Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.398
retrieving revision 1.399
diff -u -r1.398 -r1.399
--- kernel.spec 1 Feb 2008 17:45:46 -0000 1.398
+++ kernel.spec 1 Feb 2008 22:33:38 -0000 1.399
@@ -1784,6 +1784,17 @@
%kernel_variant_files -a /%{image_install_path}/xen*-%{KVERREL} -e /etc/ld.so.conf.d/kernelcap-%{KVERREL}.conf %{with_xen} xen
%changelog
+* Fri Feb 01 2008 John W. Linville <linville at redhat.com>
+- mac80211: make alignment warning optional
+- mac80211 rate control: fix section mismatch
+- mac80211: fix initialisation error path
+- ath5k: fix section mismatch warning
+- iwlwifi: fix merge sequence: exit on error before state change
+- iwlwifi: fix sparse warning in iwl 3945
+- iwlwifi: Fix MIMO PS mode
+- iwlwifi: remove ieee80211 types from iwl-helpers.h
+- mac80211: dissolve pre-rx handlers
+
* Fri Feb 01 2008 Chuck Ebbert <cebbert at redhat.com>
- Fix build with GCC 4.3, part 2.
linux-2.6-wireless-pending.patch:
Index: linux-2.6-wireless-pending.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/linux-2.6-wireless-pending.patch,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -r1.26 -r1.27
--- linux-2.6-wireless-pending.patch 29 Jan 2008 22:33:46 -0000 1.26
+++ linux-2.6-wireless-pending.patch 1 Feb 2008 22:33:38 -0000 1.27
@@ -1,3 +1,16 @@
+commit f2d4faa756470565c28a72217d35385719ee477d
+Author: Johannes Berg <johannes at sipsolutions.net>
+Date: Tue Jan 29 17:07:43 2008 +0100
+
+ mac80211: dissolve pre-rx handlers
+
+ These handlers do not really return a status and the compiler
+ can do a much better job when they're simply static functions
+ that it can inline if appropriate. Also makes the code shorter.
+
+ Signed-off-by: Johannes Berg <johannes at sipsolutions.net>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
commit a1b8c36ffedc73655585d5377bb3609c9771a835
Author: Tomas Winkler <tomas.winkler at intel.com>
Date: Sun Jan 27 15:06:23 2008 +0200
@@ -263,8 +276,8 @@
Signed-off-by: John W. Linville <linville at tuxdriver.com>
diff -up linux-2.6.24.noarch/include/net/mac80211.h.orig linux-2.6.24.noarch/include/net/mac80211.h
---- linux-2.6.24.noarch/include/net/mac80211.h.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/include/net/mac80211.h 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/include/net/mac80211.h.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/include/net/mac80211.h 2008-02-01 17:10:38.000000000 -0500
@@ -246,6 +246,7 @@ struct ieee80211_tx_queue_stats_data {
* @IEEE80211_TX_QUEUE_AFTER_BEACON: transmit queue for frames to be
* sent after a beacon
@@ -465,7 +478,7 @@
#endif /* MAC80211_H */
diff -up linux-2.6.24.noarch/net/mac80211/wme.h.orig linux-2.6.24.noarch/net/mac80211/wme.h
--- linux-2.6.24.noarch/net/mac80211/wme.h.orig 2008-01-24 17:58:37.000000000 -0500
-+++ linux-2.6.24.noarch/net/mac80211/wme.h 2008-01-29 17:07:21.000000000 -0500
++++ linux-2.6.24.noarch/net/mac80211/wme.h 2008-02-01 17:10:38.000000000 -0500
@@ -24,6 +24,8 @@
#define QOS_CONTROL_TAG1D_MASK 0x07
@@ -510,9 +523,137 @@
static inline int ieee80211_wme_register(void)
{
return 0;
+diff -up linux-2.6.24.noarch/net/mac80211/rx.c.orig linux-2.6.24.noarch/net/mac80211/rx.c
+--- linux-2.6.24.noarch/net/mac80211/rx.c.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/net/mac80211/rx.c 2008-02-01 17:11:46.000000000 -0500
+@@ -249,15 +249,7 @@ ieee80211_rx_monitor(struct ieee80211_lo
+ }
+
+
+-/* pre-rx handlers
+- *
+- * these don't have dev/sdata fields in the rx data
+- * The sta value should also not be used because it may
+- * be NULL even though a STA (in IBSS mode) will be added.
+- */
+-
+-static ieee80211_txrx_result
+-ieee80211_rx_h_parse_qos(struct ieee80211_txrx_data *rx)
++static void ieee80211_parse_qos(struct ieee80211_txrx_data *rx)
+ {
+ u8 *data = rx->skb->data;
+ int tid;
+@@ -290,8 +282,40 @@ ieee80211_rx_h_parse_qos(struct ieee8021
+ /* Set skb->priority to 1d tag if highest order bit of TID is not set.
+ * For now, set skb->priority to 0 for other cases. */
+ rx->skb->priority = (tid > 7) ? 0 : tid;
++}
+
+- return TXRX_CONTINUE;
++static void ieee80211_verify_ip_alignment(struct ieee80211_txrx_data *rx)
++{
++#ifdef CONFIG_MAC80211_DEBUG_PACKET_ALIGNMENT
++ int hdrlen;
++
++ if (!WLAN_FC_DATA_PRESENT(rx->fc))
++ return;
++
++ /*
++ * Drivers are required to align the payload data in a way that
++ * guarantees that the contained IP header is aligned to a four-
++ * byte boundary. In the case of regular frames, this simply means
++ * aligning the payload to a four-byte boundary (because either
++ * the IP header is directly contained, or IV/RFC1042 headers that
++ * have a length divisible by four are in front of it.
++ *
++ * With A-MSDU frames, however, the payload data address must
++ * yield two modulo four because there are 14-byte 802.3 headers
++ * within the A-MSDU frames that push the IP header further back
++ * to a multiple of four again. Thankfully, the specs were sane
++ * enough this time around to require padding each A-MSDU subframe
++ * to a length that is a multiple of four.
++ *
++ * Padding like atheros hardware adds which is inbetween the 802.11
++ * header and the payload is not supported, the driver is required
++ * to move the 802.11 header further back in that case.
++ */
++ hdrlen = ieee80211_get_hdrlen(rx->fc);
++ if (rx->flags & IEEE80211_TXRXD_RX_AMSDU)
++ hdrlen += ETH_HLEN;
++ WARN_ON_ONCE(((unsigned long)(rx->skb->data + hdrlen)) & 3);
++#endif
+ }
+
+
+@@ -340,52 +364,6 @@ static u32 ieee80211_rx_load_stats(struc
+ return load;
+ }
+
+-#ifdef CONFIG_MAC80211_DEBUG_PACKET_ALIGNMENT
+-static ieee80211_txrx_result
+-ieee80211_rx_h_verify_ip_alignment(struct ieee80211_txrx_data *rx)
+-{
+- int hdrlen;
+-
+- if (!WLAN_FC_DATA_PRESENT(rx->fc))
+- return TXRX_CONTINUE;
+-
+- /*
+- * Drivers are required to align the payload data in a way that
+- * guarantees that the contained IP header is aligned to a four-
+- * byte boundary. In the case of regular frames, this simply means
+- * aligning the payload to a four-byte boundary (because either
+- * the IP header is directly contained, or IV/RFC1042 headers that
+- * have a length divisible by four are in front of it.
+- *
+- * With A-MSDU frames, however, the payload data address must
+- * yield two modulo four because there are 14-byte 802.3 headers
+- * within the A-MSDU frames that push the IP header further back
+- * to a multiple of four again. Thankfully, the specs were sane
+- * enough this time around to require padding each A-MSDU subframe
+- * to a length that is a multiple of four.
+- *
+- * Padding like atheros hardware adds which is inbetween the 802.11
+- * header and the payload is not supported, the driver is required
+- * to move the 802.11 header further back in that case.
+- */
+- hdrlen = ieee80211_get_hdrlen(rx->fc);
+- if (rx->flags & IEEE80211_TXRXD_RX_AMSDU)
+- hdrlen += ETH_HLEN;
+- WARN_ON_ONCE(((unsigned long)(rx->skb->data + hdrlen)) & 3);
+-
+- return TXRX_CONTINUE;
+-}
+-#endif
+-
+-ieee80211_rx_handler ieee80211_rx_pre_handlers[] =
+-{
+- ieee80211_rx_h_parse_qos,
+-#ifdef CONFIG_MAC80211_DEBUG_PACKET_ALIGNMENT
+- ieee80211_rx_h_verify_ip_alignment,
+-#endif
+- NULL
+-};
+-
+ /* rx handlers */
+
+ static ieee80211_txrx_result
+@@ -1747,9 +1725,9 @@ static void __ieee80211_rx_handle_packet
+ if (unlikely(local->sta_sw_scanning || local->sta_hw_scanning))
+ rx.flags |= IEEE80211_TXRXD_RXIN_SCAN;
+
+- if (__ieee80211_invoke_rx_handlers(local, local->rx_pre_handlers, &rx,
+- sta) != TXRX_CONTINUE)
+- goto end;
++ ieee80211_parse_qos(&rx);
++ ieee80211_verify_ip_alignment(&rx);
++
+ skb = rx.skb;
+
+ if (sta && !(sta->flags & (WLAN_STA_WDS | WLAN_STA_ASSOC_AP)) &&
diff -up linux-2.6.24.noarch/net/mac80211/debugfs_sta.c.orig linux-2.6.24.noarch/net/mac80211/debugfs_sta.c
--- linux-2.6.24.noarch/net/mac80211/debugfs_sta.c.orig 2008-01-24 17:58:37.000000000 -0500
-+++ linux-2.6.24.noarch/net/mac80211/debugfs_sta.c 2008-01-29 17:07:21.000000000 -0500
++++ linux-2.6.24.noarch/net/mac80211/debugfs_sta.c 2008-02-01 17:10:38.000000000 -0500
@@ -55,6 +55,13 @@ static const struct file_operations sta_
.open = mac80211_open_file_generic, \
}
@@ -658,8 +799,8 @@
debugfs_remove(sta->debugfs.dir);
sta->debugfs.dir = NULL;
diff -up linux-2.6.24.noarch/net/mac80211/ieee80211.c.orig linux-2.6.24.noarch/net/mac80211/ieee80211.c
---- linux-2.6.24.noarch/net/mac80211/ieee80211.c.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/net/mac80211/ieee80211.c 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/net/mac80211/ieee80211.c.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/net/mac80211/ieee80211.c 2008-02-01 17:11:46.000000000 -0500
@@ -411,6 +411,329 @@ static int ieee80211_stop(struct net_dev
return 0;
}
@@ -1017,9 +1158,17 @@
default: /* should never get here! */
printk(KERN_ERR "%s: Unknown message type (%d)\n",
wiphy_name(local->hw.wiphy), skb->pkt_type);
+@@ -1068,7 +1404,6 @@ struct ieee80211_hw *ieee80211_alloc_hw(
+ local->hw.queues = 1; /* default */
+
+ local->mdev = mdev;
+- local->rx_pre_handlers = ieee80211_rx_pre_handlers;
+ local->rx_handlers = ieee80211_rx_handlers;
+ local->tx_handlers = ieee80211_tx_handlers;
+
diff -up linux-2.6.24.noarch/net/mac80211/wme.c.orig linux-2.6.24.noarch/net/mac80211/wme.c
---- linux-2.6.24.noarch/net/mac80211/wme.c.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/net/mac80211/wme.c 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/net/mac80211/wme.c.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/net/mac80211/wme.c 2008-02-01 17:10:38.000000000 -0500
@@ -19,10 +19,13 @@
#include "wme.h"
@@ -1219,8 +1368,8 @@
+ }
+}
diff -up linux-2.6.24.noarch/net/mac80211/ieee80211_i.h.orig linux-2.6.24.noarch/net/mac80211/ieee80211_i.h
---- linux-2.6.24.noarch/net/mac80211/ieee80211_i.h.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/net/mac80211/ieee80211_i.h 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/net/mac80211/ieee80211_i.h.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/net/mac80211/ieee80211_i.h 2008-02-01 17:11:46.000000000 -0500
@@ -165,6 +165,7 @@ struct ieee80211_txrx_data {
#define IEEE80211_TXPD_DO_NOT_ENCRYPT BIT(1)
#define IEEE80211_TXPD_REQUEUE BIT(2)
@@ -1249,7 +1398,15 @@
struct tasklet_struct tx_pending_tasklet;
/* number of interfaces with corresponding IFF_ flags */
-@@ -627,6 +630,12 @@ struct ieee80211_local {
+@@ -477,7 +480,6 @@ struct ieee80211_local {
+ * deliver multicast frames both back to wireless
+ * media and to the local net stack */
+
+- ieee80211_rx_handler *rx_pre_handlers;
+ ieee80211_rx_handler *rx_handlers;
+ ieee80211_tx_handler *tx_handlers;
+
+@@ -627,6 +629,12 @@ struct ieee80211_local {
#endif
};
@@ -1262,7 +1419,7 @@
static inline struct ieee80211_local *hw_to_local(
struct ieee80211_hw *hw)
{
-@@ -782,9 +791,15 @@ int ieee80211_ht_cap_ie_to_ht_info(struc
+@@ -782,9 +790,15 @@ int ieee80211_ht_cap_ie_to_ht_info(struc
int ieee80211_ht_addt_info_ie_to_ht_bss_info(
struct ieee80211_ht_addt_info *ht_add_info_ie,
struct ieee80211_ht_bss_info *bss_info);
@@ -1278,9 +1435,17 @@
/* ieee80211_iface.c */
int ieee80211_if_add(struct net_device *dev, const char *name,
struct net_device **new_dev, int type);
+@@ -801,7 +815,6 @@ void ieee80211_regdomain_init(void);
+ void ieee80211_set_default_regdomain(struct ieee80211_hw_mode *mode);
+
+ /* rx handling */
+-extern ieee80211_rx_handler ieee80211_rx_pre_handlers[];
+ extern ieee80211_rx_handler ieee80211_rx_handlers[];
+
+ /* tx handling */
diff -up linux-2.6.24.noarch/net/mac80211/ieee80211_sta.c.orig linux-2.6.24.noarch/net/mac80211/ieee80211_sta.c
---- linux-2.6.24.noarch/net/mac80211/ieee80211_sta.c.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/net/mac80211/ieee80211_sta.c 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/net/mac80211/ieee80211_sta.c.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/net/mac80211/ieee80211_sta.c 2008-02-01 17:10:38.000000000 -0500
@@ -492,6 +492,7 @@ static void ieee80211_set_associated(str
ifsta->last_probe = jiffies;
ieee80211_led_assoc(local, assoc);
@@ -1544,8 +1709,8 @@
if (len < (IEEE80211_MIN_ACTION_SIZE +
sizeof(mgmt->u.action.u.delba)))
diff -up linux-2.6.24.noarch/net/mac80211/sta_info.h.orig linux-2.6.24.noarch/net/mac80211/sta_info.h
---- linux-2.6.24.noarch/net/mac80211/sta_info.h.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/net/mac80211/sta_info.h 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/net/mac80211/sta_info.h.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/net/mac80211/sta_info.h 2008-02-01 17:10:38.000000000 -0500
@@ -33,13 +33,36 @@
#define STA_TID_NUM 16
@@ -1622,8 +1787,8 @@
#endif
};
diff -up linux-2.6.24.noarch/net/mac80211/tx.c.orig linux-2.6.24.noarch/net/mac80211/tx.c
---- linux-2.6.24.noarch/net/mac80211/tx.c.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/net/mac80211/tx.c 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/net/mac80211/tx.c.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/net/mac80211/tx.c 2008-02-01 17:10:38.000000000 -0500
@@ -1260,6 +1260,8 @@ int ieee80211_master_start_xmit(struct s
control.flags |= IEEE80211_TXCTL_REQUEUE;
if (pkt_data->flags & IEEE80211_TXPD_EAPOL_FRAME)
@@ -1671,8 +1836,8 @@
!(ethertype == ETH_P_PAE &&
compare_ether_addr(dev->dev_addr,
diff -up linux-2.6.24.noarch/net/mac80211/sta_info.c.orig linux-2.6.24.noarch/net/mac80211/sta_info.c
---- linux-2.6.24.noarch/net/mac80211/sta_info.c.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/net/mac80211/sta_info.c 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/net/mac80211/sta_info.c.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/net/mac80211/sta_info.c 2008-02-01 17:10:38.000000000 -0500
@@ -117,8 +117,10 @@ static void sta_info_release(struct kref
while ((skb = skb_dequeue(&sta->tx_filtered)) != NULL) {
dev_kfree_skb_any(skb);
@@ -1713,8 +1878,8 @@
skb_queue_head_init(&sta->ps_tx_buf);
skb_queue_head_init(&sta->tx_filtered);
diff -up linux-2.6.24.noarch/drivers/net/wireless/libertas/dev.h.orig linux-2.6.24.noarch/drivers/net/wireless/libertas/dev.h
---- linux-2.6.24.noarch/drivers/net/wireless/libertas/dev.h.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/libertas/dev.h 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/libertas/dev.h.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/libertas/dev.h 2008-02-01 17:10:38.000000000 -0500
@@ -143,9 +143,12 @@ struct lbs_private {
wait_queue_head_t waitq;
struct workqueue_struct *work_thread;
@@ -1737,8 +1902,8 @@
};
diff -up linux-2.6.24.noarch/drivers/net/wireless/libertas/assoc.h.orig linux-2.6.24.noarch/drivers/net/wireless/libertas/assoc.h
---- linux-2.6.24.noarch/drivers/net/wireless/libertas/assoc.h.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/libertas/assoc.h 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/libertas/assoc.h.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/libertas/assoc.h 2008-02-01 17:10:38.000000000 -0500
@@ -7,6 +7,5 @@
void lbs_association_worker(struct work_struct *work);
@@ -1747,8 +1912,8 @@
#endif /* _LBS_ASSOC_H */
diff -up linux-2.6.24.noarch/drivers/net/wireless/libertas/main.c.orig linux-2.6.24.noarch/drivers/net/wireless/libertas/main.c
---- linux-2.6.24.noarch/drivers/net/wireless/libertas/main.c.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/libertas/main.c 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/libertas/main.c.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/libertas/main.c 2008-02-01 17:10:38.000000000 -0500
@@ -985,6 +985,18 @@ out:
lbs_deb_leave(LBS_DEB_CMD);
}
@@ -1778,8 +1943,8 @@
sprintf(priv->mesh_ssid, "mesh");
priv->mesh_ssid_len = 4;
diff -up linux-2.6.24.noarch/drivers/net/wireless/libertas/debugfs.c.orig linux-2.6.24.noarch/drivers/net/wireless/libertas/debugfs.c
---- linux-2.6.24.noarch/drivers/net/wireless/libertas/debugfs.c.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/libertas/debugfs.c 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/libertas/debugfs.c.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/libertas/debugfs.c 2008-02-01 17:10:38.000000000 -0500
@@ -314,7 +314,7 @@ static ssize_t lbs_setuserscan(struct fi
lbs_scan_networks(priv, scan_cfg, 1);
@@ -1790,8 +1955,8 @@
if (priv->surpriseremoved)
goto out_scan_cfg;
diff -up linux-2.6.24.noarch/drivers/net/wireless/libertas/cmd.c.orig linux-2.6.24.noarch/drivers/net/wireless/libertas/cmd.c
---- linux-2.6.24.noarch/drivers/net/wireless/libertas/cmd.c.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/libertas/cmd.c 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/libertas/cmd.c.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/libertas/cmd.c 2008-02-01 17:10:38.000000000 -0500
@@ -1154,9 +1154,9 @@ static void lbs_submit_command(struct lb
command == CMD_802_11_AUTHENTICATE)
timeo = 10 * HZ;
@@ -1854,8 +2019,8 @@
}
EXPORT_SYMBOL_GPL(lbs_cmd_copyback);
diff -up linux-2.6.24.noarch/drivers/net/wireless/libertas/join.h.orig linux-2.6.24.noarch/drivers/net/wireless/libertas/join.h
---- linux-2.6.24.noarch/drivers/net/wireless/libertas/join.h.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/libertas/join.h 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/libertas/join.h.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/libertas/join.h 2008-02-01 17:10:38.000000000 -0500
@@ -48,6 +48,4 @@ int lbs_send_deauthentication(struct lbs
int lbs_associate(struct lbs_private *priv, struct assoc_request *assoc_req);
@@ -1864,8 +2029,8 @@
-
#endif
diff -up linux-2.6.24.noarch/drivers/net/wireless/libertas/join.c.orig linux-2.6.24.noarch/drivers/net/wireless/libertas/join.c
---- linux-2.6.24.noarch/drivers/net/wireless/libertas/join.c.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/libertas/join.c 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/libertas/join.c.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/libertas/join.c 2008-02-01 17:10:38.000000000 -0500
@@ -99,23 +99,6 @@ static void lbs_set_basic_rate_flags(u8
}
@@ -1901,8 +2066,8 @@
priv->NF[TYPE_RXPD][TYPE_AVG] = 0;
diff -up linux-2.6.24.noarch/drivers/net/wireless/libertas/scan.c.orig linux-2.6.24.noarch/drivers/net/wireless/libertas/scan.c
---- linux-2.6.24.noarch/drivers/net/wireless/libertas/scan.c.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/libertas/scan.c 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/libertas/scan.c.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/libertas/scan.c 2008-02-01 17:10:38.000000000 -0500
@@ -73,6 +73,23 @@ static const u8 bcastmac[ETH_ALEN] = { 0
/* */
/*********************************************************************/
@@ -1988,8 +2153,8 @@
/* Update RSSI if current BSS is a locally created ad-hoc BSS */
diff -up linux-2.6.24.noarch/drivers/net/wireless/libertas/cmdresp.c.orig linux-2.6.24.noarch/drivers/net/wireless/libertas/cmdresp.c
---- linux-2.6.24.noarch/drivers/net/wireless/libertas/cmdresp.c.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/libertas/cmdresp.c 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/libertas/cmdresp.c.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/libertas/cmdresp.c 2008-02-01 17:10:38.000000000 -0500
@@ -74,7 +74,7 @@ void lbs_mac_event_disconnected(struct l
lbs_deb_cmd("disconnected, so exit PS mode\n");
lbs_ps_wakeup(priv, 0);
@@ -2012,8 +2177,8 @@
if (resp->seqnum != resp->seqnum) {
lbs_pr_info("Received CMD_RESP with invalid sequence %d (expected %d)\n",
diff -up linux-2.6.24.noarch/drivers/net/wireless/libertas/assoc.c.orig linux-2.6.24.noarch/drivers/net/wireless/libertas/assoc.c
---- linux-2.6.24.noarch/drivers/net/wireless/libertas/assoc.c.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/libertas/assoc.c 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/libertas/assoc.c.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/libertas/assoc.c 2008-02-01 17:10:38.000000000 -0500
@@ -181,17 +181,6 @@ int lbs_update_channel(struct lbs_privat
return ret;
}
@@ -2066,8 +2231,8 @@
lbs_prepare_and_send_command(priv,
CMD_802_11_RSSI,
diff -up linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965-commands.h.orig linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965-commands.h
---- linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965-commands.h.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965-commands.h 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965-commands.h.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965-commands.h 2008-02-01 17:10:38.000000000 -0500
@@ -1300,6 +1300,25 @@ struct iwl4965_tx_resp {
__le32 status; /* TX status (for aggregation status of 1st frame) */
} __attribute__ ((packed));
@@ -2107,8 +2272,8 @@
__le16 scd_ssn;
} __attribute__ ((packed));
diff -up linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965-rs.c.orig linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965-rs.c
---- linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965-rs.c.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965-rs.c 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965-rs.c.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965-rs.c 2008-02-01 17:10:38.000000000 -0500
@@ -83,7 +83,7 @@ struct iwl4965_rate_scale_data {
/**
* struct iwl4965_scale_tbl_info -- tx params and success history for all rates
@@ -2567,8 +2732,8 @@
#endif
diff -up linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl4965-base.c.orig linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl4965-base.c
---- linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl4965-base.c.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl4965-base.c 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl4965-base.c.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl4965-base.c 2008-02-01 17:10:38.000000000 -0500
@@ -205,7 +205,7 @@ static void iwl4965_print_hex_dump(int l
* See more detailed info in iwl-4965-hw.h.
***************************************************/
@@ -2868,8 +3033,8 @@
spin_lock_init(&priv->lock);
diff -up linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965.c.orig linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965.c
---- linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965.c.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965.c 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965.c.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965.c 2008-02-01 17:10:39.000000000 -0500
@@ -79,6 +79,30 @@ const struct iwl4965_rate_info iwl4965_r
IWL_DECLARE_RATE_INFO(60, 60, 48, INV, 48, INV, 48, INV),/* 60mbps */
};
@@ -3616,7 +3781,7 @@
#endif /* CONFIG_IWL4965_HT */
/**
-@@ -4717,56 +4377,6 @@ static void iwl4965_sta_modify_del_ba_ti
+@@ -4730,56 +4390,6 @@ static void iwl4965_sta_modify_del_ba_ti
iwl4965_send_add_station(priv, &priv->stations[sta_id].sta, CMD_ASYNC);
}
@@ -3673,7 +3838,7 @@
/*
* Find first available (lowest unused) Tx Queue, mark it "active".
* Called only when finding queue for aggregation.
-@@ -4783,70 +4393,78 @@ static int iwl4965_txq_ctx_activate_free
+@@ -4796,70 +4406,78 @@ static int iwl4965_txq_ctx_activate_free
return -1;
}
@@ -3774,7 +3939,7 @@
return -EINVAL;
}
-@@ -4860,24 +4478,81 @@ int iwl4965_mac_ht_tx_agg_stop(struct ie
+@@ -4873,24 +4491,81 @@ int iwl4965_mac_ht_tx_agg_stop(struct ie
if (sta_id == IWL_INVALID_STATION)
return -ENXIO;
@@ -3860,7 +4025,7 @@
#endif /* CONFIG_IWL4965_HT */
/* Set up 4965-specific Rx frame reply handlers */
-@@ -4894,9 +4569,7 @@ void iwl4965_hw_rx_handler_setup(struct
+@@ -4907,9 +4582,7 @@ void iwl4965_hw_rx_handler_setup(struct
iwl4965_rx_missed_beacon_notif;
#ifdef CONFIG_IWL4965_HT
@@ -3870,7 +4035,7 @@
#endif /* CONFIG_IWL4965_HT */
}
-@@ -4907,11 +4580,6 @@ void iwl4965_hw_setup_deferred_work(stru
+@@ -4920,11 +4593,6 @@ void iwl4965_hw_setup_deferred_work(stru
#ifdef CONFIG_IWL4965_SENSITIVITY
INIT_WORK(&priv->sensitivity_work, iwl4965_bg_sensitivity_work);
#endif
@@ -3883,8 +4048,8 @@
priv->statistics_periodic.data = (unsigned long)priv;
priv->statistics_periodic.function = iwl4965_bg_statistics_periodic;
diff -up linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965-rs.h.orig linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965-rs.h
---- linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965-rs.h.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965-rs.h 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965-rs.h.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965-rs.h 2008-02-01 17:10:39.000000000 -0500
@@ -212,6 +212,18 @@ enum {
#define LQ_SIZE 2 /* 2 mode tables: "Active" and "Search" */
@@ -3905,8 +4070,8 @@
enum iwl4965_table_type {
diff -up linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/Kconfig.orig linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/Kconfig
---- linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/Kconfig.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/Kconfig 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/Kconfig.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/Kconfig 2008-02-01 17:10:39.000000000 -0500
@@ -35,7 +35,6 @@ config IWL4965_HT
bool "Enable 802.11n HT features in iwl4965 driver"
depends on EXPERIMENTAL
@@ -3916,8 +4081,8 @@
This option enables IEEE 802.11n High Throughput features
for the iwl4965 driver.
diff -up linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965.h.orig linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965.h
---- linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965.h.orig 2008-01-29 17:06:50.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965.h 2008-01-29 17:07:21.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965.h.orig 2008-02-01 17:09:44.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/iwlwifi/iwl-4965.h 2008-02-01 17:10:39.000000000 -0500
@@ -433,7 +433,6 @@ struct iwl4965_rx_queue {
#define IWL_INVALID_VALUE -1
linux-2.6-wireless.patch:
View full diff with command:
/usr/bin/cvs -f diff -kk -u -N -r 1.20 -r 1.21 linux-2.6-wireless.patch
Index: linux-2.6-wireless.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/linux-2.6-wireless.patch,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- linux-2.6-wireless.patch 29 Jan 2008 22:33:46 -0000 1.20
+++ linux-2.6-wireless.patch 1 Feb 2008 22:33:38 -0000 1.21
@@ -1,3 +1,110 @@
+commit 04a9e451fdbbfb84d6b87042b991f729f1c14249
+Author: John W. Linville <linville at tuxdriver.com>
+Date: Fri Feb 1 16:03:45 2008 -0500
+
+ ath5k: fix section mismatch warning
+
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit 3eadf5f4f635ed6a6cd921195c320d58b5f9a185
+Author: Johannes Berg <johannes at sipsolutions.net>
+Date: Thu Jan 31 19:33:53 2008 +0100
+
+ mac80211: fix initialisation error path
+
+ The error handling in ieee80211_init() is broken when any of
+ the built-in rate control algorithms fail to initialise, fix
+ it and rename the error labels.
+
+ Signed-off-by: Johannes Berg <johannes at sipsolutions.net>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit f0b9205cfb77d992e8c0f727de3099159c80dbbd
+Author: Johannes Berg <johannes at sipsolutions.net>
+Date: Thu Jan 31 19:31:57 2008 +0100
+
+ mac80211 rate control: fix section mismatch
+
+ When the rate control algorithms are built-in, their exit
+ functions can be called from mac80211's init function so
+ they cannot be marked __exit.
+
+ Signed-off-by: Johannes Berg <johannes at sipsolutions.net>
+ Acked-by: Stefano Brivio <stefano.brivio at polimi.it>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit e903fbd41e9a723da194e91816bfb69d442eb116
+Author: Reinette Chatre <reinette.chatre at intel.com>
+Date: Wed Jan 30 22:05:15 2008 -0800
+
+ iwlwifi: fix merge sequence: exit on error before state change
+
+ The intention behind the original patch:
+ "iwlwifi: fix possible read attempt on ucode that is not available"
+ was to exit before any state is changed. Due to its submission directly
+ to 2.6.24 it was not clear how this relates to the latest iwlwifi work.
+
+ This patch does exactly the same as the previous patch, just earlier to
+ prevent any state from being changed if there is an error.
+
+ Signed-off-by: Reinette Chatre <reinette.chatre at intel.com>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit ff5059eff254fbe1d2aa4f47e24aa6fc71b98e65
+Author: Tomas Winkler <tomas.winkler at intel.com>
+Date: Wed Jan 30 22:05:14 2008 -0800
+
+ iwlwifi: remove ieee80211 types from iwl-helpers.h
+
+ This patch removes IEEE80211_STYPE_BACK_REQ and
+ IEEE80211_STYPE_BACK defines from iwl-helpers.h. These are already
+ defined in include/linux/ieee80211.h
+
+ Signed-off-by: Tomas Winkler <tomas.winkler at intel.com>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit e53cfe0ead3b5e5a463e7c3f01033373a0faaac1
+Author: Tomas Winkler <tomas.winkler at intel.com>
+Date: Wed Jan 30 22:05:13 2008 -0800
+
+ iwlwifi: Fix MIMO PS mode
+
+ This patch setups correctly MIMO PS mode flags
+
+ Signed-off-by: Guy Cohen <guy.cohen at intel.com>
+ Signed-off-by: Tomas Winkler <tomas.winkler at intel.com>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit bd8a040e246280994802a56383def211fc790524
+Author: Ron Rindjunsky <ron.rindjunsky at intel.com>
+Date: Wed Jan 30 22:05:12 2008 -0800
+
+ iwlwifi: fix sparse warning in iwl 3945
+
+ This patch fixes a sparse warning over iwl3945_add_radiotap function by
+ turning it static
+
+ Signed-off-by: Ron Rindjunsky <ron.rindjunsky at intel.com>
+ Acked-by: Tomas Winkler <tomas.winkler at intel.com>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit 6feeb8aad7925b4c00f785eac3039c772629b42f
+Author: Johannes Berg <johannes at sipsolutions.net>
+Date: Tue Jan 29 16:57:51 2008 +0100
+
+ mac80211: make alignment warning optional
+
+ Driver authors should be aware of the alignment requirements, but
+ not everybody cares about the warning. This patch makes it depend
+ on a new Kconfig symbol MAC80211_DEBUG_PACKET_ALIGNMENT which can
+ be enabled regardless of MAC80211_DEBUG and is recommended for
+ driver authors (only). This also restricts the warning to data
+ packets so other packets need not be realigned to not trigger the
+ warning.
+
+ Signed-off-by: Johannes Berg <johannes at sipsolutions.net>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
commit ec945b84a6a23c0afed6a216c6a2bdeec5c2e6d9
Author: Marcin Juszkiewicz <openembedded at haerwu.biz>
Date: Tue Jan 29 09:42:53 2008 +0100
@@ -7265,8 +7372,8 @@
Signed-off-by: John W. Linville <linville at tuxdriver.com>
diff -up linux-2.6.24.noarch/include/linux/nl80211.h.orig linux-2.6.24.noarch/include/linux/nl80211.h
---- linux-2.6.24.noarch/include/linux/nl80211.h.orig 2008-01-29 16:52:27.000000000 -0500
-+++ linux-2.6.24.noarch/include/linux/nl80211.h 2008-01-29 16:52:34.000000000 -0500
+--- linux-2.6.24.noarch/include/linux/nl80211.h.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/include/linux/nl80211.h 2008-02-01 17:01:45.000000000 -0500
@@ -7,6 +7,18 @@
*/
@@ -7468,8 +7575,8 @@
+
#endif /* __LINUX_NL80211_H */
diff -up linux-2.6.24.noarch/include/linux/wireless.h.orig linux-2.6.24.noarch/include/linux/wireless.h
---- linux-2.6.24.noarch/include/linux/wireless.h.orig 2008-01-29 16:52:27.000000000 -0500
-+++ linux-2.6.24.noarch/include/linux/wireless.h 2008-01-29 16:52:34.000000000 -0500
+--- linux-2.6.24.noarch/include/linux/wireless.h.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/include/linux/wireless.h 2008-02-01 17:01:45.000000000 -0500
@@ -541,6 +541,16 @@
/* Maximum size of returned data */
#define IW_SCAN_MAX_DATA 4096 /* In bytes */
@@ -7499,7 +7606,7 @@
diff -up linux-2.6.24.noarch/include/linux/input.h.orig linux-2.6.24.noarch/include/linux/input.h
--- linux-2.6.24.noarch/include/linux/input.h.orig 2008-01-24 17:58:37.000000000 -0500
-+++ linux-2.6.24.noarch/include/linux/input.h 2008-01-29 16:56:36.000000000 -0500
++++ linux-2.6.24.noarch/include/linux/input.h 2008-02-01 17:01:45.000000000 -0500
@@ -371,6 +371,8 @@ struct input_absinfo {
#define KEY_BRIGHTNESS_ZERO 244 /* brightness off, use ambient */
#define KEY_DISPLAY_OFF 245 /* display device to off state */
@@ -7510,8 +7617,8 @@
#define BTN_0 0x100
#define BTN_1 0x101
diff -up linux-2.6.24.noarch/include/linux/pci_ids.h.orig linux-2.6.24.noarch/include/linux/pci_ids.h
---- linux-2.6.24.noarch/include/linux/pci_ids.h.orig 2008-01-29 16:52:27.000000000 -0500
-+++ linux-2.6.24.noarch/include/linux/pci_ids.h 2008-01-29 16:52:34.000000000 -0500
+--- linux-2.6.24.noarch/include/linux/pci_ids.h.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/include/linux/pci_ids.h 2008-02-01 17:01:45.000000000 -0500
@@ -2078,6 +2078,9 @@
#define PCI_DEVICE_ID_ALTIMA_AC9100 0x03ea
#define PCI_DEVICE_ID_ALTIMA_AC1003 0x03eb
@@ -7523,8 +7630,8 @@
#define PCI_VENDOR_ID_ARECA 0x17d3
diff -up linux-2.6.24.noarch/include/linux/ieee80211.h.orig linux-2.6.24.noarch/include/linux/ieee80211.h
---- linux-2.6.24.noarch/include/linux/ieee80211.h.orig 2008-01-29 16:52:27.000000000 -0500
-+++ linux-2.6.24.noarch/include/linux/ieee80211.h 2008-01-29 16:52:34.000000000 -0500
+--- linux-2.6.24.noarch/include/linux/ieee80211.h.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/include/linux/ieee80211.h 2008-02-01 17:02:35.000000000 -0500
@@ -54,6 +54,8 @@
#define IEEE80211_STYPE_ACTION 0x00D0
@@ -7586,7 +7693,7 @@
} u;
} __attribute__ ((packed)) action;
} u;
-@@ -205,6 +226,66 @@ struct ieee80211_cts {
+@@ -205,6 +226,72 @@ struct ieee80211_cts {
u8 ra[6];
} __attribute__ ((packed));
@@ -7650,10 +7757,16 @@
+#define IEEE80211_HT_IE_HT_PROTECTION 0x0003
+#define IEEE80211_HT_IE_NON_GF_STA_PRSNT 0x0004
+#define IEEE80211_HT_IE_NON_HT_STA_PRSNT 0x0010
++
++/* MIMO Power Save Modes */
++#define WLAN_HT_CAP_MIMO_PS_STATIC 0
++#define WLAN_HT_CAP_MIMO_PS_DYNAMIC 1
++#define WLAN_HT_CAP_MIMO_PS_INVALID 2
++#define WLAN_HT_CAP_MIMO_PS_DISABLED 3
/* Authentication algorithms */
#define WLAN_AUTH_OPEN 0
-@@ -271,6 +352,18 @@ enum ieee80211_statuscode {
+@@ -271,6 +358,18 @@ enum ieee80211_statuscode {
WLAN_STATUS_UNSUPP_RSN_VERSION = 44,
WLAN_STATUS_INVALID_RSN_IE_CAP = 45,
WLAN_STATUS_CIPHER_SUITE_REJECTED = 46,
@@ -7672,7 +7785,7 @@
[...4137 lines suppressed...]
+/*
+ * Radio tuning for Maxim max2820 on RTL8180
@@ -125499,8 +125664,8 @@
+ .set_chan = max2820_rf_set_channel
+};
diff -up linux-2.6.24.noarch/drivers/net/wireless/adm8211.c.orig linux-2.6.24.noarch/drivers/net/wireless/adm8211.c
---- linux-2.6.24.noarch/drivers/net/wireless/adm8211.c.orig 2008-01-29 16:52:29.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/adm8211.c 2008-01-29 16:52:35.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/adm8211.c.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/adm8211.c 2008-02-01 17:01:47.000000000 -0500
@@ -104,7 +104,7 @@ static int adm8211_read_eeprom(struct ie
if (!priv->eeprom)
return -ENOMEM;
@@ -125534,8 +125699,8 @@
if (!is_valid_ether_addr(perm_addr)) {
printk(KERN_WARNING "%s (adm8211): Invalid hwaddr in EEPROM!\n",
diff -up linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_common.h.orig linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_common.h
---- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_common.h.orig 2008-01-29 16:52:29.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_common.h 2008-01-29 16:52:35.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_common.h.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_common.h 2008-02-01 17:01:47.000000000 -0500
@@ -188,10 +188,10 @@
struct hfa384x_comp_ident
@@ -125599,8 +125764,8 @@
diff -up linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_80211_rx.c.orig linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_80211_rx.c
---- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_80211_rx.c.orig 2008-01-29 16:52:29.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_80211_rx.c 2008-01-29 16:52:35.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_80211_rx.c.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_80211_rx.c 2008-02-01 17:01:47.000000000 -0500
@@ -1039,7 +1039,7 @@ void hostap_80211_rx(struct net_device *
memcpy(skb_push(skb, ETH_ALEN), src, ETH_ALEN);
memcpy(skb_push(skb, ETH_ALEN), dst, ETH_ALEN);
@@ -125611,8 +125776,8 @@
skb_pull(skb, hdrlen);
len = htons(skb->len);
diff -up linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_ap.c.orig linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_ap.c
---- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_ap.c.orig 2008-01-29 16:52:29.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_ap.c 2008-01-29 16:52:35.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_ap.c.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_ap.c 2008-02-01 17:01:47.000000000 -0500
@@ -258,7 +258,7 @@ static void ap_handle_timer(unsigned lon
sta->addr, ap->tx_callback_poll);
} else {
@@ -125872,8 +126037,8 @@
if (local->ap->ap_policy != AP_OTHER_AP_EVEN_IBSS &&
diff -up linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_wlan.h.orig linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_wlan.h
---- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_wlan.h.orig 2008-01-29 16:52:29.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_wlan.h 2008-01-29 16:52:35.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_wlan.h.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_wlan.h 2008-02-01 17:01:47.000000000 -0500
@@ -39,20 +39,20 @@ struct linux_wlan_ng_prism_hdr {
} __attribute__ ((packed));
@@ -126174,8 +126339,8 @@
struct comm_tallies_sums {
diff -up linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_pci.c.orig linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_pci.c
---- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_pci.c.orig 2008-01-29 16:52:29.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_pci.c 2008-01-29 16:52:35.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_pci.c.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_pci.c 2008-02-01 17:01:47.000000000 -0500
@@ -128,8 +128,8 @@ static inline u16 hfa384x_inw_debug(stru
#define HFA384X_INB(a) hfa384x_inb_debug(dev, (a))
#define HFA384X_OUTW(v,a) hfa384x_outw_debug(dev, (a), (v))
@@ -126225,8 +126390,8 @@
for ( ; len > 1; len -= 2)
HFA384X_OUTW_DATA(*pos++, d_off);
diff -up linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_download.c.orig linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_download.c
---- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_download.c.orig 2008-01-29 16:52:29.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_download.c 2008-01-29 16:52:35.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_download.c.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_download.c 2008-02-01 17:01:47.000000000 -0500
@@ -100,7 +100,7 @@ static int hfa384x_from_aux(struct net_d
#ifdef PRISM2_PCI
@@ -126287,8 +126452,8 @@
local->hw_downloading = 1;
diff -up linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_cs.c.orig linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_cs.c
---- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_cs.c.orig 2008-01-29 16:52:29.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_cs.c 2008-01-29 16:56:30.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_cs.c.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_cs.c 2008-02-01 17:01:47.000000000 -0500
@@ -845,15 +845,13 @@ static struct pcmcia_device_id hostap_cs
0x4b801a17),
PCMCIA_MFC_DEVICE_PROD_ID12(0, "SanDisk", "ConnectPlus",
@@ -126326,8 +126491,8 @@
};
MODULE_DEVICE_TABLE(pcmcia, hostap_cs_ids);
diff -up linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_hw.c.orig linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_hw.c
---- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_hw.c.orig 2008-01-29 16:52:29.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_hw.c 2008-01-29 16:52:35.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_hw.c.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_hw.c 2008-02-01 17:01:47.000000000 -0500
@@ -1075,7 +1075,7 @@ static int prism2_setup_rids(struct net_
{
struct hostap_interface *iface;
@@ -126414,8 +126579,8 @@
goto out;
}
diff -up linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_main.c.orig linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_main.c
---- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_main.c.orig 2008-01-29 16:52:29.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_main.c 2008-01-29 16:52:35.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_main.c.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_main.c 2008-02-01 17:01:47.000000000 -0500
@@ -296,7 +296,7 @@ int hostap_tx_callback_unregister(local_
int hostap_set_word(struct net_device *dev, int rid, u16 val)
{
@@ -126444,8 +126609,8 @@
wireless_send_event(local->dev, SIOCGIWAP, &wrqu, NULL);
return ret;
diff -up linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_info.c.orig linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_info.c
---- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_info.c.orig 2008-01-29 16:52:29.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_info.c 2008-01-29 16:52:35.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_info.c.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_info.c 2008-02-01 17:01:47.000000000 -0500
@@ -303,7 +303,7 @@ static void prism2_info_hostscanresults(
int i, result_size, copy_len, new_count;
struct hfa384x_hostscan_result *results, *prev;
@@ -126484,8 +126649,8 @@
for (i = 0; i < (left < 100 ? left : 100); i++)
PDEBUG2(DEBUG_EXTRA, " %02x", buf[i]);
diff -up linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_80211.h.orig linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_80211.h
---- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_80211.h.orig 2008-01-29 16:52:29.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_80211.h 2008-01-29 16:56:30.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_80211.h.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_80211.h 2008-02-01 17:01:47.000000000 -0500
@@ -5,52 +5,52 @@
#include <net/ieee80211_crypt.h>
@@ -126569,8 +126734,8 @@
enum {
PRISM2_RX_MONITOR, PRISM2_RX_MGMT, PRISM2_RX_NON_ASSOC,
diff -up linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_ioctl.c.orig linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_ioctl.c
---- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_ioctl.c.orig 2008-01-29 16:52:29.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_ioctl.c 2008-01-29 16:52:35.000000000 -0500
+--- linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_ioctl.c.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/drivers/net/wireless/hostap/hostap_ioctl.c 2008-02-01 17:01:47.000000000 -0500
@@ -84,7 +84,7 @@ static int prism2_get_datarates(struct n
if (len < 2)
return 0;
@@ -126835,8 +127000,8 @@
reason = cpu_to_le16(param->u.mlme.reason_code);
switch (param->u.mlme.cmd) {
diff -up linux-2.6.24.noarch/drivers/ssb/b43_pci_bridge.c.orig linux-2.6.24.noarch/drivers/ssb/b43_pci_bridge.c
---- linux-2.6.24.noarch/drivers/ssb/b43_pci_bridge.c.orig 2008-01-29 16:52:29.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/ssb/b43_pci_bridge.c 2008-01-29 16:52:35.000000000 -0500
+--- linux-2.6.24.noarch/drivers/ssb/b43_pci_bridge.c.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/drivers/ssb/b43_pci_bridge.c 2008-02-01 17:01:47.000000000 -0500
@@ -27,6 +27,8 @@ static const struct pci_device_id b43_pc
{ PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4321) },
{ PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4324) },
@@ -126847,8 +127012,8 @@
};
MODULE_DEVICE_TABLE(pci, b43_pci_bridge_tbl);
diff -up linux-2.6.24.noarch/drivers/ssb/pcmcia.c.orig linux-2.6.24.noarch/drivers/ssb/pcmcia.c
---- linux-2.6.24.noarch/drivers/ssb/pcmcia.c.orig 2008-01-29 16:52:29.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/ssb/pcmcia.c 2008-01-29 16:52:35.000000000 -0500
+--- linux-2.6.24.noarch/drivers/ssb/pcmcia.c.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/drivers/ssb/pcmcia.c 2008-02-01 17:01:47.000000000 -0500
@@ -94,7 +94,6 @@ int ssb_pcmcia_switch_core(struct ssb_bu
struct ssb_device *dev)
{
@@ -126999,8 +127164,8 @@
}
diff -up linux-2.6.24.noarch/drivers/ssb/main.c.orig linux-2.6.24.noarch/drivers/ssb/main.c
---- linux-2.6.24.noarch/drivers/ssb/main.c.orig 2008-01-29 16:52:29.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/ssb/main.c 2008-01-29 16:52:35.000000000 -0500
+--- linux-2.6.24.noarch/drivers/ssb/main.c.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/drivers/ssb/main.c 2008-02-01 17:01:47.000000000 -0500
@@ -872,14 +872,22 @@ EXPORT_SYMBOL(ssb_clockspeed);
static u32 ssb_tmslow_reject_bitmask(struct ssb_device *dev)
@@ -127026,8 +127191,8 @@
}
return (SSB_TMSLOW_REJECT_22 | SSB_TMSLOW_REJECT_23);
diff -up linux-2.6.24.noarch/drivers/ssb/pci.c.orig linux-2.6.24.noarch/drivers/ssb/pci.c
---- linux-2.6.24.noarch/drivers/ssb/pci.c.orig 2008-01-29 16:52:29.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/ssb/pci.c 2008-01-29 16:52:35.000000000 -0500
+--- linux-2.6.24.noarch/drivers/ssb/pci.c.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/drivers/ssb/pci.c 2008-02-01 17:01:47.000000000 -0500
@@ -212,29 +212,29 @@ static inline u8 ssb_crc8(u8 crc, u8 dat
return t[crc ^ data];
}
@@ -127473,8 +127638,8 @@
err = -EINVAL;
goto out_kfree;
diff -up linux-2.6.24.noarch/Documentation/feature-removal-schedule.txt.orig linux-2.6.24.noarch/Documentation/feature-removal-schedule.txt
---- linux-2.6.24.noarch/Documentation/feature-removal-schedule.txt.orig 2008-01-29 16:52:29.000000000 -0500
-+++ linux-2.6.24.noarch/Documentation/feature-removal-schedule.txt 2008-01-29 16:52:35.000000000 -0500
+--- linux-2.6.24.noarch/Documentation/feature-removal-schedule.txt.orig 2008-01-24 17:58:37.000000000 -0500
++++ linux-2.6.24.noarch/Documentation/feature-removal-schedule.txt 2008-02-01 17:01:47.000000000 -0500
@@ -332,4 +332,36 @@ Why: This driver has been marked obsolet
2.4 or later kernels, provides richer features and is more robust.
Who: Stephen Hemminger <shemminger at linux-foundation.org>
More information about the scm-commits
mailing list