diff options
Diffstat (limited to 'package')
7 files changed, 260 insertions, 218 deletions
diff --git a/package/acx-mac80211/Makefile b/package/acx-mac80211/Makefile index 68369bc96..88ca0bcd8 100644 --- a/package/acx-mac80211/Makefile +++ b/package/acx-mac80211/Makefile @@ -9,8 +9,8 @@ include $(TOPDIR)/rules.mk  include $(INCLUDE_DIR)/kernel.mk  PKG_NAME:=acx-mac80211 -PKG_REV:=e7a55711 -PKG_VERSION:=20100302 +PKG_REV:=160e4af +PKG_VERSION:=20100422  PKG_RELEASE:=1  PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 diff --git a/package/acx-mac80211/patches/001-if_init_conf_removal.patch b/package/acx-mac80211/patches/001-if_init_conf_removal.patch deleted file mode 100644 index 29a5a6212..000000000 --- a/package/acx-mac80211/patches/001-if_init_conf_removal.patch +++ /dev/null @@ -1,91 +0,0 @@ ---- a/acx_func.h -+++ b/acx_func.h -@@ -704,9 +704,9 @@ int acx_setup_modes(acx_device_t *adev); - 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, ---- a/common.c -+++ b/common.c -@@ -4402,7 +4402,7 @@ static void acx_s_select_opmode(acx_devi - } -  - 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 @@ int acx_e_op_add_interface(struct ieee80 - 	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 @@ int acx_e_op_add_interface(struct ieee80 -  - 	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 @@ int acx_e_op_add_interface(struct ieee80 - } -  - 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 @@ void acx_e_op_remove_interface(struct ie - 	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-tx_queue_stats_removal.patch b/package/acx-mac80211/patches/002-tx_queue_stats_removal.patch deleted file mode 100644 index ccf1ad39d..000000000 --- a/package/acx-mac80211/patches/002-tx_queue_stats_removal.patch +++ /dev/null @@ -1,67 +0,0 @@ ---- a/acx_func.h -+++ b/acx_func.h -@@ -714,7 +714,6 @@ int acx_e_op_set_key(struct ieee80211_hw - 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); ---- a/common.c -+++ b/common.c -@@ -4662,24 +4662,6 @@ extern void acx_e_op_bss_info_changed(st - 	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) - { ---- a/mem.c -+++ b/mem.c -@@ -2321,7 +2321,6 @@ static const struct ieee80211_ops acxmem - 		.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, - 		}; -  -  ---- a/pci.c -+++ b/pci.c -@@ -1482,7 +1482,6 @@ static const struct ieee80211_ops acxpci - 	.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, - }; -  -  ---- a/usb.c -+++ b/usb.c -@@ -757,7 +757,6 @@ static const struct ieee80211_ops acxusb - 	.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/004-vlynq_fixes.patch b/package/acx-mac80211/patches/004-vlynq_fixes.patch deleted file mode 100644 index 3e1a8bbc6..000000000 --- a/package/acx-mac80211/patches/004-vlynq_fixes.patch +++ /dev/null @@ -1,47 +0,0 @@ ---- a/pci.c -+++ b/pci.c -@@ -4309,7 +4309,7 @@ static __devinit int vlynq_probe(struct  - 	addr = (u32)ioremap(vdev->mem_start, 0x1000); - 	if (!addr) { - 		printk(KERN_ERR "acx: %s: failed to remap io memory\n", --		       vdev->dev.bus_id); -+		       dev_name(&vdev->dev)); - 		result = -ENXIO; - 		goto fail; - 	} -@@ -4323,7 +4323,7 @@ static __devinit int vlynq_probe(struct  - 	ieee = ieee80211_alloc_hw(sizeof(struct acx_device), &acxpci_hw_ops); - 	if (!ieee) { - 		printk("acx: could not allocate ieee80211 structure %s\n", --		       vdev->dev.bus_id); -+		       dev_name(&vdev->dev)); - 		goto fail_alloc_netdev; - 	} - 	ieee->flags &=	 ~IEEE80211_HW_RX_INCLUDES_FCS; -@@ -4365,7 +4365,7 @@ static __devinit int vlynq_probe(struct  -  - 	printk("acx: found %s-based wireless network card at %s, irq:%d, " - 	       "phymem:0x%x, mem:0x%p\n", --	       match->name, vdev->dev.bus_id, adev->irq, -+	       match->name, dev_name(&vdev->dev), adev->irq, - 	       vdev->mem_start, adev->iobase); - 	log(L_ANY, "acx: the initial debug setting is 0x%04X\n", acx_debug); -  -@@ -4416,7 +4416,7 @@ static __devinit int vlynq_probe(struct  - 	 * firmware operations happening in parallel or uninitialized data */ -  -  --	acx_proc_register_entries(ieee); -+	acx_proc_register_entries(ieee, 0); -  - 	/* Now we have our device, so make sure the kernel doesn't try - 	 * to send packets even though we're not associated to a network yet */ -@@ -4536,7 +4536,7 @@ static void vlynq_remove(struct vlynq_de - 		CLEAR_BIT(adev->dev_state_mask, ACX_STATE_IFACE_UP); - 	} -  --	acx_proc_unregister_entries(adev->ieee); -+	acx_proc_unregister_entries(adev->ieee, 0); -  - 	/* finally, clean up PCI bus state */ - 	acxpci_s_delete_dma_regions(adev); diff --git a/package/acx-mac80211/patches/004-wireless-compat.patch b/package/acx-mac80211/patches/004-wireless-compat.patch new file mode 100644 index 000000000..33ecc4cf9 --- /dev/null +++ b/package/acx-mac80211/patches/004-wireless-compat.patch @@ -0,0 +1,221 @@ +Index: acx-mac80211-20100422/acx_func.h +=================================================================== +--- acx-mac80211-20100422.orig/acx_func.h	2010-05-02 03:07:09.000000000 +0200 ++++ acx-mac80211-20100422/acx_func.h	2010-05-02 22:03:28.309677381 +0200 +@@ -214,10 +214,6 @@ + 			printk(args); \ + 	} while (0) +  +-#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33) +-#define printk_ratelimited(args...) printk(args) +-#endif +- + // Log with prefix "acx: __func__  + #define logf0(chan, msg) \ + 		log(chan, "acx: %s: " msg, __func__); +@@ -341,17 +337,10 @@ + // BOM Mac80211 Ops (Common) + // ----- +  +-#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 34) +-int acx_e_op_add_interface(struct ieee80211_hw* ieee, +-		struct ieee80211_if_init_conf *conf); +-void acx_e_op_remove_interface(struct ieee80211_hw* ieee, +-		struct ieee80211_if_init_conf *conf); +-#else + int acx_e_op_add_interface(struct ieee80211_hw* ieee, + 		struct ieee80211_vif *vif); + void acx_e_op_remove_interface(struct ieee80211_hw* ieee, + 		struct ieee80211_vif *vif); +-#endif +  + int acx_e_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd, + 		struct ieee80211_vif *vif, struct ieee80211_sta *sta, +@@ -366,10 +355,6 @@ + 		const struct ieee80211_tx_queue_params *params); + int acx_e_op_get_stats(struct ieee80211_hw *hw, struct ieee80211_low_level_stats *stats); +  +-#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 34) +-int acx_e_op_get_tx_stats(struct ieee80211_hw* ieee, struct ieee80211_tx_queue_stats *stats); +-#endif +- + // BOM Helpers (Common) + // ----- + void acx_s_mwait(int ms); +Index: acx-mac80211-20100422/common.c +=================================================================== +--- acx-mac80211-20100422.orig/common.c	2010-05-02 03:07:09.000000000 +0200 ++++ acx-mac80211-20100422/common.c	2010-05-02 22:04:49.597801719 +0200 +@@ -4900,13 +4900,8 @@ +  * ================================================== +  */ +  +-#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 34) +-int acx_e_op_add_interface(struct ieee80211_hw *ieee, +-		      struct ieee80211_if_init_conf *conf) +-#else + int acx_e_op_add_interface(struct ieee80211_hw *ieee, + 		      struct ieee80211_vif *vif) +-#endif + { + 	acx_device_t *adev = ieee2adev(ieee); + 	unsigned long flags; +@@ -4918,23 +4913,14 @@ + 	acx_sem_lock(adev); + 	acx_lock(adev, flags); +  +-#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 34) +-	if (conf->type == NL80211_IFTYPE_MONITOR) { +-#else + 	if (vif->type == NL80211_IFTYPE_MONITOR) { +-#endif + 		adev->interface.monitor++; + 	} else { + 		if (adev->interface.operating) + 			goto out_unlock; + 		adev->interface.operating = 1; +-#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 34) +-		adev->interface.mac_addr = conf->mac_addr; +-		adev->interface.type = conf->type; +-#else + 		adev->interface.mac_addr = vif->addr; + 		adev->interface.type = vif->type; +-#endif + 	} + //	adev->mode = conf->type; +  +@@ -4949,13 +4935,8 @@ +  + 	printk(KERN_INFO "acx: Virtual interface added " + 	       "(type: 0x%08X, MAC: %s)\n", +-#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 34) +-	       conf->type, +-	       acx_print_mac(mac, conf->mac_addr) +-#else + 	       vif->type, + 	       acx_print_mac(mac, vif->addr) +-#endif + 	); +  +     out_unlock: +@@ -4966,13 +4947,8 @@ + 	return err; + } +  +-#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 34) +-void acx_e_op_remove_interface(struct ieee80211_hw *hw, +-			  struct ieee80211_if_init_conf *conf) +-#else + void acx_e_op_remove_interface(struct ieee80211_hw *hw, + 			  struct ieee80211_vif *vif) +-#endif + { + 	acx_device_t *adev = ieee2adev(hw); +  +@@ -4981,37 +4957,23 @@ + 	FN_ENTER; + 	acx_sem_lock(adev); +  +-#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 34) +-	if (conf->type == NL80211_IFTYPE_MONITOR) { +-#else + 	if (vif->type == NL80211_IFTYPE_MONITOR) { +-#endif + 		adev->interface.monitor--; + //      assert(bcm->interface.monitor >= 0); + 	} else { + 		adev->interface.operating = 0; + 	} +  +-#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 34) +-	log(L_DEBUG, "acx: %s: interface.operating=%d, conf->type=%d\n", +-			__func__, +-			adev->interface.operating, conf->type); +-#else + 	log(L_DEBUG, "acx: %s: interface.operating=%d, vif->type=%d\n", + 			__func__, + 			adev->interface.operating, vif->type); +-#endif +  + 	if (adev->initialized) + 		acx_s_select_opmode(adev); +  + 	log(L_ANY, "acx: Virtual interface removed: " + 	       "type=%d, MAC=%s\n", +-#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 34) +-	       conf->type, acx_print_mac(mac, conf->mac_addr) +-#else + 	       vif->type, acx_print_mac(mac, vif->addr) +-#endif + 	       ); +  + 	acx_sem_unlock(adev); +@@ -5351,26 +5313,6 @@ + 	return 0; + } +  +-#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 34) +-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; +-} +-#endif +- + /* +  * BOM Helpers +  * ================================================== +Index: acx-mac80211-20100422/mem.c +=================================================================== +--- acx-mac80211-20100422.orig/mem.c	2010-05-02 03:07:09.000000000 +0200 ++++ acx-mac80211-20100422/mem.c	2010-05-02 22:05:26.007552341 +0200 +@@ -4654,9 +4654,6 @@ + 		.bss_info_changed = acx_e_op_bss_info_changed, + 		.set_key = acx_e_op_set_key, + 		.get_stats = acx_e_op_get_stats, +-#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 34) +-		.get_tx_stats = acx_e_op_get_tx_stats, +-#endif + 		}; +  + /* +Index: acx-mac80211-20100422/pci.c +=================================================================== +--- acx-mac80211-20100422.orig/pci.c	2010-05-02 03:07:09.000000000 +0200 ++++ acx-mac80211-20100422/pci.c	2010-05-02 22:06:03.758564021 +0200 +@@ -3149,9 +3149,6 @@ + 	.bss_info_changed = acx_e_op_bss_info_changed, + 	.set_key = acx_e_op_set_key, + 	.get_stats = acx_e_op_get_stats, +-#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 34) +-	.get_tx_stats = acx_e_op_get_tx_stats, +-#endif + }; +  +  +Index: acx-mac80211-20100422/usb.c +=================================================================== +--- acx-mac80211-20100422.orig/usb.c	2010-05-02 03:07:09.000000000 +0200 ++++ acx-mac80211-20100422/usb.c	2010-05-02 22:06:22.874733862 +0200 +@@ -1444,9 +1444,6 @@ + 	.bss_info_changed = acx_e_op_bss_info_changed, + 	.set_key = acx_e_op_set_key, + 	.get_stats = acx_e_op_get_stats, +-#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 34) +-	.get_tx_stats = acx_e_op_get_tx_stats, +-#endif + }; +  + /* diff --git a/package/acx-mac80211/patches/005-do_not_override_pci.patch b/package/acx-mac80211/patches/005-do_not_override_pci.patch deleted file mode 100644 index e21549bf3..000000000 --- a/package/acx-mac80211/patches/005-do_not_override_pci.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/pci.c -+++ b/pci.c -@@ -17,8 +17,6 @@ -  */ - #define ACX_MAC80211_PCI 1 -  --#define CONFIG_PCI 1 -- - #include <linux/version.h> -  - #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 33) diff --git a/package/acx-mac80211/patches/100-vlynq-fixes.patch b/package/acx-mac80211/patches/100-vlynq-fixes.patch new file mode 100644 index 000000000..62e0582af --- /dev/null +++ b/package/acx-mac80211/patches/100-vlynq-fixes.patch @@ -0,0 +1,37 @@ +Index: acx-mac80211-20100422/pci.c +=================================================================== +--- acx-mac80211-20100422.orig/pci.c	2010-05-02 22:06:03.000000000 +0200 ++++ acx-mac80211-20100422/pci.c	2010-05-02 22:10:40.963886264 +0200 +@@ -170,7 +170,7 @@ + #endif +  + #ifdef CONFIG_VLYNQ +-int vlynq_probe(struct vlynq_device *vdev, struct vlynq_device_id *id); ++static int vlynq_probe(struct vlynq_device *vdev, struct vlynq_device_id *id); + static void vlynq_remove(struct vlynq_device *vdev); + #endif +  +@@ -4433,6 +4433,8 @@ + 		goto fail_alloc_netdev; + 	} + 	ieee->flags &=	 ~IEEE80211_HW_RX_INCLUDES_FCS; ++	ieee->wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION) ++			| BIT(NL80211_IFTYPE_ADHOC); + 	ieee->queues = 1; +  + 	adev = ieee2adev(ieee); +Index: acx-mac80211-20100422/acx_func.h +=================================================================== +--- acx-mac80211-20100422.orig/acx_func.h	2010-05-02 03:07:09.000000000 +0200 ++++ acx-mac80211-20100422/acx_func.h	2010-05-02 22:15:55.476748737 +0200 +@@ -562,10 +562,6 @@ +  + // Driver, Module +  +-#ifdef CONFIG_VLYNQ +-int vlynq_probe(struct vlynq_device *vdev, struct vlynq_device_id *id); +-#endif +- + int __init acxpci_e_init_module(void); + void __exit acxpci_e_cleanup_module(void); +   | 
