From c7a38d6a1b7b1fa4f1e5dd192f6d0bf257ee8a1c Mon Sep 17 00:00:00 2001
From: Florian Fainelli <florian@openwrt.org>
Date: Sat, 6 Mar 2010 12:22:41 +0000
Subject: update acx-mac80211 to a newer snapshot and fix its compilation wrt
 new includes path

SVN-Revision: 20015
---
 package/acx-mac80211/Makefile                      |   7 +-
 package/acx-mac80211/patches/001-build_module.diff |  11 ---
 .../patches/001-if_init_conf_removal.patch         |  95 +++++++++++++++++++
 .../patches/002-rate_definitions.patch             | 105 ---------------------
 .../patches/002-tx_queue_stats_removal.patch       |  77 +++++++++++++++
 package/acx-mac80211/patches/003-if_types.patch    |  91 ------------------
 .../patches/004-acx_config_interface_type.patch    |  91 ------------------
 package/acx-mac80211/patches/005-pci_fixes.patch   |  70 --------------
 8 files changed, 176 insertions(+), 371 deletions(-)
 delete mode 100644 package/acx-mac80211/patches/001-build_module.diff
 create mode 100644 package/acx-mac80211/patches/001-if_init_conf_removal.patch
 delete mode 100644 package/acx-mac80211/patches/002-rate_definitions.patch
 create mode 100644 package/acx-mac80211/patches/002-tx_queue_stats_removal.patch
 delete mode 100644 package/acx-mac80211/patches/003-if_types.patch
 delete mode 100644 package/acx-mac80211/patches/004-acx_config_interface_type.patch
 delete mode 100644 package/acx-mac80211/patches/005-pci_fixes.patch

(limited to 'package')

diff --git a/package/acx-mac80211/Makefile b/package/acx-mac80211/Makefile
index 74889ccb1b..bbdf5f0cba 100644
--- a/package/acx-mac80211/Makefile
+++ b/package/acx-mac80211/Makefile
@@ -9,12 +9,12 @@ include $(TOPDIR)/rules.mk
 include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=acx-mac80211
-PKG_REV:=11edba2
-PKG_VERSION:=20080805
+PKG_REV:=e7a55711
+PKG_VERSION:=20100302
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
-PKG_SOURCE_URL:=git://gitorious.org/acx-mac80211/mainline.git
+PKG_SOURCE_URL:=git://gitorious.org/~oli1417/acx-mac80211/oli1417-clone.git
 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
 PKG_SOURCE_VERSION:=$(PKG_REV)
@@ -68,6 +68,7 @@ define Build/Compile
 		$(PKG_EXTRA_KCONFIG) \
 		EXTRA_CFLAGS="$(PKG_EXTRA_CFLAGS)" \
 		LINUXINCLUDE="-I$(STAGING_DIR)/usr/include/mac80211 -I$(LINUX_DIR)/include \
+			-Iarch/$(LINUX_KARCH)/include \
 			-include linux/autoconf.h" \
 		V="$(V)" \
 		modules
diff --git a/package/acx-mac80211/patches/001-build_module.diff b/package/acx-mac80211/patches/001-build_module.diff
deleted file mode 100644
index ee4a8d4c89..0000000000
--- a/package/acx-mac80211/patches/001-build_module.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/Makefile
-+++ b/Makefile
-@@ -28,7 +28,7 @@ ifneq ($(KERNELRELEASE),)
- 	obj-$(CONFIG_ACX_MAC80211) += acx-mac80211.o
- 	acx-mac80211-obj-$(CONFIG_ACX_MAC80211_PCI) += pci.o
- 	acx-mac80211-obj-$(CONFIG_ACX_MAC80211_USB) += usb.o
--	acx-mac80211-objs := common.o $(acx-mac80211-obj-y)
-+	acx-mac80211-objs := common.o $(acx-mac80211-obj-m)
- else
- # Otherwise we were called directly from the command line: the the kernel build
- # system must be explicitly invoked.
diff --git a/package/acx-mac80211/patches/001-if_init_conf_removal.patch b/package/acx-mac80211/patches/001-if_init_conf_removal.patch
new file mode 100644
index 0000000000..2e9bc18a16
--- /dev/null
+++ b/package/acx-mac80211/patches/001-if_init_conf_removal.patch
@@ -0,0 +1,95 @@
+Index: acx-mac80211-20100302/acx_func.h
+===================================================================
+--- acx-mac80211-20100302.orig/acx_func.h	2010-03-06 12:57:25.000000000 +0100
++++ acx-mac80211-20100302/acx_func.h	2010-03-06 12:58:10.000000000 +0100
+@@ -704,9 +704,9 @@
+ void acx_free_modes(acx_device_t *adev);
+ int acx_i_op_tx(struct ieee80211_hw *ieee,	struct sk_buff *skb);
+ int acx_e_op_add_interface(struct ieee80211_hw* ieee,
+-		struct ieee80211_if_init_conf *conf);
++		struct ieee80211_vif *vif);
+ void acx_e_op_remove_interface(struct ieee80211_hw* ieee,
+-		struct ieee80211_if_init_conf *conf);
++		struct ieee80211_vif *vif);
+ int acx_net_reset(struct ieee80211_hw *ieee);
+ int acx_e_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
+ 		struct ieee80211_vif *vif, struct ieee80211_sta *sta,
+Index: acx-mac80211-20100302/common.c
+===================================================================
+--- acx-mac80211-20100302.orig/common.c	2010-03-06 12:57:31.000000000 +0100
++++ acx-mac80211-20100302/common.c	2010-03-06 12:59:51.000000000 +0100
+@@ -4402,7 +4402,7 @@
+ }
+ 
+ int acx_e_op_add_interface(struct ieee80211_hw *ieee,
+-		      struct ieee80211_if_init_conf *conf)
++		      struct ieee80211_vif *vif)
+ {
+ 	acx_device_t *adev = ieee2adev(ieee);
+ 	unsigned long flags;
+@@ -4414,14 +4414,14 @@
+ 	acx_sem_lock(adev);
+ 	acx_lock(adev, flags);
+ 
+-	if (conf->type == NL80211_IFTYPE_MONITOR) {
++	if (vif->type == NL80211_IFTYPE_MONITOR) {
+ 		adev->interface.monitor++;
+ 	} else {
+ 		if (adev->interface.operating)
+ 			goto out_unlock;
+ 		adev->interface.operating = 1;
+-		adev->interface.mac_addr = conf->mac_addr;
+-		adev->interface.type = conf->type;
++		adev->interface.mac_addr = vif->addr;
++		adev->interface.type = vif->type;
+ 	}
+ //	adev->mode = conf->type;
+ 
+@@ -4436,8 +4436,8 @@
+ 
+ 	printk(KERN_INFO "acx: Virtual interface added "
+ 	       "(type: 0x%08X, MAC: %s)\n",
+-	       conf->type,
+-	       acx_print_mac(mac, conf->mac_addr));
++	       vif->type,
++	       acx_print_mac(mac, vif->addr));
+ 
+     out_unlock:
+ 	acx_unlock(adev, flags);
+@@ -4448,7 +4448,7 @@
+ }
+ 
+ void acx_e_op_remove_interface(struct ieee80211_hw *hw,
+-			  struct ieee80211_if_init_conf *conf)
++			  struct ieee80211_vif *vif)
+ {
+ 	acx_device_t *adev = ieee2adev(hw);
+ 
+@@ -4457,23 +4457,23 @@
+ 	FN_ENTER;
+ 	acx_sem_lock(adev);
+ 
+-	if (conf->type == NL80211_IFTYPE_MONITOR) {
++	if (vif->type == NL80211_IFTYPE_MONITOR) {
+ 		adev->interface.monitor--;
+ //      assert(bcm->interface.monitor >= 0);
+ 	} else {
+ 		adev->interface.operating = 0;
+ 	}
+ 
+-	log(L_DEBUG, "acx: %s: interface.operating=%d, conf->type=%d\n",
++	log(L_DEBUG, "acx: %s: interface.operating=%d, vif->type=%d\n",
+ 			__func__,
+-			adev->interface.operating, conf->type);
++			adev->interface.operating, vif->type);
+ 
+ 	if (adev->initialized)
+ 		acx_s_select_opmode(adev);
+ 
+ 	log(L_ANY, "acx: Virtual interface removed: "
+ 	       "type=%d, MAC=%s\n",
+-	       conf->type, acx_print_mac(mac, conf->mac_addr));
++	       vif->type, acx_print_mac(mac, vif->addr));
+ 
+ 	acx_sem_unlock(adev);
+ 
diff --git a/package/acx-mac80211/patches/002-rate_definitions.patch b/package/acx-mac80211/patches/002-rate_definitions.patch
deleted file mode 100644
index 7c9dc459e0..0000000000
--- a/package/acx-mac80211/patches/002-rate_definitions.patch
+++ /dev/null
@@ -1,105 +0,0 @@
---- a/common.c
-+++ b/common.c
-@@ -1452,60 +1452,66 @@ void acx_free_modes(acx_device_t * adev)
- //        adev->modes = NULL;
- }
- 
--/*
--#define RATETAB_ENT(_rate, _rateid, _flags) \
--	{							\
--		.rate	= (_rate),				\
--		.val	= (_rateid),				\
--		.val2   = (_rateid),				\
--		.flags  = (_flags),				\
--	}
--*/
--
- static struct ieee80211_rate acx_rates[] = {
- 	{ .bitrate = 10, .hw_value = 0, .flags = IEEE80211_RATE_SHORT_PREAMBLE },
- 	{ .bitrate = 20, .hw_value = 1, .flags = IEEE80211_RATE_SHORT_PREAMBLE },
- 	{ .bitrate = 55, .hw_value = 2, .flags = IEEE80211_RATE_SHORT_PREAMBLE },
- 	{ .bitrate = 110, .hw_value = 3, .flags = IEEE80211_RATE_SHORT_PREAMBLE },
--	{ .bitrate = 60, .hw_value = 4, },
--	{ .bitrate = 90, .hw_value = 5, },
--	{ .bitrate = 120, .hw_value = 6, },
--	{ .bitrate = 180, .hw_value = 7, },
--	{ .bitrate = 240, .hw_value = 8, },
--	{ .bitrate = 360, .hw_value = 9, },
--	{ .bitrate = 480, .hw_value = 10, },
--	{ .bitrate = 540, .hw_value = 11, },
-+	{ .bitrate = 60, .hw_value = 4, .flags = 0 },
-+	{ .bitrate = 90, .hw_value = 5, .flags = 0 },
-+	{ .bitrate = 120, .hw_value = 6, .flags = 0 },
-+	{ .bitrate = 180, .hw_value = 7, .flags = 0 },
-+	{ .bitrate = 240, .hw_value = 8, .flags = 0 },
-+	{ .bitrate = 360, .hw_value = 9, .flags = 0 },
-+	{ .bitrate = 480, .hw_value = 10, .flags = 0 },
-+	{ .bitrate = 540, .hw_value = 11, .flags = 0 },
- };
- 
-+#define CHAN4G(_channel, _freq, _flags) {			\
-+	.band			= IEEE80211_BAND_2GHZ,		\
-+	.center_freq		= (_freq),			\
-+	.hw_value		= (_channel),			\
-+	.flags			= (_flags),			\
-+	.max_antenna_gain	= 0,				\
-+	.max_power		= 30,				\
-+}
- static struct ieee80211_channel channels[] = {
--	{ .center_freq = 2412, .hw_value = 1, },
--	{ .center_freq = 2417, .hw_value = 2, },
--	{ .center_freq = 2422, .hw_value = 3, },
--	{ .center_freq = 2427, .hw_value = 4, },
--	{ .center_freq = 2432, .hw_value = 5, },
--	{ .center_freq = 2437, .hw_value = 6, },
--	{ .center_freq = 2442, .hw_value = 7, },
--	{ .center_freq = 2447, .hw_value = 8, },
--	{ .center_freq = 2452, .hw_value = 9, },
--	{ .center_freq = 2457, .hw_value = 10, },
--	{ .center_freq = 2462, .hw_value = 11, },
--	{ .center_freq = 2467, .hw_value = 12, },
--	{ .center_freq = 2472, .hw_value = 13, },
--	{ .center_freq = 2484, .hw_value = 14, },
-+	CHAN4G(1, 2412, 0),
-+	CHAN4G(2, 2417, 0),
-+	CHAN4G(3, 2422, 0),
-+	CHAN4G(4, 2427, 0),
-+	CHAN4G(5, 2432, 0),
-+	CHAN4G(6, 2437, 0),
-+	CHAN4G(7, 2442, 0),
-+	CHAN4G(8, 2447, 0),
-+	CHAN4G(9, 2452, 0),
-+	CHAN4G(10, 2457, 0),
-+	CHAN4G(11, 2462, 0),
-+	CHAN4G(12, 2467, 0),
-+	CHAN4G(13, 2472, 0),
-+	CHAN4G(14, 2484, 0),
- };
-+#undef CHAN4G
-+
-+#define acx_b_ratetable		(acx_rates + 0)
-+#define acx_b_ratetable_size	4
-+#define acx_g_ratetable		(acx_rates + 0)
-+#define acx_g_ratetable_size	12
- 
- static struct ieee80211_supported_band g_band_2GHz = {
-+	.band = IEEE80211_BAND_2GHZ,
- 	.channels = channels,
- 	.n_channels = ARRAY_SIZE(channels),
--	.bitrates = acx_rates,
--	.n_bitrates = 12,
-+	.bitrates = acx_b_ratetable,
-+	.n_bitrates = acx_g_ratetable_size,
- };
- 
- static struct ieee80211_supported_band b_band_2GHz = {
-+	.band = IEEE80211_BAND_2GHZ,
- 	.channels = channels,
- 	.n_channels = ARRAY_SIZE(channels),
--	.bitrates = acx_rates,
--	.n_bitrates = 4,
-+	.bitrates = acx_g_ratetable,
-+	.n_bitrates = acx_b_ratetable_size,
- };
- 
- int acx_setup_modes(acx_device_t * adev)
diff --git a/package/acx-mac80211/patches/002-tx_queue_stats_removal.patch b/package/acx-mac80211/patches/002-tx_queue_stats_removal.patch
new file mode 100644
index 0000000000..907b3596fe
--- /dev/null
+++ b/package/acx-mac80211/patches/002-tx_queue_stats_removal.patch
@@ -0,0 +1,77 @@
+Index: acx-mac80211-20100302/acx_func.h
+===================================================================
+--- acx-mac80211-20100302.orig/acx_func.h	2010-03-06 13:01:36.000000000 +0100
++++ acx-mac80211-20100302/acx_func.h	2010-03-06 13:01:56.000000000 +0100
+@@ -714,7 +714,6 @@
+ int acx_e_op_config(struct ieee80211_hw *hw, u32 changed);
+ void acx_e_op_bss_info_changed(struct ieee80211_hw *hw,
+ 		struct ieee80211_vif *vif, struct ieee80211_bss_conf *info, u32 changed);
+-int acx_e_op_get_tx_stats(struct ieee80211_hw* ieee, struct ieee80211_tx_queue_stats *stats);
+ int acx_e_conf_tx(struct ieee80211_hw* ieee, u16 queue,
+ 		const struct ieee80211_tx_queue_params *params);
+ //int acx_passive_scan(struct net_device *net_dev, int state, struct ieee80211_scan_conf *conf);
+Index: acx-mac80211-20100302/common.c
+===================================================================
+--- acx-mac80211-20100302.orig/common.c	2010-03-06 13:01:38.000000000 +0100
++++ acx-mac80211-20100302/common.c	2010-03-06 13:02:37.000000000 +0100
+@@ -4662,24 +4662,6 @@
+ 	return;
+ }
+ 
+-int acx_e_op_get_tx_stats(struct ieee80211_hw *hw,
+-			 struct ieee80211_tx_queue_stats *stats)
+-{
+-	acx_device_t *adev = ieee2adev(hw);
+-	int err = -ENODEV;
+-
+-	FN_ENTER;
+-	acx_sem_lock(adev);
+-
+-	stats->len = 0;
+-	stats->limit = TX_CNT;
+-	stats->count = 0;
+-
+-	acx_sem_unlock(adev);
+-	FN_EXIT0;
+-	return err;
+-}
+-
+ int acx_e_conf_tx(struct ieee80211_hw *hw,
+ 		u16 queue, const struct ieee80211_tx_queue_params *params)
+ {
+Index: acx-mac80211-20100302/mem.c
+===================================================================
+--- acx-mac80211-20100302.orig/mem.c	2010-03-06 13:01:46.000000000 +0100
++++ acx-mac80211-20100302/mem.c	2010-03-06 13:02:28.000000000 +0100
+@@ -2321,7 +2321,6 @@
+ 		.bss_info_changed = acx_e_op_bss_info_changed,
+ 		.set_key = acx_e_op_set_key,
+ 		.get_stats = acx_e_op_get_stats,
+-		.get_tx_stats = acx_e_op_get_tx_stats,
+ 		};
+ 
+ 
+Index: acx-mac80211-20100302/pci.c
+===================================================================
+--- acx-mac80211-20100302.orig/pci.c	2010-03-06 13:01:40.000000000 +0100
++++ acx-mac80211-20100302/pci.c	2010-03-06 13:02:18.000000000 +0100
+@@ -1482,7 +1482,6 @@
+ 	.bss_info_changed = acx_e_op_bss_info_changed,
+ 	.set_key = acx_e_op_set_key,
+ 	.get_stats = acx_e_op_get_stats,
+-	.get_tx_stats = acx_e_op_get_tx_stats,
+ };
+ 
+ 
+Index: acx-mac80211-20100302/usb.c
+===================================================================
+--- acx-mac80211-20100302.orig/usb.c	2010-03-06 13:01:44.000000000 +0100
++++ acx-mac80211-20100302/usb.c	2010-03-06 13:02:22.000000000 +0100
+@@ -757,7 +757,6 @@
+ 	.bss_info_changed = acx_e_op_bss_info_changed,
+ 	.set_key = acx_e_op_set_key,
+ 	.get_stats = acx_e_op_get_stats,
+-	.get_tx_stats = acx_e_op_get_tx_stats,
+ };
+ 
+ /***********************************************************************
diff --git a/package/acx-mac80211/patches/003-if_types.patch b/package/acx-mac80211/patches/003-if_types.patch
deleted file mode 100644
index 27f6ac6944..0000000000
--- a/package/acx-mac80211/patches/003-if_types.patch
+++ /dev/null
@@ -1,91 +0,0 @@
---- a/acx_mac80211.h
-+++ b/acx_mac80211.h
-@@ -36,7 +36,7 @@ struct acx_interface {                
-         /* Current BSSID (if any). */       
-         u8 *bssid;
- 
--        /* Interface type. (IEEE80211_IF_TYPE_XXX) */
-+        /* Interface type. (NL80211_IFTYPE_XXX) */
-         int type; 
-         /* Counter of active monitor interfaces. */
-         int monitor;
---- a/common.c
-+++ b/common.c
-@@ -4111,28 +4111,28 @@ static void acx_s_select_opmode(acx_devi
- 
- 	if (adev->interface.operating) {
- 		switch (adev->interface.type) {
--			case IEEE80211_IF_TYPE_AP:
-+			case NL80211_IFTYPE_AP:
- 				if (adev->mode != ACX_MODE_3_AP)
- 				{
- 					adev->mode = ACX_MODE_3_AP;
- 					changed = 1;
- 				}
- 				break;
--			case IEEE80211_IF_TYPE_IBSS:
-+			case NL80211_IFTYPE_ADHOC:
- 				if (adev->mode != ACX_MODE_0_ADHOC)
- 				{
- 					adev->mode = ACX_MODE_0_ADHOC;
- 					changed = 1;
- 				}
- 				break;
--			case IEEE80211_IF_TYPE_STA:
-+			case NL80211_IFTYPE_STATION:
- 				if (adev->mode != ACX_MODE_2_STA)
- 				{
- 					adev->mode = ACX_MODE_2_STA;
- 					changed = 1;
- 				}
- 				break;
--			case IEEE80211_IF_TYPE_WDS:
-+			case NL80211_IFTYPE_WDS:
- 			default:
- 				if (adev->mode != ACX_MODE_OFF)
- 				{
-@@ -4142,7 +4142,7 @@ static void acx_s_select_opmode(acx_devi
- 			break;
- 		}
- 	} else {
--		if (adev->interface.type == IEEE80211_IF_TYPE_MNTR)
-+		if (adev->interface.type == NL80211_IFTYPE_MONITOR)
- 		{
- 			if (adev->mode != ACX_MODE_MONITOR)
- 			{
-@@ -4186,7 +4186,7 @@ int acx_add_interface(struct ieee80211_h
- 	FN_ENTER;
- 	acx_lock(adev, flags);
- 
--	if (conf->type == IEEE80211_IF_TYPE_MNTR) {
-+	if (conf->type == NL80211_IFTYPE_MONITOR) {
- 		adev->interface.monitor++;
- 	} else {
- 		if (adev->interface.operating)
-@@ -4232,7 +4232,7 @@ void acx_remove_interface(struct ieee802
- 	FN_ENTER;
- 
- 	acx_sem_lock(adev);
--	if (conf->type == IEEE80211_IF_TYPE_MNTR) {
-+	if (conf->type == NL80211_IFTYPE_MONITOR) {
- 		adev->interface.monitor--;
- //                assert(bcm->interface.monitor >= 0);
- 	} else {
-@@ -4386,7 +4386,7 @@ extern int acx_config_interface(struct i
- 
- 	acx_lock(adev, flags);
- 
--	if ((vif->type != IEEE80211_IF_TYPE_MNTR)
-+	if ((vif->type != NL80211_IFTYPE_MONITOR)
- 	    && (adev->vif == vif)) {
- 		if (conf->bssid)
- 		{
-@@ -4394,7 +4394,7 @@ extern int acx_config_interface(struct i
-  	             	MAC_COPY(adev->bssid,conf->bssid);
- 		}
- 	}
--	if ((vif->type == IEEE80211_IF_TYPE_AP)
-+	if ((vif->type == NL80211_IFTYPE_AP)
- 	    && (adev->vif == vif)) {
- 		if ((conf->ssid_len > 0) && conf->ssid)
- 		{
diff --git a/package/acx-mac80211/patches/004-acx_config_interface_type.patch b/package/acx-mac80211/patches/004-acx_config_interface_type.patch
deleted file mode 100644
index 800dc6176f..0000000000
--- a/package/acx-mac80211/patches/004-acx_config_interface_type.patch
+++ /dev/null
@@ -1,91 +0,0 @@
---- a/acx_func.h
-+++ b/acx_func.h
-@@ -619,9 +619,10 @@ int acx_net_set_key(struct ieee80211_hw 
- 		enum set_key_cmd cmd,
- 		const u8 *local_addr, const u8 *addr,
- 		struct ieee80211_key_conf *key);
--extern int acx_config_interface(struct ieee80211_hw* ieee,
-+void acx_config_interface(struct ieee80211_hw* ieee,
- 				struct ieee80211_vif *vif,
--				struct ieee80211_if_conf *conf);
-+				struct ieee80211_bss_conf *info,
-+				u32 changes);
- int acx_net_config(struct ieee80211_hw* ieee, struct ieee80211_conf *conf);
- int acx_net_get_tx_stats(struct ieee80211_hw* ieee, struct ieee80211_tx_queue_stats *stats);
- int acx_net_conf_tx(struct ieee80211_hw* ieee, u16 queue,
---- a/common.c
-+++ b/common.c
-@@ -4370,9 +4370,10 @@ int acx_net_config(struct ieee80211_hw *
- **
- */
- 
--extern int acx_config_interface(struct ieee80211_hw* ieee,
-+void acx_config_interface(struct ieee80211_hw* ieee,
- 				struct ieee80211_vif *vif,
--				struct ieee80211_if_conf *conf)
-+				struct ieee80211_bss_conf *info,
-+				u32 changes)
- {
- 	acx_device_t *adev = ieee2adev(ieee);
- 	unsigned long flags;
-@@ -4388,22 +4389,22 @@ extern int acx_config_interface(struct i
- 
- 	if ((vif->type != NL80211_IFTYPE_MONITOR)
- 	    && (adev->vif == vif)) {
--		if (conf->bssid)
-+		if (info->bssid)
- 		{
--			adev->interface.bssid = conf->bssid;
-- 	             	MAC_COPY(adev->bssid,conf->bssid);
-+			adev->interface.bssid = info->bssid;
-+ 	             	MAC_COPY(adev->bssid, info->bssid);
- 		}
- 	}
- 	if ((vif->type == NL80211_IFTYPE_AP)
- 	    && (adev->vif == vif)) {
--		if ((conf->ssid_len > 0) && conf->ssid)
-+		if (info->bssid)
- 		{
--			adev->essid_len = conf->ssid_len;
--			memcpy(adev->essid, conf->ssid, conf->ssid_len);
-+			adev->essid_len = ETH_ALEN;
-+			memcpy(adev->essid, info->bssid, ETH_ALEN);
- 			SET_BIT(adev->set_mask, SET_TEMPLATES);
- 		}
- 	}
--	if (conf->changed & IEEE80211_IFCC_BEACON)
-+	if (changes & BSS_CHANGED_BSSID)
- 	{
- 		adev->beacon_interval = DEFAULT_BEACON_INTERVAL;
- 		adev->beacon_cache = ieee80211_beacon_get(ieee, vif);
-@@ -4418,7 +4419,7 @@ extern int acx_config_interface(struct i
- 	err = 0;
- err_out:
- 	FN_EXIT1(err);
--	return err;
-+	return;
- }
- 
- /**
---- a/pci.c
-+++ b/pci.c
-@@ -1469,7 +1469,7 @@ static const struct ieee80211_ops acxpci
- 	.configure_filter = acx_i_set_multicast_list,
- 	.stop = acxpci_e_close,
- 	.config = acx_net_config,
--	.config_interface = acx_config_interface,
-+	.bss_info_changed = acx_config_interface,
- 	.set_key = acx_net_set_key,
- 	.get_stats = acx_e_get_stats,
- 	.get_tx_stats = acx_net_get_tx_stats,
---- a/usb.c
-+++ b/usb.c
-@@ -741,7 +741,7 @@ static const struct ieee80211_ops acxusb
- 	.configure_filter = acx_i_set_multicast_list,
- 	.stop = acxusb_e_close,
- 	.config = acx_net_config,
--	.config_interface = acx_config_interface,
-+	.bss_info_changed = acx_config_interface,
- 	.set_key = acx_net_set_key,         
- 	.get_stats = acx_e_get_stats,
- 	.get_tx_stats = acx_net_get_tx_stats,
diff --git a/package/acx-mac80211/patches/005-pci_fixes.patch b/package/acx-mac80211/patches/005-pci_fixes.patch
deleted file mode 100644
index de407d81d0..0000000000
--- a/package/acx-mac80211/patches/005-pci_fixes.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-Index: acx-mac80211-20080805/acx_func.h
-===================================================================
---- acx-mac80211-20080805.orig/acx_func.h	2009-05-26 20:58:10.000000000 +0200
-+++ acx-mac80211-20080805/acx_func.h	2009-05-26 20:58:11.000000000 +0200
-@@ -623,7 +623,7 @@
- 				struct ieee80211_vif *vif,
- 				struct ieee80211_bss_conf *info,
- 				u32 changes);
--int acx_net_config(struct ieee80211_hw* ieee, struct ieee80211_conf *conf);
-+int acx_net_config(struct ieee80211_hw* ieee, u32 changed);
- int acx_net_get_tx_stats(struct ieee80211_hw* ieee, struct ieee80211_tx_queue_stats *stats);
- int acx_net_conf_tx(struct ieee80211_hw* ieee, u16 queue,
- 		const struct ieee80211_tx_queue_params *params);
-Index: acx-mac80211-20080805/common.c
-===================================================================
---- acx-mac80211-20080805.orig/common.c	2009-05-26 20:58:10.000000000 +0200
-+++ acx-mac80211-20080805/common.c	2009-05-26 20:58:11.000000000 +0200
-@@ -4300,9 +4300,10 @@
- ** Derived from mac80211 code, p54, bcm43xx_mac80211
- **
- */
--int acx_net_config(struct ieee80211_hw *hw, struct ieee80211_conf *conf)
-+int acx_net_config(struct ieee80211_hw *hw, u32 changed)
- {
- 	acx_device_t *adev = ieee2adev(hw);
-+	struct ieee80211_conf *conf = &hw->conf;
- 	unsigned long flags;
- 
- 	FN_ENTER;
-Index: acx-mac80211-20080805/pci.c
-===================================================================
---- acx-mac80211-20080805.orig/pci.c	2009-05-26 20:58:10.000000000 +0200
-+++ acx-mac80211-20080805/pci.c	2009-05-30 20:44:29.000000000 +0200
-@@ -3105,7 +3105,7 @@
- 
- 	/* let chip do RTS/CTS handshaking before sending
- 	 * in case packet size exceeds threshold */
--	if (info->flags & IEEE80211_TX_CTL_USE_RTS_CTS)
-+	if (info->flags & IEEE80211_TX_RC_USE_RTS_CTS)
- 		SET_BIT(Ctl2_8, DESC_CTL2_RTS);
- 	else
- 		CLEAR_BIT(Ctl2_8, DESC_CTL2_RTS);
-@@ -3120,7 +3120,7 @@
- /*	put_txcr(adev, txdesc, clt, rate_cur);  deprecated by mac80211 */
- 
- 	txdesc->total_length = cpu_to_le16(len);
--	wlhdr_len = ieee80211_get_hdrlen(le16_to_cpu(wireless_header->frame_control));
-+	wlhdr_len = ieee80211_hdrlen(le16_to_cpu(wireless_header->frame_control));
- 	hostdesc2->length = cpu_to_le16(len - wlhdr_len);
- /*
- 	if (!ieeectl->do_not_encrypt && ieeectl->key_idx>= 0)
-@@ -3444,8 +3444,8 @@
- 		/* And finally report upstream */
- 		if (hostdesc)
- 		{
--			info->status.excessive_retries = rts_failures;
--			info->status.retry_count = ack_failures;
-+			//info->status.excessive_retries = rts_failures;
-+			//info->status.retry_count = ack_failures;
- 			ieee80211_tx_status(adev->ieee, hostdesc->skb);
- 		}
- 		/* update pointer for descr to be cleaned next */
-@@ -4303,6 +4303,7 @@
- 	}
- 
- 	acx_init_task_scheduler(adev);
-+	adev->ieee->wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION);
- 	result = ieee80211_register_hw(adev->ieee);
- 	if (OK != result) {
- 		printk("acx: ieee80211_register_hw() FAILED: %d\n", result);
-- 
cgit v1.2.3