r86 - in tags: . rt2400-1.2.2+cvs20070911-1/debian rt2400-1.2.2+cvs20070911-1/debian/patches rt2500-1.1.0-b4+cvs20070924-2/debian rt2570-1.1.0+cvs20070927-1/debian rt2570-1.1.0+cvs20070927-1/debian/patches rt2x00-2.0.12+git20071103/debian rt2x00-2.0.12+git20071103/debian/patches
benh at alioth.debian.org
benh at alioth.debian.org
Mon Nov 12 00:30:16 UTC 2007
Author: benh
Date: 2007-11-12 00:30:15 +0000 (Mon, 12 Nov 2007)
New Revision: 86
Added:
tags/rt2400-1.2.2+cvs20070911-1/
tags/rt2400-1.2.2+cvs20070911-1/debian/changelog
tags/rt2400-1.2.2+cvs20070911-1/debian/control
tags/rt2400-1.2.2+cvs20070911-1/debian/control.modules.in
tags/rt2400-1.2.2+cvs20070911-1/debian/patches/000_if_name.diff
tags/rt2400-1.2.2+cvs20070911-1/debian/patches/004_fix_mlme_queue_locking.diff
tags/rt2400-1.2.2+cvs20070911-1/debian/patches/series
tags/rt2400-1.2.2+cvs20070911-1/debian/rules
tags/rt2500-1.1.0-b4+cvs20070924-2/
tags/rt2500-1.1.0-b4+cvs20070924-2/debian/changelog
tags/rt2500-1.1.0-b4+cvs20070924-2/debian/control
tags/rt2570-1.1.0+cvs20070927-1/
tags/rt2570-1.1.0+cvs20070927-1/debian/changelog
tags/rt2570-1.1.0+cvs20070927-1/debian/control
tags/rt2570-1.1.0+cvs20070927-1/debian/patches/004_fix_mlme_queue_locking.diff
tags/rt2570-1.1.0+cvs20070927-1/debian/patches/005_fix_delays.diff
tags/rt2570-1.1.0+cvs20070927-1/debian/patches/006_fix_probe_148f_2573.diff
tags/rt2570-1.1.0+cvs20070927-1/debian/patches/series
tags/rt2x00-2.0.12+git20071103/
tags/rt2x00-2.0.12+git20071103/debian/changelog
tags/rt2x00-2.0.12+git20071103/debian/patches/002_out_of_tree.diff
tags/rt2x00-2.0.12+git20071103/debian/patches/003_workaround_mac80211_changes.diff
tags/rt2x00-2.0.12+git20071103/debian/patches/004_fix_filter_flags.diff
tags/rt2x00-2.0.12+git20071103/debian/patches/series
Removed:
tags/rt2400-1.2.2+cvs20070911-1/debian/RaConfig2400.1
tags/rt2400-1.2.2+cvs20070911-1/debian/RaConfig2400.xpm
tags/rt2400-1.2.2+cvs20070911-1/debian/changelog
tags/rt2400-1.2.2+cvs20070911-1/debian/control
tags/rt2400-1.2.2+cvs20070911-1/debian/control.modules.in
tags/rt2400-1.2.2+cvs20070911-1/debian/patches/000_if_name.diff
tags/rt2400-1.2.2+cvs20070911-1/debian/patches/002_linux-headers.diff
tags/rt2400-1.2.2+cvs20070911-1/debian/patches/2.6.22.diff
tags/rt2400-1.2.2+cvs20070911-1/debian/patches/series
tags/rt2400-1.2.2+cvs20070911-1/debian/rt2400.dirs
tags/rt2400-1.2.2+cvs20070911-1/debian/rt2400.docs
tags/rt2400-1.2.2+cvs20070911-1/debian/rt2400.manpages
tags/rt2400-1.2.2+cvs20070911-1/debian/rt2400.menu
tags/rt2400-1.2.2+cvs20070911-1/debian/rules
tags/rt2500-1.1.0-b4+cvs20070924-2/debian/changelog
tags/rt2500-1.1.0-b4+cvs20070924-2/debian/control
tags/rt2570-1.1.0+cvs20070927-1/debian/changelog
tags/rt2570-1.1.0+cvs20070927-1/debian/control
tags/rt2570-1.1.0+cvs20070927-1/debian/patches/series
tags/rt2x00-2.0.12+git20071103/debian/changelog
tags/rt2x00-2.0.12+git20071103/debian/patches/002_out_of_tree.diff
tags/rt2x00-2.0.12+git20071103/debian/patches/003_workaround_mac80211_changes.diff
tags/rt2x00-2.0.12+git20071103/debian/patches/004_fix_filter_flags.diff
tags/rt2x00-2.0.12+git20071103/debian/patches/005_fix_probe_148f_2573.diff
tags/rt2x00-2.0.12+git20071103/debian/patches/series
Log:
Tagged versions about to be uploaded.
Copied: tags/rt2400-1.2.2+cvs20070911-1 (from rev 81, unstable/rt2400)
Deleted: tags/rt2400-1.2.2+cvs20070911-1/debian/RaConfig2400.1
===================================================================
--- unstable/rt2400/debian/RaConfig2400.1 2007-11-11 23:01:04 UTC (rev 81)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/RaConfig2400.1 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,35 +0,0 @@
-.\" Hey, EMACS: -*- nroff -*-
-.\" First parameter, NAME, should be all caps
-.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
-.\" other parameters are allowed: see man(7), man(1)
-.TH RACONFIG2400 1 "May 17, 2005"
-.\" Please adjust this date whenever revising the manpage.
-.\"
-.\" Some roff macros, for reference:
-.\" .nh disable hyphenation
-.\" .hy enable hyphenation
-.\" .ad l left justify
-.\" .ad b justify to both left and right margins
-.\" .nf disable filling
-.\" .fi enable filling
-.\" .br insert line break
-.\" .sp <n> insert n+1 empty lines
-.\" for manpage-specific macros, see man(7)
-.SH NAME
-RaConfig2400 \- A configuration tool for wireless RT2400 network cards
-.SH SYNOPSIS
-.B RaConfig2400
-.SH DESCRIPTION
-.B RaConfig2400
-is a simple X11 utility to configure your RT2400 wireless
-network card. It must be used with the corresponding RT2400 driver.
-.SH OPTIONS
-This software does not have any options.
-.SH SEE ALSO
-iwconfig(8).
-.SH AUTHOR
-.B RaConfig2400
-was written by Ralink Tech Inc.
-.br
-This manual page was written by Aurelien Jarno <aurel32 at debian.org>,
-for the Debian GNU/Linux system (but may be used by others).
Deleted: tags/rt2400-1.2.2+cvs20070911-1/debian/RaConfig2400.xpm
===================================================================
--- unstable/rt2400/debian/RaConfig2400.xpm 2007-11-11 23:01:04 UTC (rev 81)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/RaConfig2400.xpm 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,43 +0,0 @@
-/* XPM */
-static char *pixmap[] = {
-/* width height ncols cpp */
-"32 32 5 2",
- /* Colors */
- "00 c #000000",
- "01 c #000080",
- "02 c #FF0000",
- "03 c #00FFFF",
- ".. s None c None",
- "................................................................",
- "............................030303030303030303..................",
- "........................03030303030303030303030303..............",
- "........................0303030303030303030303030303............",
- "..............................................03030303..........",
- "................................................030303..........",
- "................................................030303..........",
- "................................0303030303030303030303..........",
- "............................03030303030303030303030303..........",
- "........................030303030303030303030303030303..........",
- "..01010101010101010101010303030301..............030303..........",
- "......010101010101....0303030301010101..........030303..........",
- "........0101010101....030303..0101010101......03030303..........",
- "........0101010101....03030303..0101010101030303030303..........",
- "........0101010101......03030303010101010103030303030303........",
- "........0101010101........03030301010101010303..03030303030303..",
- "........0101010101............030101010101......................",
- "........0101010101..............01010101........................",
- "........0101010101............0101010101........................",
- "........0101010101..........01010101..............02............",
- "........010101010101010101010101..................0202..........",
- "........0101010101..010101010101..................0202..........",
- "........0101010101....010101010101................0202..........",
- "........0101010101......010101010101..............0202..........",
- "........0101010101........010101010101....0202020202020202020202",
- "........0101010101..........0101010101010202020202020202020202..",
- "........0101010101............010101010101........0202..........",
- "........0101010101..............010101010101......0202..........",
- "........0101010101................010101010101....0202..........",
- "......01010101010101................010101010101..0202..........",
- "..0101010101010101010101............010101010101010102..........",
- "................................................................",
-};
Deleted: tags/rt2400-1.2.2+cvs20070911-1/debian/changelog
===================================================================
--- unstable/rt2400/debian/changelog 2007-11-11 23:01:04 UTC (rev 81)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/changelog 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,198 +0,0 @@
-rt2400 (1.2.2+cvs20070219-3) unstable; urgency=low
-
- * Workaround linux-libc-dev bug by including linux/if.h before
- linux/wireless.h (closes: bug#428996).
- * patches/2.6.22.diff: fix the build of the module with 2.6.22+ kernels
- (closes: bug#432532).
-
- -- Aurelien Jarno <aurel32 at debian.org> Sun, 15 Jul 2007 19:12:43 +0200
-
-rt2400 (1.2.2+cvs20070219-2) unstable; urgency=low
-
- * Switch maintainer to "Debian Ralink packages maintainers".
- * Move Ben Hutchings to uploaders, and add Romain Beauxis to uploaders.
- * Use quilt for patch management.
-
- -- Aurelien Jarno <aurel32 at debian.org> Mon, 5 Mar 2007 23:34:53 +0100
-
-rt2400 (1.2.2+cvs20070219-1) unstable; urgency=low
-
- * Switch Maintainer and Uploader.
- * New CVS snaphost.
-
- -- Aurelien Jarno <aurel32 at debian.org> Tue, 20 Feb 2007 00:51:27 +0100
-
-rt2400 (1.2.2+cvs20061231-2) unstable; urgency=low
-
- * Use bzip2 instead of gzip to compress the sources.
-
- -- Aurelien Jarno <aurel32 at debian.org> Wed, 3 Jan 2007 20:53:59 +0100
-
-rt2400 (1.2.2+cvs20061231-1) unstable; urgency=low
-
- * New CVS version.
- - Fix SSID handling with kernels >= 2.6.19 (closes: bug#405009).
-
- -- Aurelien Jarno <aurel32 at debian.org> Sun, 31 Dec 2006 18:29:13 +0100
-
-rt2400 (1.2.2+cvs20061210-1) unstable; urgency=low
-
- * New CVS version.
- - Fix build with kernels >= 2.6.19 (closes: bug#401209).
-
- -- Aurelien Jarno <aurel32 at debian.org> Sun, 10 Dec 2006 15:05:08 +0100
-
-rt2400 (1.2.2+cvs20060620-4) unstable; urgency=low
-
- * debian/rules: fix a bashims (closes: bug#385205).
-
- -- Aurelien Jarno <aurel32 at debian.org> Wed, 30 Aug 2006 14:49:18 +0200
-
-rt2400 (1.2.2+cvs20060620-3) unstable; urgency=low
-
- * Fixed a typo in the description.
-
- -- Aurelien Jarno <aurel32 at debian.org> Tue, 1 Aug 2006 16:23:05 +0200
-
-rt2400 (1.2.2+cvs20060620-2) unstable; urgency=low
-
- * Fix build with kernels >= 2.6.17 (closes: bug#379085).
-
- -- Aurelien Jarno <aurel32 at debian.org> Fri, 21 Jul 2006 12:10:52 +0200
-
-rt2400 (1.2.2+cvs20060620-1) unstable; urgency=low
-
- * New CVS version.
- * Bumped Standards-Version to 3.7.2 (no changes).
- * rt2400: stop recommending rt2400-module (closes: bug#376904).
-
- -- Aurelien Jarno <aurel32 at debian.org> Tue, 11 Jul 2006 10:39:56 +0200
-
-rt2400 (1.2.2+cvs20060417-4) unstable; urgency=low
-
- * Rename rt2400-_KVERS_ into rt2400-modules-_KVERS_.
-
- -- Aurelien Jarno <aurel32 at debian.org> Sat, 22 Apr 2006 20:17:52 +0200
-
-rt2400 (1.2.2+cvs20060417-3) unstable; urgency=low
-
- * Added Ben Hutchings <ben at decadentplace.org.uk> to the Uploaders: field.
-
- -- Aurelien Jarno <aurel32 at debian.org> Thu, 20 Apr 2006 16:22:32 +0200
-
-rt2400 (1.2.2+cvs20060417-2) unstable; urgency=low
-
- * Fix a typo in README.Debian.
-
- -- Aurelien Jarno <aurel32 at debian.org> Thu, 20 Apr 2006 03:31:20 +0200
-
-rt2400 (1.2.2+cvs20060417-1) unstable; urgency=low
-
- * New CVS version.
- * Put a link to /usr/share/doc/rt2400-source/README.Debian into the
- root of rt2400.tar.gz, as users are unable to look in /usr/share/doc/
- by themselves.
- * Add a menu item for RaConfig2400.
-
- -- Aurelien Jarno <aurel32 at debian.org> Mon, 17 Apr 2006 16:20:47 +0200
-
-rt2400 (1.2.2+cvs20051217-2) unstable; urgency=low
-
- * I have received reports that the rt2400 driver is also working with an
- SMP kernel, so disable the error message when compiling on such a kernel.
-
- -- Aurelien Jarno <aurel32 at debian.org> Mon, 19 Dec 2005 21:36:39 +0100
-
-rt2400 (1.2.2+cvs20051217-1) unstable; urgency=low
-
- * New CVS version.
- * Only suggests gcc-3.3 and fails if it is not installed when building
- the module against a 2.4 kernel.
-
- -- Aurelien Jarno <aurel32 at debian.org> Sun, 18 Dec 2005 00:12:48 +0100
-
-rt2400 (1.2.2+cvs20050730-6) unstable; urgency=low
-
- * Really upload to unstable.
-
- -- Aurelien Jarno <aurel32 at debian.org> Wed, 2 Nov 2005 11:19:34 +0100
-
-rt2400 (1.2.2+cvs20050730-5) experimental; urgency=low
-
- * Upload to unstable.
-
- -- Aurelien Jarno <aurel32 at debian.org> Tue, 1 Nov 2005 16:13:56 +0100
-
-rt2400 (1.2.2+cvs20050730-4) experimental; urgency=low
-
- * Upload to experimental as unstable is semi-frozen.
- * Refuse to build the module on an SMP kernel.
- * Only recommends linux-image-2.6.xx.
- * Clarified the description of rt2400.
-
- -- Aurelien Jarno <aurel32 at debian.org> Mon, 31 Oct 2005 20:17:52 +0100
-
-rt2400 (1.2.2+cvs20050730-3) unstable; urgency=low
-
- * It's seems RT2400STA.dat is only used by the configuration tool.
- Move this file in this package, and delete the rt2400-base package
- (closes: bug#325897)
- * Changed the name of the interface directly in the sources to be
- able to get rid of rt2400-base.
- * Added a README.Debian in the module package to explain how to
- change the name of the interface.
-
- -- Aurelien Jarno <aurel32 at debian.org> Fri, 16 Sep 2005 11:14:31 +0200
-
-rt2400 (1.2.2+cvs20050730-2) unstable; urgency=low
-
- * C++ transition: build-depends on libqt3-mt-dev (>= 3.3.4-4)
- (closes: bug#320507).
-
- -- Aurelien Jarno <aurel32 at debian.org> Fri, 12 Aug 2005 00:03:00 +0200
-
-rt2400 (1.2.2+cvs20050730-1) unstable; urgency=low
-
- * New CVS version corresponding to 1.2.2-b3.
- * Fixed a bug in debian rules that was making the module unbuildable.
-
- -- Aurelien Jarno <aurel32 at debian.org> Fri, 5 Aug 2005 19:21:16 +0200
-
-rt2400 (1.2.2+cvs20050710-2) unstable; urgency=low
-
- * Make the modules also depending on the kernel images which are using
- the new kernel naming scheme.
- * Only build modules with gcc-3.3 with 2.4 kernels.
-
- -- Aurelien Jarno <aurel32 at debian.org> Mon, 1 Aug 2005 01:57:33 +0200
-
-rt2400 (1.2.2+cvs20050710-1) unstable; urgency=low
-
- * Upload from Debconf 5.
- * New CVS version.
- * Build modules ith gcc-3.3.
- * Bumped Standards-Version to 3.6.2 (no changes).
-
- -- Aurelien Jarno <aurel32 at debian.org> Mon, 11 Jul 2005 10:44:27 +0300
-
-rt2400 (1.2.2+cvs20050618-1) unstable; urgency=low
-
- * New CVS version.
-
- -- Aurelien Jarno <aurel32 at debian.org> Sat, 18 Jun 2005 20:33:19 +0200
-
-rt2400 (1.2.2+cvs20050530-2) unstable; urgency=low
-
- * Don't try to include README in the module package (closes: bug#312001).
-
- -- Aurelien Jarno <aurel32 at debian.org> Sat, 4 Jun 2005 20:41:45 +0200
-
-rt2400 (1.2.2+cvs20050530-1) unstable; urgency=low
-
- * Initial Release (closes: bug#285757).
-
- -- Aurelien Jarno <aurel32 at debian.org> Tue, 31 May 2005 07:23:11 +0200
-
-Local variables:
-mode: debian-changelog
-End:
Copied: tags/rt2400-1.2.2+cvs20070911-1/debian/changelog (from rev 84, unstable/rt2400/debian/changelog)
===================================================================
--- tags/rt2400-1.2.2+cvs20070911-1/debian/changelog (rev 0)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/changelog 2007-11-12 00:30:15 UTC (rev 86)
@@ -0,0 +1,205 @@
+rt2400 (1.2.2+cvs20070911-1) unstable; urgency=low
+
+ * New CVS snapshot
+ - Removes RaConfig2400 utility and rt2400 binary package
+ * Added suggestion of rutilt package as a replacement for rt2400
+ * Fixed some race conditions in processing of queued work, with help
+ from Bryan Batten (004_fix_mlme_queue_locking.diff)
+ * Added dependency of rt2400-source on bzip2 (closes: bug#448715)
+
+ -- Ben Hutchings <ben at decadent.org.uk> Sun, 11 Nov 2007 23:57:45 +0000
+
+rt2400 (1.2.2+cvs20070219-3) unstable; urgency=low
+
+ * Workaround linux-libc-dev bug by including linux/if.h before
+ linux/wireless.h (closes: bug#428996).
+ * patches/2.6.22.diff: fix the build of the module with 2.6.22+ kernels
+ (closes: bug#432532).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sun, 15 Jul 2007 19:12:43 +0200
+
+rt2400 (1.2.2+cvs20070219-2) unstable; urgency=low
+
+ * Switch maintainer to "Debian Ralink packages maintainers".
+ * Move Ben Hutchings to uploaders, and add Romain Beauxis to uploaders.
+ * Use quilt for patch management.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Mon, 5 Mar 2007 23:34:53 +0100
+
+rt2400 (1.2.2+cvs20070219-1) unstable; urgency=low
+
+ * Switch Maintainer and Uploader.
+ * New CVS snaphost.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Tue, 20 Feb 2007 00:51:27 +0100
+
+rt2400 (1.2.2+cvs20061231-2) unstable; urgency=low
+
+ * Use bzip2 instead of gzip to compress the sources.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Wed, 3 Jan 2007 20:53:59 +0100
+
+rt2400 (1.2.2+cvs20061231-1) unstable; urgency=low
+
+ * New CVS version.
+ - Fix SSID handling with kernels >= 2.6.19 (closes: bug#405009).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sun, 31 Dec 2006 18:29:13 +0100
+
+rt2400 (1.2.2+cvs20061210-1) unstable; urgency=low
+
+ * New CVS version.
+ - Fix build with kernels >= 2.6.19 (closes: bug#401209).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sun, 10 Dec 2006 15:05:08 +0100
+
+rt2400 (1.2.2+cvs20060620-4) unstable; urgency=low
+
+ * debian/rules: fix a bashims (closes: bug#385205).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Wed, 30 Aug 2006 14:49:18 +0200
+
+rt2400 (1.2.2+cvs20060620-3) unstable; urgency=low
+
+ * Fixed a typo in the description.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Tue, 1 Aug 2006 16:23:05 +0200
+
+rt2400 (1.2.2+cvs20060620-2) unstable; urgency=low
+
+ * Fix build with kernels >= 2.6.17 (closes: bug#379085).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Fri, 21 Jul 2006 12:10:52 +0200
+
+rt2400 (1.2.2+cvs20060620-1) unstable; urgency=low
+
+ * New CVS version.
+ * Bumped Standards-Version to 3.7.2 (no changes).
+ * rt2400: stop recommending rt2400-module (closes: bug#376904).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Tue, 11 Jul 2006 10:39:56 +0200
+
+rt2400 (1.2.2+cvs20060417-4) unstable; urgency=low
+
+ * Rename rt2400-_KVERS_ into rt2400-modules-_KVERS_.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sat, 22 Apr 2006 20:17:52 +0200
+
+rt2400 (1.2.2+cvs20060417-3) unstable; urgency=low
+
+ * Added Ben Hutchings <ben at decadentplace.org.uk> to the Uploaders: field.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Thu, 20 Apr 2006 16:22:32 +0200
+
+rt2400 (1.2.2+cvs20060417-2) unstable; urgency=low
+
+ * Fix a typo in README.Debian.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Thu, 20 Apr 2006 03:31:20 +0200
+
+rt2400 (1.2.2+cvs20060417-1) unstable; urgency=low
+
+ * New CVS version.
+ * Put a link to /usr/share/doc/rt2400-source/README.Debian into the
+ root of rt2400.tar.gz, as users are unable to look in /usr/share/doc/
+ by themselves.
+ * Add a menu item for RaConfig2400.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Mon, 17 Apr 2006 16:20:47 +0200
+
+rt2400 (1.2.2+cvs20051217-2) unstable; urgency=low
+
+ * I have received reports that the rt2400 driver is also working with an
+ SMP kernel, so disable the error message when compiling on such a kernel.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Mon, 19 Dec 2005 21:36:39 +0100
+
+rt2400 (1.2.2+cvs20051217-1) unstable; urgency=low
+
+ * New CVS version.
+ * Only suggests gcc-3.3 and fails if it is not installed when building
+ the module against a 2.4 kernel.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sun, 18 Dec 2005 00:12:48 +0100
+
+rt2400 (1.2.2+cvs20050730-6) unstable; urgency=low
+
+ * Really upload to unstable.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Wed, 2 Nov 2005 11:19:34 +0100
+
+rt2400 (1.2.2+cvs20050730-5) experimental; urgency=low
+
+ * Upload to unstable.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Tue, 1 Nov 2005 16:13:56 +0100
+
+rt2400 (1.2.2+cvs20050730-4) experimental; urgency=low
+
+ * Upload to experimental as unstable is semi-frozen.
+ * Refuse to build the module on an SMP kernel.
+ * Only recommends linux-image-2.6.xx.
+ * Clarified the description of rt2400.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Mon, 31 Oct 2005 20:17:52 +0100
+
+rt2400 (1.2.2+cvs20050730-3) unstable; urgency=low
+
+ * It's seems RT2400STA.dat is only used by the configuration tool.
+ Move this file in this package, and delete the rt2400-base package
+ (closes: bug#325897)
+ * Changed the name of the interface directly in the sources to be
+ able to get rid of rt2400-base.
+ * Added a README.Debian in the module package to explain how to
+ change the name of the interface.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Fri, 16 Sep 2005 11:14:31 +0200
+
+rt2400 (1.2.2+cvs20050730-2) unstable; urgency=low
+
+ * C++ transition: build-depends on libqt3-mt-dev (>= 3.3.4-4)
+ (closes: bug#320507).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Fri, 12 Aug 2005 00:03:00 +0200
+
+rt2400 (1.2.2+cvs20050730-1) unstable; urgency=low
+
+ * New CVS version corresponding to 1.2.2-b3.
+ * Fixed a bug in debian rules that was making the module unbuildable.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Fri, 5 Aug 2005 19:21:16 +0200
+
+rt2400 (1.2.2+cvs20050710-2) unstable; urgency=low
+
+ * Make the modules also depending on the kernel images which are using
+ the new kernel naming scheme.
+ * Only build modules with gcc-3.3 with 2.4 kernels.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Mon, 1 Aug 2005 01:57:33 +0200
+
+rt2400 (1.2.2+cvs20050710-1) unstable; urgency=low
+
+ * Upload from Debconf 5.
+ * New CVS version.
+ * Build modules ith gcc-3.3.
+ * Bumped Standards-Version to 3.6.2 (no changes).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Mon, 11 Jul 2005 10:44:27 +0300
+
+rt2400 (1.2.2+cvs20050618-1) unstable; urgency=low
+
+ * New CVS version.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sat, 18 Jun 2005 20:33:19 +0200
+
+rt2400 (1.2.2+cvs20050530-2) unstable; urgency=low
+
+ * Don't try to include README in the module package (closes: bug#312001).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sat, 4 Jun 2005 20:41:45 +0200
+
+rt2400 (1.2.2+cvs20050530-1) unstable; urgency=low
+
+ * Initial Release (closes: bug#285757).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Tue, 31 May 2005 07:23:11 +0200
Deleted: tags/rt2400-1.2.2+cvs20070911-1/debian/control
===================================================================
--- unstable/rt2400/debian/control 2007-11-11 23:01:04 UTC (rev 81)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/control 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,39 +0,0 @@
-Source: rt2400
-Section: net
-Priority: extra
-Build-Depends: debhelper (>= 4.0), libqt3-mt-dev (>= 3.3.4-4), bzip2, quilt
-Maintainer: Debian Ralink packages maintainers <pkg-ralink-maintainers at lists.alioth.debian.org>
-Uploaders: Aurelien Jarno <aurel32 at debian.org>, Ben Hutchings <ben at decadent.org.uk>, Romain Beauxis <toots at rastageeks.org>
-Standards-Version: 3.7.2
-Homepage: http://rt2x00.serialmonkey.com/
-Vcs-Svn: svn://svn.debian.org/svn/pkg-ralink/unstable/rt2400
-Vcs-Browser: http://svn.debian.org/wsvn/pkg-ralink/unstable/rt2400
-
-Package: rt2400-source
-Architecture: all
-Depends: debhelper (>= 4.0), module-assistant
-Suggests: gcc-3.3
-Description: source for rt2400 wireless network driver
- This package provides source code for the rt2400 driver for Linux.
- This driver supports PCI and CardBus wireless network cards with the
- Ralink RT2400 or RT2401 chipset. An alternate driver, rt2400pci, is
- available in the rt2x00-source package and in the Linux kernel from
- version 2.6.24.
- .
- In order to compile the driver you need the kernel sources (or
- the linux-headers for the linux-image packages from Debian). For
- compile instructions look into /usr/share/doc/rt2400-source/README.Debian
- or simply use the module-assistant utility.
-
-Package: rt2400
-Architecture: any
-Depends: ${shlibs:Depends}, ${misc:Depends}
-Conflicts: rt2400-base
-Recommends: wireless-tools
-Description: configuration tool for rt2400 wireless network driver
- This package provides an X11 application to configure wireless
- network cards controlled by the rt2400 driver.
- .
- This package is useless without the appropriate rt2400-modules-x.yy.zz package
- for the kernel you are running, except if you have built it by hand. You can
- create such a package from rt2400-source.
Copied: tags/rt2400-1.2.2+cvs20070911-1/debian/control (from rev 84, unstable/rt2400/debian/control)
===================================================================
--- tags/rt2400-1.2.2+cvs20070911-1/debian/control (rev 0)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/control 2007-11-12 00:30:15 UTC (rev 86)
@@ -0,0 +1,26 @@
+Source: rt2400
+Section: net
+Priority: extra
+Build-Depends: debhelper (>= 4.0), bzip2, quilt
+Maintainer: Debian Ralink packages maintainers <pkg-ralink-maintainers at lists.alioth.debian.org>
+Uploaders: Aurelien Jarno <aurel32 at debian.org>, Ben Hutchings <ben at decadent.org.uk>, Romain Beauxis <toots at rastageeks.org>
+Standards-Version: 3.7.2
+Homepage: http://rt2x00.serialmonkey.com/
+Vcs-Svn: svn://svn.debian.org/svn/pkg-ralink/unstable/rt2400
+Vcs-Browser: http://svn.debian.org/wsvn/pkg-ralink/unstable/rt2400
+
+Package: rt2400-source
+Architecture: all
+Depends: debhelper (>= 4.0), module-assistant, bzip2
+Suggests: gcc-3.3
+Description: source for rt2400 wireless network driver
+ This package provides source code for the rt2400 driver for Linux.
+ This driver supports PCI and CardBus wireless network cards with the
+ Ralink RT2400 or RT2401 chipset. An alternate driver, rt2400pci, is
+ available in the rt2x00-source package and in the Linux kernel from
+ version 2.6.24.
+ .
+ In order to compile the driver you need the kernel sources (or
+ the linux-headers for the linux-image packages from Debian). For
+ compile instructions look into /usr/share/doc/rt2400-source/README.Debian
+ or simply use the module-assistant utility.
Deleted: tags/rt2400-1.2.2+cvs20070911-1/debian/control.modules.in
===================================================================
--- unstable/rt2400/debian/control.modules.in 2007-11-11 23:01:04 UTC (rev 81)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/control.modules.in 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,18 +0,0 @@
-Source: rt2400
-Section: net
-Priority: extra
-Build-Depends: debhelper (>= 4.0.0)
-Maintainer: Debian Ralink packages maintainers <pkg-ralink-maintainers at lists.alioth.debian.org>
-Standards-Version: 3.7.2
-Homepage: http://rt2x00.serialmonkey.com/
-
-Package: rt2400-modules-_KVERS_
-Architecture: any
-Recommends: linux-image-_KVERS_, wireless-tools
-Conflicts: rt2400-_KVERS_
-Suggests: rt2400
-Description: rt2400 wireless network driver
- This package contains the rt2400 driver for Linux _KVERS_.
- .
- This driver supports PCI and CardBus wireless network cards with the
- Ralink RT2400 or RT2401 chipset.
Copied: tags/rt2400-1.2.2+cvs20070911-1/debian/control.modules.in (from rev 82, unstable/rt2400/debian/control.modules.in)
===================================================================
--- tags/rt2400-1.2.2+cvs20070911-1/debian/control.modules.in (rev 0)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/control.modules.in 2007-11-12 00:30:15 UTC (rev 86)
@@ -0,0 +1,18 @@
+Source: rt2400
+Section: net
+Priority: extra
+Build-Depends: debhelper (>= 4.0.0)
+Maintainer: Debian Ralink packages maintainers <pkg-ralink-maintainers at lists.alioth.debian.org>
+Standards-Version: 3.7.2
+Homepage: http://rt2x00.serialmonkey.com/
+
+Package: rt2400-modules-_KVERS_
+Architecture: any
+Recommends: linux-image-_KVERS_, wireless-tools
+Conflicts: rt2400-_KVERS_
+Suggests: rutilt
+Description: rt2400 wireless network driver
+ This package contains the rt2400 driver for Linux _KVERS_.
+ .
+ This driver supports PCI and CardBus wireless network cards with the
+ Ralink RT2400 or RT2401 chipset.
Deleted: tags/rt2400-1.2.2+cvs20070911-1/debian/patches/000_if_name.diff
===================================================================
--- unstable/rt2400/debian/patches/000_if_name.diff 2007-11-11 23:01:04 UTC (rev 81)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/patches/000_if_name.diff 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,40 +0,0 @@
---- Utility/raconfig.cpp
-+++ Utility/raconfig.cpp
-@@ -135,7 +135,7 @@
-
- for (i=0; i<8; i++)
- {
-- sprintf(name, "ra%d", i);
-+ sprintf(name, "eth%d", i);
- if(Check_DeviceName(socket_id, name, "RT2400PCI"))
- {
- count++;
---- Module/rtmp_main.c
-+++ Module/rtmp_main.c
-@@ -64,7 +64,7 @@
- #endif
-
- MODULE_PARM_DESC(debug, "Enable level: accepted values: 1 to switch debug on, 0 to switch debug off.");
--MODULE_PARM_DESC(ifname, "Network device name (default ra%d)");
-+MODULE_PARM_DESC(ifname, "Network device name (default eth%d)");
- #else
- int debug = 0; /* Default is off. */
- module_param(debug, int, 0);
-@@ -72,7 +72,7 @@
-
- static char *ifname = NULL;
- module_param(ifname, charp, 0);
--MODULE_PARM_DESC(ifname, "Network device name (default ra%d)");
-+MODULE_PARM_DESC(ifname, "Network device name (default eth%d)");
- #endif /* LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 0) */
-
- // The driver version information
-@@ -265,7 +265,7 @@
- // register_netdev() will call dev_alloc_name() for us
- // TODO: remove the following line to keep the default "eth%d" (see above)
- if (ifname == NULL)
-- strcpy(net_dev->name, "ra%d");
-+ strcpy(net_dev->name, "eth%d");
- else
- strncpy(net_dev->name, ifname, IFNAMSIZ);
-
Copied: tags/rt2400-1.2.2+cvs20070911-1/debian/patches/000_if_name.diff (from rev 82, unstable/rt2400/debian/patches/000_if_name.diff)
===================================================================
--- tags/rt2400-1.2.2+cvs20070911-1/debian/patches/000_if_name.diff (rev 0)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/patches/000_if_name.diff 2007-11-12 00:30:15 UTC (rev 86)
@@ -0,0 +1,31 @@
+--- Module/rtmp_main.c.orig
++++ Module/rtmp_main.c
+@@ -64,7 +64,7 @@
+ #endif
+
+ MODULE_PARM_DESC(debug, "Enable level: accepted values: 1 to switch debug on, 0 to switch debug off.");
+-MODULE_PARM_DESC(ifname, "Network device name (default ra%d)");
++MODULE_PARM_DESC(ifname, "Network device name (default eth%d)");
+ #else
+ int debug = 0; /* Default is off. */
+ module_param(debug, int, 0);
+@@ -72,7 +72,7 @@
+
+ static char *ifname = NULL;
+ module_param(ifname, charp, 0);
+-MODULE_PARM_DESC(ifname, "Network device name (default ra%d)");
++MODULE_PARM_DESC(ifname, "Network device name (default eth%d)");
+ #endif /* LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 0) */
+
+ // The driver version information
+@@ -284,9 +284,8 @@
+ net_dev->set_mac_address = rt2400_set_mac_address;
+
+ // register_netdev() will call dev_alloc_name() for us
+- // TODO: remove the following line to keep the default "eth%d" (see above)
+ if (ifname == NULL)
+- strcpy(net_dev->name, "ra%d");
++ strcpy(net_dev->name, "eth%d");
+ else
+ strncpy(net_dev->name, ifname, IFNAMSIZ);
+
Deleted: tags/rt2400-1.2.2+cvs20070911-1/debian/patches/002_linux-headers.diff
===================================================================
--- unstable/rt2400/debian/patches/002_linux-headers.diff 2007-11-11 23:01:04 UTC (rev 81)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/patches/002_linux-headers.diff 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,40 +0,0 @@
---- Utility/rt_tool.cpp
-+++ Utility/rt_tool.cpp
-@@ -38,6 +38,7 @@
- #include <string.h>
- #include <sys/socket.h>
- #include <sys/ioctl.h>
-+#include <linux/if.h>
- #include <linux/wireless.h>
-
- #include "rt_tool.h"
---- Utility/raconfigform.cpp
-+++ Utility/raconfigform.cpp
-@@ -71,6 +71,7 @@
- #include <string.h>
- #include <sys/socket.h>
- #include <sys/ioctl.h>
-+#include <linux/if.h>
- #include <linux/wireless.h>
- #include <unistd.h>
- #include <sys/types.h>
---- Utility/addform.cpp
-+++ Utility/addform.cpp
-@@ -66,6 +66,7 @@
- #include <string.h>
- #include <sys/socket.h>
- #include <sys/ioctl.h>
-+#include <linux/if.h>
- #include <linux/wireless.h>
- #include <ctype.h>
-
---- Utility/raconfig.cpp
-+++ Utility/raconfig.cpp
-@@ -46,6 +46,7 @@
- #include <sys/socket.h>
- #include <sys/ioctl.h>
- #include <unistd.h>
-+#include <linux/if.h>
- #include <linux/wireless.h>
- #include <errno.h>
- #include <fcntl.h>
Copied: tags/rt2400-1.2.2+cvs20070911-1/debian/patches/004_fix_mlme_queue_locking.diff (from rev 82, unstable/rt2400/debian/patches/004_fix_mlme_queue_locking.diff)
===================================================================
--- tags/rt2400-1.2.2+cvs20070911-1/debian/patches/004_fix_mlme_queue_locking.diff (rev 0)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/patches/004_fix_mlme_queue_locking.diff 2007-11-12 00:30:15 UTC (rev 86)
@@ -0,0 +1,217 @@
+--- rt2400.orig/Module/mlme.c
++++ rt2400/Module/mlme.c
+@@ -39,6 +39,8 @@
+ #include "rt_config.h"
+ #include <stdarg.h>
+
++#include <asm/system.h>
++
+ /*
+ ==========================================================================
+ Description:
+@@ -58,7 +60,6 @@
+ do
+ {
+ pAd->Mlme.Running = FALSE;
+- spin_lock_init(&pAd->Mlme.TaskLock);
+
+ // initialize the two tables
+ // MacTableInit(pAd);
+@@ -131,32 +132,28 @@
+ {
+ MLME_QUEUE_ELEM *Elem = NULL;
+
+- // Only accept MLME and Frame from peer side, no other (control/data) frame should
+- // get into this state machine
++ // Only accept MLME and Frame from peer side, no other (control/data)
++ // frame should get into this state machine
+
+- spin_lock(&pAd->Mlme.TaskLock);
++ // We fix the multiple context service drop problem identified by
++ // Ben Hutchings in an SMP- safe way by combining TaskLock and Queue.Lock
++ // per his suggestion.
++ spin_lock(&pAd->Mlme.Queue.Lock);
+ if(pAd->Mlme.Running)
+ {
+- spin_unlock(&pAd->Mlme.TaskLock);
++ spin_unlock(&pAd->Mlme.Queue.Lock);
+ return;
+ }
+- else
+- {
+- pAd->Mlme.Running = TRUE;
+- }
+- spin_unlock(&pAd->Mlme.TaskLock);
++ pAd->Mlme.Running = TRUE;
++
++ while (MlmeGetHead(&pAd->Mlme.Queue, &Elem)) {
++ smp_read_barrier_depends();
++ if (!Elem->Occupied) break;
+
+- while (TRUE) {
+- spin_lock(&pAd->Mlme.Queue.Lock);
+- if (!MlmeDequeue(&pAd->Mlme.Queue, &Elem)) {
+- spin_unlock(&pAd->Mlme.Queue.Lock);
+- break;
+- }
+ spin_unlock(&pAd->Mlme.Queue.Lock);
+- if (pAd->PortCfg.BssType == BSS_MONITOR)
+- continue;
++
+ // From message type, determine which state machine I should drive
+- switch (Elem->Machine) {
++ if (pAd->PortCfg.BssType != BSS_MONITOR) switch (Elem->Machine) {
+ case ASSOC_STATE_MACHINE:
+ StateMachinePerformAction(pAd, &pAd->Mlme.AssocMachine, Elem);
+ break;
+@@ -173,18 +170,19 @@
+ MlmeCntlMachinePerformAction(pAd, &pAd->Mlme.CntlMachine, Elem);
+ break;
+ default:
+- DBGPRINT(RT_DEBUG_TRACE, "ERROR: Illegal machine in MlmeHandler()\n");
++ DBGPRINT(RT_DEBUG_ERROR,
++ "ERROR: Illegal machine in MlmeHandler()\n");
+ break;
+ } // end of switch
+
+ // free MLME element
+- Elem->Occupied = FALSE;
+- Elem->MsgLen = 0;
++ smp_mb();
++ Elem->Occupied = FALSE; // sic - bb
++ spin_lock(&pAd->Mlme.Queue.Lock);
++ MlmeDequeue(&pAd->Mlme.Queue);
+ }
+-
+- spin_lock(&pAd->Mlme.TaskLock);
+ pAd->Mlme.Running = FALSE;
+- spin_unlock(&pAd->Mlme.TaskLock);
++ spin_unlock(&pAd->Mlme.Queue.Lock);
+ }
+
+ /*
+@@ -229,7 +227,6 @@
+ StateMachineDestroy(&pAd->Mlme.AuthRspMachine);
+ StateMachineDestroy(&pAd->Mlme.SyncMachine);
+ // StateMachineDestroy(&pAd->Mlme.CntlMachine);
+-// spin_unlock(&pAd->Mlme.TaskLock);
+ // NdisFreeSpinLock(&pAd->PortCfg.MacTab.Lock);
+
+ // Cancel pending timers
+@@ -1392,17 +1389,31 @@
+ printk(KERN_ERR DRV_NAME ": MlmeEnqueue full, msg dropped and may corrupt MLME\n");
+ return FALSE;
+ }
++ // If another context preempts us, it uses the next element - sic. bb
+ Tail = Queue->Tail++;
+ Queue->Tail %= MAX_LEN_OF_MLME_QUEUE;
+ Queue->Num++;
++
++ // We guard against Ben Hutchings' incomplete queue element problem by not
++ // setting the Occupied flag until the memcpy is done. The ocurrence of a
++ // refresh cycle during a copy can stretch the time by up to 100 usec
++ // (well, quite a few usec, anyway); not good when interrupts are disabled.
++ // Note that this can leave a bubble in the queue, but it will have
++ // disappeared by the time this thread gets around to calling MlmeHandler.
++ // All items will be handled in their proper order, but possibly not in the
++ // context in which they were added. - bb
+ spin_unlock(&Queue->Lock);
+ DBGPRINT(RT_DEBUG_INFO, "MlmeEnqueue, num=%d\n", Queue->Num);
+
+- Queue->Entry[Tail].Occupied = TRUE;
+ Queue->Entry[Tail].Machine = Machine;
+ Queue->Entry[Tail].MsgType = MsgType;
+ Queue->Entry[Tail].MsgLen = MsgLen;
+ memcpy(Queue->Entry[Tail].Msg, Msg, MsgLen);
++
++ //MlmeHandler will stop when it finds this false.
++ smp_wmb();
++ Queue->Entry[Tail].Occupied = TRUE;
++
+ return TRUE;
+ }
+
+@@ -1449,7 +1460,7 @@
+ DBGPRINT(RT_DEBUG_INFO, "MlmeEnqueueForRecv, num=%d\n",Queue->Num);
+
+ // OK, we got all the informations, it is time to put things into queue
+- Queue->Entry[Tail].Occupied = TRUE;
++ // See MlmeEnqueue note for use of Occupied flag.
+ Queue->Entry[Tail].Machine = Machine;
+ Queue->Entry[Tail].MsgType = MsgType;
+ Queue->Entry[Tail].MsgLen = MsgLen;
+@@ -1458,13 +1469,15 @@
+ Queue->Entry[Tail].TimeStamp = jiffies;
+ Queue->Entry[Tail].Rssi = Rssi;
+ memcpy(Queue->Entry[Tail].Msg, Msg, MsgLen);
++ smp_wmb();
++ Queue->Entry[Tail].Occupied = TRUE;
+
+ MlmeHandler(pAd);
+
+ return TRUE;
+ }
+
+-/*! \brief Dequeue a message from the MLME Queue
++/*! \brief Get the first message from the MLME Queue
+ * WARNING: Must be call with Mlme.Queue.Lock held
+ * \param *Queue The MLME Queue
+ * \param *Elem The message dequeued from MLME Queue
+@@ -1472,14 +1485,29 @@
+ * \pre
+ * \post
+ */
+-BOOLEAN MlmeDequeue(
++BOOLEAN MlmeGetHead(
+ IN MLME_QUEUE *Queue,
+ OUT MLME_QUEUE_ELEM **Elem)
+ {
+ if (Queue->Num == 0)
+ return FALSE;
+- *Elem = &Queue->Entry[Queue->Head++];
+- Queue->Head %= MAX_LEN_OF_MLME_QUEUE;
++ *Elem = &Queue->Entry[Queue->Head];
++ return TRUE;
++}
++
++/*! \brief Remove the first message from the MLME Queue
++ * WARNING: Must be call with Mlme.Queue.Lock held
++ * \param *Queue The MLME Queue
++ * \return TRUE if a message was removed, FALSE if the queue was empty
++ * \pre
++ * \post
++ */
++BOOLEAN MlmeDequeue(
++ IN MLME_QUEUE *Queue)
++{
++ if (Queue->Num == 0)
++ return FALSE;
++ Queue->Head = (Queue->Head + 1) % MAX_LEN_OF_MLME_QUEUE;
+ Queue->Num--;
+ DBGPRINT(RT_DEBUG_INFO, "MlmeDequeue, num=%d\n",Queue->Num);
+
+--- rt2400.orig/Module/rtmp.h
++++ rt2400/Module/rtmp.h
+@@ -596,7 +596,6 @@
+ ULONG RxPER; // 0..100 %
+
+ BOOLEAN Running;
+- spinlock_t TaskLock;
+ MLME_QUEUE Queue;
+
+ UINT ShiftReg;
+@@ -1287,10 +1286,13 @@
+ IN ULONG MsgLen,
+ IN VOID *Msg);
+
+-BOOLEAN MlmeDequeue(
++BOOLEAN MlmeGetHead(
+ IN MLME_QUEUE *Queue,
+ OUT MLME_QUEUE_ELEM **Elem);
+
++BOOLEAN MlmeDequeue(
++ IN MLME_QUEUE *Queue);
++
+ BOOLEAN MsgTypeSubst(
+ IN MACFRAME *Fr,
+ OUT INT *Machine,
Deleted: tags/rt2400-1.2.2+cvs20070911-1/debian/patches/2.6.22.diff
===================================================================
--- unstable/rt2400/debian/patches/2.6.22.diff 2007-11-11 23:01:04 UTC (rev 81)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/patches/2.6.22.diff 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,53 +0,0 @@
---- Module.orig/rt_config.h 2007/05/10 08:45:32 1.8
-+++ Module/rt_config.h 2007/06/18 19:39:09 1.9
-@@ -88,6 +88,22 @@
- #include <asm/irq.h>
- #include <asm/uaccess.h>
-
-+#ifndef pci_name
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0))
-+#define pci_name(__pPci_Dev) (__pPci_Dev)->dev.bus_id
-+#else /* (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)) */
-+#define pci_name(__pPci_Dev) (__pPci_Dev)->slot_name
-+#endif /*(LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)) */
-+#endif /* pci_name */
-+
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22))
-+#define pci_module_init pci_register_driver
-+#endif
-+
-+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22))
-+#define skb_reset_mac_header(skb) (skb->mac.raw = skb->data)
-+#endif
-+
- #if WIRELESS_EXT > 12
- #include <net/iw_handler.h> /* New driver API */
- #endif /* WIRELESS_EXT > 12 */
---- Module.orig/rtmp.h 2007/04/25 05:28:43 1.10
-+++ Module/rtmp.h 2007/06/18 19:39:10 1.11
-@@ -55,14 +55,6 @@
- #define netdev_priv(_dev) ( _dev->priv )
- #endif
-
--#ifndef pci_name
--#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0))
--#define pci_name(__pPci_Dev) (__pPci_Dev)->dev.bus_id
--#else /* (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)) */
--#define pci_name(__pPci_Dev) (__pPci_Dev)->slot_name
--#endif /*(LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)) */
--#endif /* pci_name */
--
- //
- // MACRO for debugging information
- //
---- Module.orig/rtmp_data.c 2007/03/21 04:12:20 1.6
-+++ Module/rtmp_data.c 2007/06/18 19:39:10 1.7
-@@ -110,7 +110,7 @@
- {
- skb->dev = pAd->net_dev;
- memcpy(skb_put(skb, pRxD->DataByteCnt), pData, pRxD->DataByteCnt);
-- skb->mac.raw = skb->data;
-+ skb_reset_mac_header(skb);
- skb->pkt_type = PACKET_OTHERHOST;
- skb->protocol = htons(ETH_P_802_2);
- skb->ip_summed = CHECKSUM_NONE;
Deleted: tags/rt2400-1.2.2+cvs20070911-1/debian/patches/series
===================================================================
--- unstable/rt2400/debian/patches/series 2007-11-11 23:01:04 UTC (rev 81)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/patches/series 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,3 +0,0 @@
-000_if_name.diff -p0
-002_linux-headers.diff -p0
-2.6.22.diff -p0
Copied: tags/rt2400-1.2.2+cvs20070911-1/debian/patches/series (from rev 82, unstable/rt2400/debian/patches/series)
===================================================================
--- tags/rt2400-1.2.2+cvs20070911-1/debian/patches/series (rev 0)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/patches/series 2007-11-12 00:30:15 UTC (rev 86)
@@ -0,0 +1,2 @@
+000_if_name.diff -p0
+004_fix_mlme_queue_locking.diff
Deleted: tags/rt2400-1.2.2+cvs20070911-1/debian/rt2400.dirs
===================================================================
--- unstable/rt2400/debian/rt2400.dirs 2007-11-11 23:01:04 UTC (rev 81)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/rt2400.dirs 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,3 +0,0 @@
-/etc/Ralink/RT2400
-usr/bin
-usr/share/pixmaps
Deleted: tags/rt2400-1.2.2+cvs20070911-1/debian/rt2400.docs
===================================================================
--- unstable/rt2400/debian/rt2400.docs 2007-11-11 23:01:04 UTC (rev 81)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/rt2400.docs 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,2 +0,0 @@
-FAQ
-THANKS
Deleted: tags/rt2400-1.2.2+cvs20070911-1/debian/rt2400.manpages
===================================================================
--- unstable/rt2400/debian/rt2400.manpages 2007-11-11 23:01:04 UTC (rev 81)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/rt2400.manpages 2007-11-12 00:30:15 UTC (rev 86)
@@ -1 +0,0 @@
-debian/RaConfig2400.1
Deleted: tags/rt2400-1.2.2+cvs20070911-1/debian/rt2400.menu
===================================================================
--- unstable/rt2400/debian/rt2400.menu 2007-11-11 23:01:04 UTC (rev 81)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/rt2400.menu 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,7 +0,0 @@
-?package(rt2400):\
- needs="X11" \
- section="Apps/System" \
- title="RT2400 configuration utility" \
- command="su-to-root -X -c /usr/bin/RaConfig2400" \
- icon="/usr/share/pixmaps/RaConfig2400.xpm"
-
Deleted: tags/rt2400-1.2.2+cvs20070911-1/debian/rules
===================================================================
--- unstable/rt2400/debian/rules 2007-11-11 23:01:04 UTC (rev 81)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/rules 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,215 +0,0 @@
-#!/usr/bin/make -f
-# Sample debian/rules that uses debhelper.
-# GNU copyright 1997 by Joey Hess.
-#
-# This version is for a hypothetical package that builds an
-# architecture-dependant package, as well as an architecture-independent
-# package.
-
-# Uncomment this to turn on verbose mode.
-#export DH_VERBOSE=1
-
-# prefix of the target package name
-PACKAGE=rt2400-modules
-# modifieable for experiments or debugging m-a
-MA_DIR ?= /usr/share/modass
-# load generic variable handling
--include $(MA_DIR)/include/generic.make
-# load default rules
--include $(MA_DIR)/include/common-rules.make
-
-ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
- CFLAGS += -g
-endif
-ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
- INSTALL_PROGRAM += -s
-endif
-
-clean:
- dh_testdir
- dh_testroot
- -$(MAKE) -C Module clean
- -$(MAKE) -C Utility clean
- -rm Utility/Makefile
- -rm Utility/RaConfig2400
- QUILT_PATCHES=debian/patches quilt pop -a -R || test $$? = 2
- dh_clean
- rm -rf debian/build
- rm -f *-stamp
-
-patch: patch-stamp
-patch-stamp:
- QUILT_PATCHES=debian/patches quilt push -a || test $$? = 2
-
-build-arch: build-arch-stamp
-build-arch-stamp: patch-stamp
- dh_testdir
- cd Utility/ \
- && qmake -o Makefile raconfig2400.pro \
- && $(MAKE)
-
- touch build-arch-stamp
-
-install-arch: build-arch install-arch-stamp
-install-arch-stamp:
- dh_testdir
- dh_testroot
- dh_clean -k -a
- dh_installdirs -a
-
- install -m 755 -o root -g root $(CURDIR)/Utility/RaConfig2400 $(CURDIR)/debian/rt2400/usr/bin
- install -m 644 -o root -g root $(CURDIR)/debian/RaConfig2400.xpm $(CURDIR)/debian/rt2400/usr/share/pixmaps
-
- touch install-arch-stamp
-
-build-indep: build-indep-stamp
-build-indep-stamp: patch-stamp
- dh_testdir
-
- # Copy most of the source tree into the temp directory and clean it
- cd $(CURDIR)/Module \
- && find . -path ./debian/\* -type d -prune -o -print \
- | egrep -v 'RPM|CVS|debian' \
- | cpio -admp $(CURDIR)/debian/build/usr/src/modules/rt2400
- cp -f $(CURDIR)/FAQ $(CURDIR)/debian/build/usr/src/modules/rt2400
- cp -f $(CURDIR)/THANKS $(CURDIR)/debian/build/usr/src/modules/rt2400
- cp -f $(CURDIR)/CHANGELOG $(CURDIR)/debian/build/usr/src/modules/rt2400
- ln -s /usr/share/doc/rt2400-source/README.Debian $(CURDIR)/debian/build/usr/src/modules/rt2400/INSTALL.Debian
-
- mkdir $(CURDIR)/debian/build/usr/src/modules/rt2400/debian
- cp -f $(CURDIR)/debian/*.modules.in $(CURDIR)/debian/build/usr/src/modules/rt2400/debian
- cp -f $(CURDIR)/debian/changelog $(CURDIR)/debian/build/usr/src/modules/rt2400/debian
- cp -f $(CURDIR)/debian/compat $(CURDIR)/debian/build/usr/src/modules/rt2400/debian
- cp -f $(CURDIR)/debian/copyright $(CURDIR)/debian/build/usr/src/modules/rt2400/debian
- cp -f $(CURDIR)/debian/rt2400-source.docs $(CURDIR)/debian/build/usr/src/modules/rt2400/debian/docs
- cp -f $(CURDIR)/debian/rules $(CURDIR)/debian/build/usr/src/modules/rt2400/debian
-
- cd $(CURDIR)/debian/build/usr/src/modules/rt2400 \
- && make clean
-
- touch build-indep-stamp
-
-install-indep: build-indep install-indep-stamp
-install-indep-stamp:
- dh_testdir
- dh_testroot
- dh_clean -i -k
- dh_installdirs -i
-
- # Pack this up into a tarball
- chown -R root.src debian/build/usr/src/modules
- mkdir -p debian/rt2400-source/usr/src
- cd debian/build/usr/src \
- && tar cf - modules | bzip2 -9 > $(CURDIR)/debian/rt2400-source/usr/src/rt2400.tar.bz2
- ln -s ../packages/default.sh \
- debian/rt2400-source/usr/share/modass/overrides/rt2400-source
-
- touch install-indep-stamp
-
-# Build architecture-independent files here.
-binary-indep: build-indep install-indep
- dh_testdir -i
- dh_testroot -i
-# dh_installdebconf -i
- dh_installdocs -i
-# dh_installexamples -i
-# dh_installmenu -i
-# dh_installlogrotate -i
-# dh_installemacsen -i
-# dh_installpam -i
-# dh_installmime -i
-# dh_installinit -i
-# dh_installcron -i
- dh_installman -i
-# dh_installinfo -i
- dh_installmodules -i
- dh_installchangelogs -i CHANGELOG
- dh_strip -i
- dh_link -i
- dh_compress -i
- dh_fixperms -i
- dh_installdeb -i
- dh_shlibdeps -i
- dh_gencontrol -i
- dh_md5sums -i
- dh_builddeb -i
-
-# Build architecture-dependent files here.
-binary-arch: build-arch install-arch
- dh_testdir -a
- dh_testroot -a
-# dh_installdebconf -a
- dh_installdocs -a
-# dh_installexamples -a
- dh_installmenu -a
-# dh_installlogrotate -a
-# dh_installemacsen -a
-# dh_installpam -a
-# dh_installmime -a
-# dh_installinit -a
-# dh_installcron -a
- dh_installman -a
-# dh_installinfo -a
- dh_installmodules -a
- dh_installchangelogs -a CHANGELOG
- dh_strip -a
- dh_link -a
- dh_compress -a
- dh_fixperms -a
- dh_installdeb -a
- dh_shlibdeps -a
- dh_gencontrol -a
- dh_md5sums -a
- dh_builddeb -a
-
-binary: binary-indep binary-arch
-.PHONY: build clean binary-indep binary-arch binary install
-
-PATCHLEVEL := $(shell echo $(KVERS) | cut -d. -f2)
-
-.PHONY: kdist_config
-kdist_config: prep-deb-files
-
-.PHONY: binary_modules binary-modules
-binary-modules: binary_modules
-binary_modules: kdist_config
-
- # Install module
- dh_installdirs lib/modules/$(KVERS)/kernel/drivers/net/wireless
-
- # Build modules
-ifeq ($(PATCHLEVEL), 4)
- @if ! [ -x "/usr/bin/gcc-3.3" ] ; then \
- echo "gcc-3.3 does not appear to be installed on your. It is necessary to be" ; \
- echo "able to build the module on a 2.4 kernel. Please install it by running:" ; \
- echo " apt-get install gcc-3.3" ; \
- false ; \
- fi
-
- $(MAKE) KERNDIR=$(KSRC) PATCHLEVEL=$(PATCHLEVEL) CC=gcc-3.3
- install -m 0644 rt2400.o $(CURDIR)/debian/rt2400-modules-$(KVERS)/lib/modules/$(KVERS)/kernel/drivers/net/wireless
-endif
-ifeq ($(PATCHLEVEL), 6)
- $(MAKE) KERNDIR=$(KSRC) PATCHLEVEL=$(PATCHLEVEL)
- install -m 0644 rt2400.ko $(CURDIR)/debian/rt2400-modules-$(KVERS)/lib/modules/$(KVERS)/kernel/drivers/net/wireless
-endif
-
- dh_testdir
- dh_testroot
- dh_installdocs
- dh_installmodules
- dh_installchangelogs CHANGELOG
- dh_link
- dh_strip
- dh_compress
- dh_fixperms
- dh_installdeb
- dh_gencontrol -- -v$(VERSION)
- dh_md5sums
- dh_builddeb --destdir=$(DEB_DESTDIR)
-
-.PHONY: kdist_clean
-kdist_clean:
- touch config.mk \
- && $(MAKE) clean
- -dh_clean
Copied: tags/rt2400-1.2.2+cvs20070911-1/debian/rules (from rev 82, unstable/rt2400/debian/rules)
===================================================================
--- tags/rt2400-1.2.2+cvs20070911-1/debian/rules (rev 0)
+++ tags/rt2400-1.2.2+cvs20070911-1/debian/rules 2007-11-12 00:30:15 UTC (rev 86)
@@ -0,0 +1,201 @@
+#!/usr/bin/make -f
+# Sample debian/rules that uses debhelper.
+# GNU copyright 1997 by Joey Hess.
+#
+# This version is for a hypothetical package that builds an
+# architecture-dependant package, as well as an architecture-independent
+# package.
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+# prefix of the target package name
+PACKAGE=rt2400-modules
+# modifieable for experiments or debugging m-a
+MA_DIR ?= /usr/share/modass
+# load generic variable handling
+-include $(MA_DIR)/include/generic.make
+# load default rules
+-include $(MA_DIR)/include/common-rules.make
+
+ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
+ CFLAGS += -g
+endif
+ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
+ INSTALL_PROGRAM += -s
+endif
+
+clean:
+ dh_testdir
+ dh_testroot
+ -$(MAKE) -C Module clean
+ QUILT_PATCHES=debian/patches quilt pop -a -R || test $$? = 2
+ dh_clean
+ rm -rf debian/build
+ rm -f *-stamp
+
+patch: patch-stamp
+patch-stamp:
+ QUILT_PATCHES=debian/patches quilt push -a || test $$? = 2
+
+build-arch: build-arch-stamp
+build-arch-stamp: patch-stamp
+ dh_testdir
+ touch build-arch-stamp
+
+install-arch: build-arch install-arch-stamp
+install-arch-stamp:
+ dh_testdir
+ touch install-arch-stamp
+
+build-indep: build-indep-stamp
+build-indep-stamp: patch-stamp
+ dh_testdir
+
+ # Copy most of the source tree into the temp directory and clean it
+ cd $(CURDIR)/Module \
+ && find . -path ./debian/\* -type d -prune -o -print \
+ | egrep -v 'RPM|CVS|debian' \
+ | cpio -admp $(CURDIR)/debian/build/usr/src/modules/rt2400
+ cp -f $(CURDIR)/FAQ $(CURDIR)/debian/build/usr/src/modules/rt2400
+ cp -f $(CURDIR)/THANKS $(CURDIR)/debian/build/usr/src/modules/rt2400
+ cp -f $(CURDIR)/CHANGELOG $(CURDIR)/debian/build/usr/src/modules/rt2400
+ ln -s /usr/share/doc/rt2400-source/README.Debian $(CURDIR)/debian/build/usr/src/modules/rt2400/INSTALL.Debian
+
+ mkdir $(CURDIR)/debian/build/usr/src/modules/rt2400/debian
+ cp -f $(CURDIR)/debian/*.modules.in $(CURDIR)/debian/build/usr/src/modules/rt2400/debian
+ cp -f $(CURDIR)/debian/changelog $(CURDIR)/debian/build/usr/src/modules/rt2400/debian
+ cp -f $(CURDIR)/debian/compat $(CURDIR)/debian/build/usr/src/modules/rt2400/debian
+ cp -f $(CURDIR)/debian/copyright $(CURDIR)/debian/build/usr/src/modules/rt2400/debian
+ cp -f $(CURDIR)/debian/rt2400-source.docs $(CURDIR)/debian/build/usr/src/modules/rt2400/debian/docs
+ cp -f $(CURDIR)/debian/rules $(CURDIR)/debian/build/usr/src/modules/rt2400/debian
+
+ cd $(CURDIR)/debian/build/usr/src/modules/rt2400 \
+ && make clean
+
+ touch build-indep-stamp
+
+install-indep: build-indep install-indep-stamp
+install-indep-stamp:
+ dh_testdir
+ dh_testroot
+ dh_clean -i -k
+ dh_installdirs -i
+
+ # Pack this up into a tarball
+ chown -R root.src debian/build/usr/src/modules
+ mkdir -p debian/rt2400-source/usr/src
+ cd debian/build/usr/src \
+ && tar cf - modules | bzip2 -9 > $(CURDIR)/debian/rt2400-source/usr/src/rt2400.tar.bz2
+ ln -s ../packages/default.sh \
+ debian/rt2400-source/usr/share/modass/overrides/rt2400-source
+
+ touch install-indep-stamp
+
+# Build architecture-independent files here.
+binary-indep: build-indep install-indep
+ dh_testdir -i
+ dh_testroot -i
+# dh_installdebconf -i
+ dh_installdocs -i
+# dh_installexamples -i
+# dh_installmenu -i
+# dh_installlogrotate -i
+# dh_installemacsen -i
+# dh_installpam -i
+# dh_installmime -i
+# dh_installinit -i
+# dh_installcron -i
+ dh_installman -i
+# dh_installinfo -i
+ dh_installmodules -i
+ dh_installchangelogs -i CHANGELOG
+ dh_strip -i
+ dh_link -i
+ dh_compress -i
+ dh_fixperms -i
+ dh_installdeb -i
+ dh_shlibdeps -i
+ dh_gencontrol -i
+ dh_md5sums -i
+ dh_builddeb -i
+
+# Build architecture-dependent files here.
+binary-arch: build-arch install-arch
+ dh_testdir -a
+ dh_testroot -a
+# dh_installdebconf -a
+ dh_installdocs -a
+# dh_installexamples -a
+ dh_installmenu -a
+# dh_installlogrotate -a
+# dh_installemacsen -a
+# dh_installpam -a
+# dh_installmime -a
+# dh_installinit -a
+# dh_installcron -a
+ dh_installman -a
+# dh_installinfo -a
+ dh_installmodules -a
+ dh_installchangelogs -a CHANGELOG
+ dh_strip -a
+ dh_link -a
+ dh_compress -a
+ dh_fixperms -a
+ dh_installdeb -a
+ dh_shlibdeps -a
+ dh_gencontrol -a
+ dh_md5sums -a
+ dh_builddeb -a
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install
+
+PATCHLEVEL := $(shell echo $(KVERS) | cut -d. -f2)
+
+.PHONY: kdist_config
+kdist_config: prep-deb-files
+
+.PHONY: binary_modules binary-modules
+binary-modules: binary_modules
+binary_modules: kdist_config
+
+ # Install module
+ dh_installdirs lib/modules/$(KVERS)/kernel/drivers/net/wireless
+
+ # Build modules
+ifeq ($(PATCHLEVEL), 4)
+ @if ! [ -x "/usr/bin/gcc-3.3" ] ; then \
+ echo "gcc-3.3 does not appear to be installed on your. It is necessary to be" ; \
+ echo "able to build the module on a 2.4 kernel. Please install it by running:" ; \
+ echo " apt-get install gcc-3.3" ; \
+ false ; \
+ fi
+
+ $(MAKE) KERNDIR=$(KSRC) PATCHLEVEL=$(PATCHLEVEL) CC=gcc-3.3
+ install -m 0644 rt2400.o $(CURDIR)/debian/rt2400-modules-$(KVERS)/lib/modules/$(KVERS)/kernel/drivers/net/wireless
+endif
+ifeq ($(PATCHLEVEL), 6)
+ $(MAKE) KERNDIR=$(KSRC) PATCHLEVEL=$(PATCHLEVEL)
+ install -m 0644 rt2400.ko $(CURDIR)/debian/rt2400-modules-$(KVERS)/lib/modules/$(KVERS)/kernel/drivers/net/wireless
+endif
+
+ dh_testdir
+ dh_testroot
+ dh_installdocs
+ dh_installmodules
+ dh_installchangelogs CHANGELOG
+ dh_link
+ dh_strip
+ dh_compress
+ dh_fixperms
+ dh_installdeb
+ dh_gencontrol -- -v$(VERSION)
+ dh_md5sums
+ dh_builddeb --destdir=$(DEB_DESTDIR)
+
+.PHONY: kdist_clean
+kdist_clean:
+ touch config.mk \
+ && $(MAKE) clean
+ -dh_clean
Copied: tags/rt2500-1.1.0-b4+cvs20070924-2 (from rev 79, unstable/rt2500)
Deleted: tags/rt2500-1.1.0-b4+cvs20070924-2/debian/changelog
===================================================================
--- unstable/rt2500/debian/changelog 2007-11-11 22:54:12 UTC (rev 79)
+++ tags/rt2500-1.1.0-b4+cvs20070924-2/debian/changelog 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,222 +0,0 @@
-rt2500 (1:1.1.0-b4+cvs20070924-1) unstable; urgency=low
-
- * New CVS snapshot
- - Removes RaConfig2500 utility and rt2500 binary package
- * Added suggestion of rutilt package as a replacement for rt2500
- * Fixed some race conditions in processing of queued work, with help
- from Bryan Batten (004_fix_mlme_queue_locking.diff)
- * Fixed sharing of error rate variables between interfaces
- (005_fix_error_rate_vars.diff)
-
- -- Ben Hutchings <ben at decadent.org.uk> Mon, 22 Oct 2007 01:58:22 +0100
-
-rt2500 (1:1.1.0-b4-4) unstable; urgency=low
-
- * Workaround linux-libc-dev bug by including linux/if.h before
- linux/wireless.h (closes: bug#429019).
- * patches/2.6.22: fix the build of the module with 2.6.22+ kernels
- (closes: bug#432358).
-
- -- Aurelien Jarno <aurel32 at debian.org> Sun, 15 Jul 2007 21:30:43 +0200
-
-rt2500 (1:1.1.0-b4-3) unstable; urgency=low
-
- * Fixed 2.6.19.patch (Closes: #399051)
-
- -- Romain Beauxis <toots at rastageeks.org> Thu, 15 Mar 2007 14:26:43 +0100
-
-rt2500 (1:1.1.0-b4-2) unstable; urgency=low
-
- * patches/2.6.19.diff: add a missing part preventing the module
- to be built on 2.6.19+ kernels (closes: bug#413724).
-
- -- Aurelien Jarno <aurel32 at debian.org> Tue, 6 Mar 2007 20:55:40 +0100
-
-rt2500 (1:1.1.0-b4-1) unstable; urgency=low
-
- * Switch back to 1.1.0-b4 + backported patches (closes: bug#411703,
- bug#413158).
- * Switch maintainer to "Debian Ralink packages maintainers".
- * Move Ben Hutchings to uploaders, and add Romain Beauxis to uploaders.
- * Use quilt for patch management.
-
- -- Aurelien Jarno <aurel32 at debian.org> Tue, 6 Mar 2007 00:53:59 +0100
-
-rt2500 (1.1.0+cvs20070219-1) unstable; urgency=low
-
- * Switch Maintainer and Uploader.
- * New CVS snaphost.
- - Fix build on >= 2.6.20-rc5 kernels (closes: bug#406825).
-
- -- Aurelien Jarno <aurel32 at debian.org> Mon, 19 Feb 2007 01:50:17 +0100
-
-rt2500 (1.1.0+cvs20061231-2) unstable; urgency=low
-
- * Use bzip2 instead of gzip to compress the sources.
-
- -- Aurelien Jarno <aurel32 at debian.org> Wed, 3 Jan 2007 20:58:09 +0100
-
-rt2500 (1.1.0+cvs20061231-1) unstable; urgency=low
-
- * New CVS snaphost.
- - Fix SSID handling with kernels >= 2.6.19.
-
- -- Aurelien Jarno <aurel32 at debian.org> Sun, 31 Dec 2006 18:28:26 +0100
-
-rt2500 (1.1.0+cvs20061210-1) unstable; urgency=low
-
- * New CVS snapshot.
- - Fix build with kernels >= 2.6.19.
-
- -- Aurelien Jarno <aurel32 at debian.org> Sun, 10 Dec 2006 15:30:22 +0100
-
-rt2500 (1.1.0+cvs20060620-3) unstable; urgency=low
-
- * debian/rules: fix a bashism (closes: bug#385207).
-
- -- Aurelien Jarno <aurel32 at debian.org> Wed, 30 Aug 2006 14:56:48 +0200
-
-rt2500 (1.1.0+cvs20060620-2) unstable; urgency=low
-
- * Fixed a typo in the description.
-
- -- Aurelien Jarno <aurel32 at debian.org> Tue, 1 Aug 2006 16:28:49 +0200
-
-rt2500 (1.1.0+cvs20060620-1) unstable; urgency=low
-
- * New CVS snapshot (closes: bug#376319).
- * Bumped Standard-Versions to 3.7.2 (no changes).
-
- -- Aurelien Jarno <aurel32 at debian.org> Tue, 11 Jul 2006 09:39:27 +0200
-
-rt2500 (1.1.0+cvs20060420-3) unstable; urgency=low
-
- * Fixed a bug preventing the interface to be detected if its number is
- greater than 0.
-
- -- Aurelien Jarno <aurel32 at debian.org> Thu, 27 Apr 2006 21:53:57 +0200
-
-rt2500 (1.1.0+cvs20060420-2) unstable; urgency=low
-
- * Rename rt2500-_KVERS_ into rt2500-modules-_KVERS_.
-
- -- Aurelien Jarno <aurel32 at debian.org> Sat, 22 Apr 2006 18:56:26 +0200
-
-rt2500 (1.1.0+cvs20060420-1) unstable; urgency=low
-
- * New CVS version that should work on SMP machines (closes: bug#363640).
- * Added Ben Hutchings <ben at decadentplace.org.uk> to the Uploaders: field.
-
- -- Aurelien Jarno <aurel32 at debian.org> Thu, 20 Apr 2006 12:26:35 +0200
-
-rt2500 (1.1.0+cvs20060417-2) unstable; urgency=low
-
- * Fix a typo in README.Debian (closes: bug#363563).
-
- -- Aurelien Jarno <aurel32 at debian.org> Thu, 20 Apr 2006 03:28:32 +0200
-
-rt2500 (1.1.0+cvs20060417-1) unstable; urgency=low
-
- * New CVS version.
- * Put a link to /usr/share/doc/rt2500-source/README.Debian into the
- root of rt2500.tar.gz, as users are unable to look in /usr/share/doc/
- by themselves (closes: bug#350500).
- * Add a menu item for RaConfig2500 (closes: bug#360779).
- * Fixed a typo in RaConfig2500. Thanks to Peter Crosbie Stevenson
- <stevepe at earlham.edu> (closes: bug#355073).
- * Fixed some text fields that where cutted-off in RaConfig2500. Thanks to
- Peter Stevenson (closes: bug#354795).
-
- -- Aurelien Jarno <aurel32 at debian.org> Mon, 30 Jan 2006 01:12:03 +0100
-
-rt2500 (1.1.0+cvs20051217-1) unstable; urgency=low
-
- * New CVS version:
- - Add support for injection of raw packets (closes: bug#339673).
- * Only suggests gcc-3.3 and fails if it is not installed when building
- the module against a 2.4 kernel (closes: bug#341655).
-
- -- Aurelien Jarno <aurel32 at debian.org> Sat, 17 Dec 2005 23:38:32 +0100
-
-rt2500 (1.1.0+cvs20050819-4) unstable; urgency=low
-
- * Move to unstable.
-
- -- Aurelien Jarno <aurel32 at debian.org> Tue, 1 Nov 2005 15:32:06 +0100
-
-rt2500 (1.1.0+cvs20050819-3) experimental; urgency=low
-
- * Upload to experimental as unstable is semi-frozen.
- * Refuse to build the module on SMP kernel.
- * Only recommends linux-image-2.6.xx.
- * Clarified the description of rt2500.
-
- -- Aurelien Jarno <aurel32 at debian.org> Mon, 31 Oct 2005 19:59:19 +0100
-
-rt2500 (1.1.0+cvs20050819-2) unstable; urgency=low
-
- * It's seems RT2500STA.dat is only used by the configuration tool.
- Move this file in this package, and delete the rt2500-base package
- (closes: bug#325897).
- * Changed the name of the interface directly in the sources to be
- able to get rid of rt2500-base.
- * Added a README.Debian in the module package to explain how to
- change the name of the interface.
-
- -- Aurelien Jarno <aurel32 at debian.org> Wed, 31 Aug 2005 23:03:27 +0200
-
-rt2500 (1.1.0+cvs20050819-1) unstable; urgency=low
-
- * New CVS version.
- * This version now builds on powerpc (closes: #321822), but I have no
- way to verify it works on this architecture.
-
- -- Aurelien Jarno <aurel32 at debian.org> Wed, 31 Aug 2005 22:41:47 +0200
-
-rt2500 (1.1.0+cvs20050710-4) unstable; urgency=low
-
- * C++ transition: build-depends on libqt3-mt-dev (>= 3.3.4-4)
- (closes: bug#320234).
-
- -- Aurelien Jarno <aurel32 at debian.org> Fri, 12 Aug 2005 00:04:06 +0200
-
-rt2500 (1.1.0+cvs20050710-3) unstable; urgency=low
-
- * Oops fixed a typo in debian/control.modules.in.
-
- -- Aurelien Jarno <aurel32 at debian.org> Mon, 1 Aug 2005 01:57:18 +0200
-
-rt2500 (1.1.0+cvs20050710-2) unstable; urgency=low
-
- * Make the modules also depending on the kernel images which are using
- the new kernel naming scheme (closes: bug#320361).
- * Only build modules with gcc-3.3 on a 2.4 kernel.
-
- -- Aurelien Jarno <aurel32 at debian.org> Mon, 1 Aug 2005 01:38:07 +0200
-
-rt2500 (1.1.0+cvs20050710-1) unstable; urgency=low
-
- * Upload from Debconf 5.
- * New CVS version.
- * Build modules with gcc-3.3.
- * Bumped Standard-Versions to 3.6.2 (no changes).
-
- -- Aurelien Jarno <aurel32 at debian.org> Mon, 11 Jul 2005 10:44:57 +0300
-
-rt2500 (1.1.0+cvs20050530-2) unstable; urgency=low
-
- * Build-Depends on debhelper (closes: bug#311575).
-
- -- Aurelien Jarno <aurel32 at debian.org> Thu, 2 Jun 2005 08:22:33 +0200
-
-rt2500 (1.1.0+cvs20050530-1) unstable; urgency=low
-
- * New CVS version.
-
- -- Aurelien Jarno <aurel32 at debian.org> Tue, 31 May 2005 07:16:46 +0200
-
-rt2500 (1.1.0+cvs20050528-1) unstable; urgency=low
-
- * Initial Release (closes: bug#285756).
-
- -- Aurelien Jarno <aurel32 at debian.org> Sun, 29 May 2005 19:03:04 +0200
Copied: tags/rt2500-1.1.0-b4+cvs20070924-2/debian/changelog (from rev 84, unstable/rt2500/debian/changelog)
===================================================================
--- tags/rt2500-1.1.0-b4+cvs20070924-2/debian/changelog (rev 0)
+++ tags/rt2500-1.1.0-b4+cvs20070924-2/debian/changelog 2007-11-12 00:30:15 UTC (rev 86)
@@ -0,0 +1,228 @@
+rt2500 (1:1.1.0-b4+cvs20070924-2) unstable; urgency=low
+
+ * Added dependency of rt2500-source on bzip2 (closes: bug#448717)
+
+ -- Ben Hutchings <ben at decadent.org.uk> Sun, 11 Nov 2007 23:58:24 +0000
+
+rt2500 (1:1.1.0-b4+cvs20070924-1) unstable; urgency=low
+
+ * New CVS snapshot
+ - Removes RaConfig2500 utility and rt2500 binary package
+ * Added suggestion of rutilt package as a replacement for rt2500
+ * Fixed some race conditions in processing of queued work, with help
+ from Bryan Batten (004_fix_mlme_queue_locking.diff)
+ * Fixed sharing of error rate variables between interfaces
+ (005_fix_error_rate_vars.diff)
+
+ -- Ben Hutchings <ben at decadent.org.uk> Mon, 22 Oct 2007 01:58:22 +0100
+
+rt2500 (1:1.1.0-b4-4) unstable; urgency=low
+
+ * Workaround linux-libc-dev bug by including linux/if.h before
+ linux/wireless.h (closes: bug#429019).
+ * patches/2.6.22: fix the build of the module with 2.6.22+ kernels
+ (closes: bug#432358).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sun, 15 Jul 2007 21:30:43 +0200
+
+rt2500 (1:1.1.0-b4-3) unstable; urgency=low
+
+ * Fixed 2.6.19.patch (Closes: #399051)
+
+ -- Romain Beauxis <toots at rastageeks.org> Thu, 15 Mar 2007 14:26:43 +0100
+
+rt2500 (1:1.1.0-b4-2) unstable; urgency=low
+
+ * patches/2.6.19.diff: add a missing part preventing the module
+ to be built on 2.6.19+ kernels (closes: bug#413724).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Tue, 6 Mar 2007 20:55:40 +0100
+
+rt2500 (1:1.1.0-b4-1) unstable; urgency=low
+
+ * Switch back to 1.1.0-b4 + backported patches (closes: bug#411703,
+ bug#413158).
+ * Switch maintainer to "Debian Ralink packages maintainers".
+ * Move Ben Hutchings to uploaders, and add Romain Beauxis to uploaders.
+ * Use quilt for patch management.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Tue, 6 Mar 2007 00:53:59 +0100
+
+rt2500 (1.1.0+cvs20070219-1) unstable; urgency=low
+
+ * Switch Maintainer and Uploader.
+ * New CVS snaphost.
+ - Fix build on >= 2.6.20-rc5 kernels (closes: bug#406825).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Mon, 19 Feb 2007 01:50:17 +0100
+
+rt2500 (1.1.0+cvs20061231-2) unstable; urgency=low
+
+ * Use bzip2 instead of gzip to compress the sources.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Wed, 3 Jan 2007 20:58:09 +0100
+
+rt2500 (1.1.0+cvs20061231-1) unstable; urgency=low
+
+ * New CVS snaphost.
+ - Fix SSID handling with kernels >= 2.6.19.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sun, 31 Dec 2006 18:28:26 +0100
+
+rt2500 (1.1.0+cvs20061210-1) unstable; urgency=low
+
+ * New CVS snapshot.
+ - Fix build with kernels >= 2.6.19.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sun, 10 Dec 2006 15:30:22 +0100
+
+rt2500 (1.1.0+cvs20060620-3) unstable; urgency=low
+
+ * debian/rules: fix a bashism (closes: bug#385207).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Wed, 30 Aug 2006 14:56:48 +0200
+
+rt2500 (1.1.0+cvs20060620-2) unstable; urgency=low
+
+ * Fixed a typo in the description.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Tue, 1 Aug 2006 16:28:49 +0200
+
+rt2500 (1.1.0+cvs20060620-1) unstable; urgency=low
+
+ * New CVS snapshot (closes: bug#376319).
+ * Bumped Standard-Versions to 3.7.2 (no changes).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Tue, 11 Jul 2006 09:39:27 +0200
+
+rt2500 (1.1.0+cvs20060420-3) unstable; urgency=low
+
+ * Fixed a bug preventing the interface to be detected if its number is
+ greater than 0.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Thu, 27 Apr 2006 21:53:57 +0200
+
+rt2500 (1.1.0+cvs20060420-2) unstable; urgency=low
+
+ * Rename rt2500-_KVERS_ into rt2500-modules-_KVERS_.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sat, 22 Apr 2006 18:56:26 +0200
+
+rt2500 (1.1.0+cvs20060420-1) unstable; urgency=low
+
+ * New CVS version that should work on SMP machines (closes: bug#363640).
+ * Added Ben Hutchings <ben at decadentplace.org.uk> to the Uploaders: field.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Thu, 20 Apr 2006 12:26:35 +0200
+
+rt2500 (1.1.0+cvs20060417-2) unstable; urgency=low
+
+ * Fix a typo in README.Debian (closes: bug#363563).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Thu, 20 Apr 2006 03:28:32 +0200
+
+rt2500 (1.1.0+cvs20060417-1) unstable; urgency=low
+
+ * New CVS version.
+ * Put a link to /usr/share/doc/rt2500-source/README.Debian into the
+ root of rt2500.tar.gz, as users are unable to look in /usr/share/doc/
+ by themselves (closes: bug#350500).
+ * Add a menu item for RaConfig2500 (closes: bug#360779).
+ * Fixed a typo in RaConfig2500. Thanks to Peter Crosbie Stevenson
+ <stevepe at earlham.edu> (closes: bug#355073).
+ * Fixed some text fields that where cutted-off in RaConfig2500. Thanks to
+ Peter Stevenson (closes: bug#354795).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Mon, 30 Jan 2006 01:12:03 +0100
+
+rt2500 (1.1.0+cvs20051217-1) unstable; urgency=low
+
+ * New CVS version:
+ - Add support for injection of raw packets (closes: bug#339673).
+ * Only suggests gcc-3.3 and fails if it is not installed when building
+ the module against a 2.4 kernel (closes: bug#341655).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sat, 17 Dec 2005 23:38:32 +0100
+
+rt2500 (1.1.0+cvs20050819-4) unstable; urgency=low
+
+ * Move to unstable.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Tue, 1 Nov 2005 15:32:06 +0100
+
+rt2500 (1.1.0+cvs20050819-3) experimental; urgency=low
+
+ * Upload to experimental as unstable is semi-frozen.
+ * Refuse to build the module on SMP kernel.
+ * Only recommends linux-image-2.6.xx.
+ * Clarified the description of rt2500.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Mon, 31 Oct 2005 19:59:19 +0100
+
+rt2500 (1.1.0+cvs20050819-2) unstable; urgency=low
+
+ * It's seems RT2500STA.dat is only used by the configuration tool.
+ Move this file in this package, and delete the rt2500-base package
+ (closes: bug#325897).
+ * Changed the name of the interface directly in the sources to be
+ able to get rid of rt2500-base.
+ * Added a README.Debian in the module package to explain how to
+ change the name of the interface.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Wed, 31 Aug 2005 23:03:27 +0200
+
+rt2500 (1.1.0+cvs20050819-1) unstable; urgency=low
+
+ * New CVS version.
+ * This version now builds on powerpc (closes: #321822), but I have no
+ way to verify it works on this architecture.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Wed, 31 Aug 2005 22:41:47 +0200
+
+rt2500 (1.1.0+cvs20050710-4) unstable; urgency=low
+
+ * C++ transition: build-depends on libqt3-mt-dev (>= 3.3.4-4)
+ (closes: bug#320234).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Fri, 12 Aug 2005 00:04:06 +0200
+
+rt2500 (1.1.0+cvs20050710-3) unstable; urgency=low
+
+ * Oops fixed a typo in debian/control.modules.in.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Mon, 1 Aug 2005 01:57:18 +0200
+
+rt2500 (1.1.0+cvs20050710-2) unstable; urgency=low
+
+ * Make the modules also depending on the kernel images which are using
+ the new kernel naming scheme (closes: bug#320361).
+ * Only build modules with gcc-3.3 on a 2.4 kernel.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Mon, 1 Aug 2005 01:38:07 +0200
+
+rt2500 (1.1.0+cvs20050710-1) unstable; urgency=low
+
+ * Upload from Debconf 5.
+ * New CVS version.
+ * Build modules with gcc-3.3.
+ * Bumped Standard-Versions to 3.6.2 (no changes).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Mon, 11 Jul 2005 10:44:57 +0300
+
+rt2500 (1.1.0+cvs20050530-2) unstable; urgency=low
+
+ * Build-Depends on debhelper (closes: bug#311575).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Thu, 2 Jun 2005 08:22:33 +0200
+
+rt2500 (1.1.0+cvs20050530-1) unstable; urgency=low
+
+ * New CVS version.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Tue, 31 May 2005 07:16:46 +0200
+
+rt2500 (1.1.0+cvs20050528-1) unstable; urgency=low
+
+ * Initial Release (closes: bug#285756).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sun, 29 May 2005 19:03:04 +0200
Deleted: tags/rt2500-1.1.0-b4+cvs20070924-2/debian/control
===================================================================
--- unstable/rt2500/debian/control 2007-11-11 22:54:12 UTC (rev 79)
+++ tags/rt2500-1.1.0-b4+cvs20070924-2/debian/control 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,26 +0,0 @@
-Source: rt2500
-Section: net
-Priority: extra
-Build-Depends: debhelper (>= 4.0), bzip2, quilt
-Maintainer: Debian Ralink packages maintainers <pkg-ralink-maintainers at lists.alioth.debian.org>
-Uploaders: Aurelien Jarno <aurel32 at debian.org>, Ben Hutchings <ben at decadent.org.uk>, Romain Beauxis <toots at rastageeks.org>
-Standards-Version: 3.7.2
-Homepage: http://rt2x00.serialmonkey.com/
-Vcs-Svn: svn://svn.debian.org/svn/pkg-ralink/unstable/rt2500
-Vcs-Browser: http://svn.debian.org/wsvn/pkg-ralink/unstable/rt2500
-
-Package: rt2500-source
-Architecture: all
-Depends: debhelper (>= 4.0), module-assistant
-Suggests: gcc-3.3
-Description: source for rt2500 wireless network driver
- This package provides source code for the rt2500 driver for Linux.
- This driver supports PCI and CardBus wireless network cards with the
- Ralink RT2500 or RT5200 chipset. An alternate driver, rt2500pci, is
- available in the rt2x00-source package and in the Linux kernel from
- version 2.6.24.
- .
- In order to compile the driver you need the kernel sources (or
- the linux-headers for the linux-image packages from Debian). For
- compile instructions look into /usr/share/doc/rt2500-source/README.Debian
- or simply use the module-assistant utility.
Copied: tags/rt2500-1.1.0-b4+cvs20070924-2/debian/control (from rev 84, unstable/rt2500/debian/control)
===================================================================
--- tags/rt2500-1.1.0-b4+cvs20070924-2/debian/control (rev 0)
+++ tags/rt2500-1.1.0-b4+cvs20070924-2/debian/control 2007-11-12 00:30:15 UTC (rev 86)
@@ -0,0 +1,26 @@
+Source: rt2500
+Section: net
+Priority: extra
+Build-Depends: debhelper (>= 4.0), bzip2, quilt
+Maintainer: Debian Ralink packages maintainers <pkg-ralink-maintainers at lists.alioth.debian.org>
+Uploaders: Aurelien Jarno <aurel32 at debian.org>, Ben Hutchings <ben at decadent.org.uk>, Romain Beauxis <toots at rastageeks.org>
+Standards-Version: 3.7.2
+Homepage: http://rt2x00.serialmonkey.com/
+Vcs-Svn: svn://svn.debian.org/svn/pkg-ralink/unstable/rt2500
+Vcs-Browser: http://svn.debian.org/wsvn/pkg-ralink/unstable/rt2500
+
+Package: rt2500-source
+Architecture: all
+Depends: debhelper (>= 4.0), module-assistant, bzip2
+Suggests: gcc-3.3
+Description: source for rt2500 wireless network driver
+ This package provides source code for the rt2500 driver for Linux.
+ This driver supports PCI and CardBus wireless network cards with the
+ Ralink RT2500 or RT5200 chipset. An alternate driver, rt2500pci, is
+ available in the rt2x00-source package and in the Linux kernel from
+ version 2.6.24.
+ .
+ In order to compile the driver you need the kernel sources (or
+ the linux-headers for the linux-image packages from Debian). For
+ compile instructions look into /usr/share/doc/rt2500-source/README.Debian
+ or simply use the module-assistant utility.
Copied: tags/rt2570-1.1.0+cvs20070927-1 (from rev 79, unstable/rt2570)
Deleted: tags/rt2570-1.1.0+cvs20070927-1/debian/changelog
===================================================================
--- unstable/rt2570/debian/changelog 2007-11-11 22:54:12 UTC (rev 79)
+++ tags/rt2570-1.1.0+cvs20070927-1/debian/changelog 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,67 +0,0 @@
-rt2570 (1.1.0+cvs20070927-1) unstable; urgency=low
-
- * New CVS snapshot
- - Believed to be SMP-safe (closes: bug#423127)
- - Supports Linux 2.6.22 (closes: bug#432533)
-
- -- Ben Hutchings <ben at decadent.org.uk> Sat, 29 Sep 2007 21:13:30 +0100
-
-rt2570 (1.1.0+cvs20070219-2) unstable; urgency=low
-
- * Switch maintainer to "Debian Ralink packages maintainers".
- * Move Ben Hutchings to uploaders, and add Romain Beauxis to uploaders.
- * Use quilt for patch management.
-
- -- Aurelien Jarno <aurel32 at debian.org> Mon, 5 Mar 2007 17:17:22 +0100
-
-rt2570 (1.1.0+cvs20070219-1) unstable; urgency=low
-
- * Switch Maintainer and Uploader.
- * New CVS snaphost.
-
- -- Aurelien Jarno <aurel32 at debian.org> Tue, 20 Feb 2007 01:00:55 +0100
-
-rt2570 (1.1.0+cvs20061231-2) unstable; urgency=low
-
- * Use bzip2 instead of gzip to compress the sources.
-
- -- Aurelien Jarno <aurel32 at debian.org> Wed, 3 Jan 2007 21:03:54 +0100
-
-rt2570 (1.1.0+cvs20061231-1) unstable; urgency=low
-
- * New CVS version.
- - Fix SSID with kernels >= 2.6.19.
-
- -- Aurelien Jarno <aurel32 at debian.org> Sun, 31 Dec 2006 18:29:47 +0100
-
-rt2570 (1.1.0+cvs20061210-1) unstable; urgency=low
-
- * New upstream CVS.
- - Fix build with kernels >= 2.6.19.
-
- -- Aurelien Jarno <aurel32 at debian.org> Sun, 10 Dec 2006 16:06:06 +0100
-
-rt2570 (1.1.0+cvs20060620-3) unstable; urgency=low
-
- * debian/rules: fix a bashims (closes: bug#385206).
-
- -- Aurelien Jarno <aurel32 at debian.org> Wed, 30 Aug 2006 15:03:38 +0200
-
-rt2570 (1.1.0+cvs20060620-2) unstable; urgency=low
-
- * Fixed a typo in the description.
-
- -- Aurelien Jarno <aurel32 at debian.org> Tue, 1 Aug 2006 16:42:08 +0200
-
-rt2570 (1.1.0+cvs20060620-1) unstable; urgency=low
-
- * New upstream CVS.
- * Bumped Standards-Version to 3.7.2 (no changes).
-
- -- Aurelien Jarno <aurel32 at debian.org> Tue, 11 Jul 2006 11:29:20 +0200
-
-rt2570 (1.1.0+cvs20060421-1) unstable; urgency=low
-
- * Initial Release (closes: bug#339599).
-
- -- Aurelien Jarno <aurel32 at debian.org> Sun, 29 May 2005 19:03:04 +0200
Copied: tags/rt2570-1.1.0+cvs20070927-1/debian/changelog (from rev 84, unstable/rt2570/debian/changelog)
===================================================================
--- tags/rt2570-1.1.0+cvs20070927-1/debian/changelog (rev 0)
+++ tags/rt2570-1.1.0+cvs20070927-1/debian/changelog 2007-11-12 00:30:15 UTC (rev 86)
@@ -0,0 +1,74 @@
+rt2570 (1.1.0+cvs20070927-1) unstable; urgency=low
+
+ * New CVS snapshot
+ - Believed to be SMP-safe (closes: bug#423127)
+ - Supports Linux 2.6.22 (closes: bug#432533)
+ * Added suggestion of rutilt package
+ * Fixed some race conditions in processing of queued work, with help
+ from Bryan Batten (004_fix_mlme_queue_locking.diff)
+ * Fixed some miscalculated delays (005_fix_delays.diff)
+ * Changed probing code to reject devices which require the rt73 driver
+ (006_fix_probe_148f_2573.diff)
+ * Added dependency of rt2500-source on bzip2 (closes: bug#448719)
+
+ -- Ben Hutchings <ben at decadent.org.uk> Sun, 11 Nov 2007 23:55:23 +0000
+
+rt2570 (1.1.0+cvs20070219-2) unstable; urgency=low
+
+ * Switch maintainer to "Debian Ralink packages maintainers".
+ * Move Ben Hutchings to uploaders, and add Romain Beauxis to uploaders.
+ * Use quilt for patch management.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Mon, 5 Mar 2007 17:17:22 +0100
+
+rt2570 (1.1.0+cvs20070219-1) unstable; urgency=low
+
+ * Switch Maintainer and Uploader.
+ * New CVS snaphost.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Tue, 20 Feb 2007 01:00:55 +0100
+
+rt2570 (1.1.0+cvs20061231-2) unstable; urgency=low
+
+ * Use bzip2 instead of gzip to compress the sources.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Wed, 3 Jan 2007 21:03:54 +0100
+
+rt2570 (1.1.0+cvs20061231-1) unstable; urgency=low
+
+ * New CVS version.
+ - Fix SSID with kernels >= 2.6.19.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sun, 31 Dec 2006 18:29:47 +0100
+
+rt2570 (1.1.0+cvs20061210-1) unstable; urgency=low
+
+ * New upstream CVS.
+ - Fix build with kernels >= 2.6.19.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sun, 10 Dec 2006 16:06:06 +0100
+
+rt2570 (1.1.0+cvs20060620-3) unstable; urgency=low
+
+ * debian/rules: fix a bashims (closes: bug#385206).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Wed, 30 Aug 2006 15:03:38 +0200
+
+rt2570 (1.1.0+cvs20060620-2) unstable; urgency=low
+
+ * Fixed a typo in the description.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Tue, 1 Aug 2006 16:42:08 +0200
+
+rt2570 (1.1.0+cvs20060620-1) unstable; urgency=low
+
+ * New upstream CVS.
+ * Bumped Standards-Version to 3.7.2 (no changes).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Tue, 11 Jul 2006 11:29:20 +0200
+
+rt2570 (1.1.0+cvs20060421-1) unstable; urgency=low
+
+ * Initial Release (closes: bug#339599).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sun, 29 May 2005 19:03:04 +0200
Deleted: tags/rt2570-1.1.0+cvs20070927-1/debian/control
===================================================================
--- unstable/rt2570/debian/control 2007-11-11 22:54:12 UTC (rev 79)
+++ tags/rt2570-1.1.0+cvs20070927-1/debian/control 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,26 +0,0 @@
-Source: rt2570
-Section: net
-Priority: extra
-Build-Depends: debhelper (>= 4.0), bzip2, quilt
-Maintainer: Debian Ralink packages maintainers <pkg-ralink-maintainers at lists.alioth.debian.org>
-Uploaders: Aurelien Jarno <aurel32 at debian.org>, Ben Hutchings <ben at decadent.org.uk>, Romain Beauxis <toots at rastageeks.org>
-Standards-Version: 3.7.2
-Homepage: http://rt2x00.serialmonkey.com/
-Vcs-Svn: svn://svn.debian.org/svn/pkg-ralink/unstable/rt2570
-Vcs-Browser: http://svn.debian.org/wsvn/pkg-ralink/unstable/rt2570
-
-Package: rt2570-source
-Architecture: all
-Depends: debhelper (>= 4.0), module-assistant
-Suggests: gcc-3.3
-Description: source for rt2570 wireless network driver
- This package provides source code for the rt2570 driver for Linux.
- This driver supports USB wireless network cards with the Ralink
- RT2500USB chipset. An alternate driver, rt2500usb, is available in
- the rt2x00-source package and in the Linux kernel from version
- 2.6.24.
- .
- In order to compile the driver you need the kernel sources (or
- the linux-headers for the linux-image packages from Debian). For
- compile instructions look into /usr/share/doc/rt2570-source/README.Debian
- or simply use the module-assistant utility.
Copied: tags/rt2570-1.1.0+cvs20070927-1/debian/control (from rev 84, unstable/rt2570/debian/control)
===================================================================
--- tags/rt2570-1.1.0+cvs20070927-1/debian/control (rev 0)
+++ tags/rt2570-1.1.0+cvs20070927-1/debian/control 2007-11-12 00:30:15 UTC (rev 86)
@@ -0,0 +1,26 @@
+Source: rt2570
+Section: net
+Priority: extra
+Build-Depends: debhelper (>= 4.0), bzip2, quilt
+Maintainer: Debian Ralink packages maintainers <pkg-ralink-maintainers at lists.alioth.debian.org>
+Uploaders: Aurelien Jarno <aurel32 at debian.org>, Ben Hutchings <ben at decadent.org.uk>, Romain Beauxis <toots at rastageeks.org>
+Standards-Version: 3.7.2
+Homepage: http://rt2x00.serialmonkey.com/
+Vcs-Svn: svn://svn.debian.org/svn/pkg-ralink/unstable/rt2570
+Vcs-Browser: http://svn.debian.org/wsvn/pkg-ralink/unstable/rt2570
+
+Package: rt2570-source
+Architecture: all
+Depends: debhelper (>= 4.0), module-assistant, bzip2
+Suggests: gcc-3.3
+Description: source for rt2570 wireless network driver
+ This package provides source code for the rt2570 driver for Linux.
+ This driver supports USB wireless network cards with the Ralink
+ RT2500USB chipset. An alternate driver, rt2500usb, is available in
+ the rt2x00-source package and in the Linux kernel from version
+ 2.6.24.
+ .
+ In order to compile the driver you need the kernel sources (or
+ the linux-headers for the linux-image packages from Debian). For
+ compile instructions look into /usr/share/doc/rt2570-source/README.Debian
+ or simply use the module-assistant utility.
Copied: tags/rt2570-1.1.0+cvs20070927-1/debian/patches/004_fix_mlme_queue_locking.diff (from rev 83, unstable/rt2570/debian/patches/004_fix_mlme_queue_locking.diff)
===================================================================
--- tags/rt2570-1.1.0+cvs20070927-1/debian/patches/004_fix_mlme_queue_locking.diff (rev 0)
+++ tags/rt2570-1.1.0+cvs20070927-1/debian/patches/004_fix_mlme_queue_locking.diff 2007-11-12 00:30:15 UTC (rev 86)
@@ -0,0 +1,250 @@
+--- rt2570.orig/Module/mlme.c
++++ rt2570/Module/mlme.c
+@@ -242,7 +242,6 @@
+ }
+
+ pAd->Mlme.Running = FALSE;
+- NdisAllocateSpinLock(&pAd->Mlme.TaskLock);
+
+ // initialize the two tables
+ // MacTableInit(pAd);
+@@ -350,19 +349,18 @@
+
+ // Only accept MLME and Frame from peer side, no other
+ // (control/data) frame should get into this state machine
+- NdisAcquireSpinLock(&pAd->Mlme.TaskLock);
++ NdisAcquireSpinLock(&pAd->Mlme.Queue.Lock);
+ if(pAd->Mlme.Running)
+ {
+- NdisReleaseSpinLock(&pAd->Mlme.TaskLock);
++ NdisReleaseSpinLock(&pAd->Mlme.Queue.Lock);
+ return;
+ }
+- else
+- {
+- pAd->Mlme.Running = TRUE;
+- }
+- NdisReleaseSpinLock(&pAd->Mlme.TaskLock);
++ pAd->Mlme.Running = TRUE;
++
++ while (MlmeGetHead(&pAd->Mlme.Queue, &Elem)) {
++ smp_read_barrier_depends();
++ if (!Elem->Occupied) break;
+
+- while (TRUE) {
+ if (RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_MLME_RESET_IN_PROGRESS) ||
+ RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_HALT_IN_PROGRESS) ||
+ RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_REMOVE_IN_PROGRESS))
+@@ -371,18 +369,10 @@
+ break;
+ }
+
+- NdisAcquireSpinLock(&pAd->Mlme.Queue.Lock);
+- if (!MlmeDequeue(&pAd->Mlme.Queue, &Elem)) {
+- NdisReleaseSpinLock(&pAd->Mlme.Queue.Lock);
+- break;
+- }
+- NdisReleaseSpinLock(&pAd->Mlme.Queue.Lock);
+-
+- if (pAd->PortCfg.BssType == BSS_MONITOR)
+- continue;
++ NdisReleaseSpinLock(&pAd->Mlme.Queue.Lock);
+
+ //From message type, determine which state machine I should drive
+- switch (Elem->Machine)
++ if (pAd->PortCfg.BssType != BSS_MONITOR) switch (Elem->Machine)
+ {
+ case ASSOC_STATE_MACHINE:
+ StateMachinePerformAction(pAd, &pAd->Mlme.AssocMachine, Elem);
+@@ -408,8 +398,10 @@
+ } // end of switch
+
+ // free MLME element
++ smp_mb();
+ Elem->Occupied = FALSE;
+- Elem->MsgLen = 0;
++ NdisAcquireSpinLock(&pAd->Mlme.Queue.Lock);
++ MlmeDequeue(&pAd->Mlme.Queue);
+ }
+
+ if (RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_MLME_RESET_IN_PROGRESS))
+@@ -441,9 +433,8 @@
+ RTMP_CLEAR_FLAG(pAd, fRTMP_ADAPTER_MLME_RESET_IN_PROGRESS);
+ }
+
+- NdisAcquireSpinLock(&pAd->Mlme.TaskLock);
+ pAd->Mlme.Running = FALSE;
+- NdisReleaseSpinLock(&pAd->Mlme.TaskLock);
++ NdisReleaseSpinLock(&pAd->Mlme.Queue.Lock);
+
+ }
+
+@@ -465,31 +456,26 @@
+ RTMPCancelTimer(&pAd->Mlme.SyncAux.BeaconTimer);
+ RTMPCancelTimer(&pAd->Mlme.SyncAux.ScanTimer);
+
+- NdisAcquireSpinLock(&pAd->Mlme.TaskLock);
++ NdisAcquireSpinLock(&pAd->Mlme.Queue.Lock);
+ if(pAd->Mlme.Running)
+ {
+- NdisReleaseSpinLock(&pAd->Mlme.TaskLock);
++ NdisReleaseSpinLock(&pAd->Mlme.Queue.Lock);
+ return;
+ }
+ else
+ {
+ pAd->Mlme.Running = TRUE;
+ }
+- NdisReleaseSpinLock(&pAd->Mlme.TaskLock);
+
+ // Remove all Mlme queues elements
+- NdisAcquireSpinLock(&pAd->Mlme.Queue.Lock);
+- while (MlmeDequeue(&pAd->Mlme.Queue, &Elem)) {
+- // free MLME element
+- Elem->Occupied = FALSE;
+- Elem->MsgLen = 0;
++ while (MlmeGetHead(&pAd->Mlme.Queue, &Elem)) {
++ MlmeDequeue(&pAd->Mlme.Queue);
++ Elem->Occupied = FALSE;
+ }
+- NdisReleaseSpinLock(&pAd->Mlme.Queue.Lock);
+
+ // Remove running state
+- NdisAcquireSpinLock(&pAd->Mlme.TaskLock);
+ pAd->Mlme.Running = FALSE;
+- NdisReleaseSpinLock(&pAd->Mlme.TaskLock);
++ NdisReleaseSpinLock(&pAd->Mlme.Queue.Lock);
+
+ RTUSBCleanUpMLMEWaitQueue(pAd);
+ RTUSBCleanUpMLMEBulkOutQueue(pAd);
+@@ -2793,11 +2779,12 @@
+ NdisReleaseSpinLock(&Queue->Lock);
+ DBGPRINT(RT_DEBUG_INFO,"MlmeEnqueue, num=%d\n",Queue->Num);
+
+- Queue->Entry[Tail].Occupied = TRUE;
+ Queue->Entry[Tail].Machine = Machine;
+ Queue->Entry[Tail].MsgType = MsgType;
+ Queue->Entry[Tail].MsgLen = MsgLen;
+ memcpy(Queue->Entry[Tail].Msg, Msg, MsgLen);
++ smp_wmb();
++ Queue->Entry[Tail].Occupied = TRUE;
+ }
+ return TRUE;
+ }
+@@ -2870,19 +2857,20 @@
+ DBGPRINT(RT_DEBUG_INFO, "MlmeEnqueueForRecv, num=%d\n",Queue->Num);
+
+ // OK, we got all the informations, it is time to put things into queue
+- Queue->Entry[Tail].Occupied = TRUE;
+ Queue->Entry[Tail].Machine = Machine;
+ Queue->Entry[Tail].MsgType = MsgType;
+ Queue->Entry[Tail].MsgLen = MsgLen;
+
+ Queue->Entry[Tail].Rssi = Rssi;
+ memcpy(Queue->Entry[Tail].Msg, Msg, MsgLen);
++ smp_wmb();
++ Queue->Entry[Tail].Occupied = TRUE;
+
+ RTUSBMlmeUp(pAd, (&(pAd->mlme_semaphore)));
+
+ return TRUE;
+ }
+-/*! \brief Dequeue a message from the MLME Queue
++/*! \brief Get the first message from the MLME Queue
+ * WARNING: Must be call with Mlme.Queue.Lock held
+ * \param *Queue The MLME Queue
+ * \param *Elem The message dequeued from MLME Queue
+@@ -2893,15 +2881,36 @@
+ IRQL = DISPATCH_LEVEL
+
+ */
+-BOOLEAN MlmeDequeue(
++BOOLEAN MlmeGetHead(
+ IN MLME_QUEUE *Queue,
+ OUT MLME_QUEUE_ELEM **Elem)
+ {
+ if (Queue->Num == 0)
+ return FALSE; //Empty
+
+- *Elem = &Queue->Entry[Queue->Head++];
+- Queue->Head %= MAX_LEN_OF_MLME_QUEUE;
++ *Elem = &Queue->Entry[Queue->Head];
++ DBGPRINT(RT_DEBUG_INFO, "MlmeDequeue, num=%d\n",Queue->Num);
++
++ return TRUE;
++}
++
++/*! \brief Remove the first message from the MLME Queue
++ * WARNING: Must be call with Mlme.Queue.Lock held
++ * \param *Queue The MLME Queue
++ * \return TRUE if a message was remove, FALSE if the queue was empty
++ * \pre
++ * \post
++
++ IRQL = DISPATCH_LEVEL
++
++ */
++BOOLEAN MlmeDequeue(
++ IN MLME_QUEUE *Queue)
++{
++ if (Queue->Num == 0)
++ return FALSE; //Empty
++
++ Queue->Head = (Queue->Head + 1) % MAX_LEN_OF_MLME_QUEUE;
+ Queue->Num--;
+ DBGPRINT(RT_DEBUG_INFO, "MlmeDequeue, num=%d\n",Queue->Num);
+
+@@ -2918,15 +2927,14 @@
+
+ RTMP_SET_FLAG(pAd, fRTMP_ADAPTER_MLME_RESET_IN_PROGRESS);
+
+- NdisAcquireSpinLock(&pAd->Mlme.TaskLock);
++ NdisAcquireSpinLock(&pAd->Mlme.Queue.Lock);
+ if(pAd->Mlme.Running)
+ {
+ DBGPRINT(RT_DEBUG_TRACE, "<== MlmeRestartStateMachine, Mlme is Runing[Queue=%d]!\n", pAd->Mlme.Queue.Num);
+- NdisReleaseSpinLock(&pAd->Mlme.TaskLock);
++ NdisReleaseSpinLock(&pAd->Mlme.Queue.Lock);
+ return;
+ }
+ pAd->Mlme.Running = TRUE;
+- NdisReleaseSpinLock(&pAd->Mlme.TaskLock);
+
+ MlmeQueueDestroy(&pAd->Mlme.Queue);
+
+@@ -2956,9 +2964,8 @@
+ RTMP_CLEAR_FLAG(pAd, fRTMP_ADAPTER_MLME_RESET_IN_PROGRESS);
+
+ // Remove running state
+- NdisAcquireSpinLock(&pAd->Mlme.TaskLock);
+ pAd->Mlme.Running = FALSE;
+- NdisReleaseSpinLock(&pAd->Mlme.TaskLock);
++ NdisReleaseSpinLock(&pAd->Mlme.Queue.Lock);
+
+ DBGPRINT(RT_DEBUG_TRACE, "<== MlmeRestartStateMachine\n");
+ }
+--- rt2570.orig/Module/rt2570sw.h
++++ rt2570/Module/rt2570sw.h
+@@ -1077,7 +1077,6 @@
+ ULONG ChannelQuality; // 0..100, Channel Quality Indication for Roaming
+
+ BOOLEAN Running;
+- spinlock_t TaskLock;
+ MLME_QUEUE Queue;
+
+ UINT ShiftReg;
+@@ -2341,10 +2340,13 @@
+ IN ULONG MsgLen,
+ IN PVOID Msg);
+
+-BOOLEAN MlmeDequeue(
++BOOLEAN MlmeGetHead(
+ IN MLME_QUEUE *Queue,
+ OUT MLME_QUEUE_ELEM **Elem);
+
++BOOLEAN MlmeDequeue(
++ IN MLME_QUEUE *Queue);
++
+ #if 1
+ VOID MlmeRestartStateMachine(
+ IN PRT2570ADAPTER pAd);
Copied: tags/rt2570-1.1.0+cvs20070927-1/debian/patches/005_fix_delays.diff (from rev 83, unstable/rt2570/debian/patches/005_fix_delays.diff)
===================================================================
--- tags/rt2570-1.1.0+cvs20070927-1/debian/patches/005_fix_delays.diff (rev 0)
+++ tags/rt2570-1.1.0+cvs20070927-1/debian/patches/005_fix_delays.diff 2007-11-12 00:30:15 UTC (rev 86)
@@ -0,0 +1,42 @@
+--- rt2570.orig/Module/rt2570sw.h
++++ rt2570/Module/rt2570sw.h
+@@ -384,7 +384,7 @@
+ #define CMD_SingleRead 0x0C
+ #define CMD_SingleWrite 0x0D
+
+-#define NdisMSleep mdelay
++#define NdisMSleep msleep
+
+
+ // Assert MACRO to make sure program running
+--- rt2570.orig/Module/rtusb_main.c
++++ rt2570/Module/rtusb_main.c
+@@ -847,7 +847,7 @@
+ }
+ }
+
+- NdisMSleep(500000);
++ NdisMSleep(500);
+ }
+
+ NICResetFromError(pAdapter);
+--- rt2570.orig/Module/rtusb_bulk.c
++++ rt2570/Module/rtusb_bulk.c
+@@ -1386,7 +1386,7 @@
+ usb_kill_urb(pMLMEContext->pUrb);
+
+ // Sleep 200 microsecs to give cancellation time to work
+- NdisMSleep(200);
++ udelay(200);
+ }
+ }
+
+@@ -1405,7 +1405,7 @@
+ usb_kill_urb(pBeaconContext->pUrb);
+
+ // Sleep 200 microsecs to give cancellation time to work
+- NdisMSleep(200);
++ udelay(200);
+ }
+ }
+
Copied: tags/rt2570-1.1.0+cvs20070927-1/debian/patches/006_fix_probe_148f_2573.diff (from rev 83, unstable/rt2570/debian/patches/006_fix_probe_148f_2573.diff)
===================================================================
--- tags/rt2570-1.1.0+cvs20070927-1/debian/patches/006_fix_probe_148f_2573.diff (rev 0)
+++ tags/rt2570-1.1.0+cvs20070927-1/debian/patches/006_fix_probe_148f_2573.diff 2007-11-12 00:30:15 UTC (rev 86)
@@ -0,0 +1,39 @@
+--- rt2570.orig/Module/rtusb_main.c
++++ rt2570/Module/rtusb_main.c
+@@ -1853,6 +1853,7 @@
+ {
+ struct usb_device *dev = interface_to_usbdev(intf);
+ PRT2570ADAPTER pAdapter = (PRT2570ADAPTER)NULL;
++ USHORT version = 0;
+ int i;
+ struct net_device *netdev;
+ int res = -ENOMEM;
+@@ -1881,16 +1883,25 @@
+ {
+ //if (!(pAdapter->net = init_etherdev(0, 0) )) {
+ printk("alloc_etherdev failed\n");
+-
+- module_put(THIS_MODULE);
++ usb_put_dev(dev);
+ return res;
+ }
+
+ pAdapter = netdev->priv;
++ pAdapter->usb = dev;
++
++ RTUSBReadMACRegister(pAdapter, MAC_CSR0, &version);
++ if (version == 0 || (le16_to_cpu(version) & 0xfff0) != 0)
++ {
++ printk("ASIC version not matching\n");
++ kfree(netdev);
++ usb_put_dev(dev);
++ return -ENODEV;
++ }
++
+ pAdapter->net = netdev;
+ netif_stop_queue(netdev);
+ pAdapter->config = &dev->config->desc;
+- pAdapter->usb = dev;
+ SET_MODULE_OWNER(pAdapter->net);
+ ether_setup(pAdapter->net);
+ netdev->open = usb_rtusb_open;
Deleted: tags/rt2570-1.1.0+cvs20070927-1/debian/patches/series
===================================================================
--- unstable/rt2570/debian/patches/series 2007-11-11 22:54:12 UTC (rev 79)
+++ tags/rt2570-1.1.0+cvs20070927-1/debian/patches/series 2007-11-12 00:30:15 UTC (rev 86)
@@ -1 +0,0 @@
-000_if_name.diff -p0
Copied: tags/rt2570-1.1.0+cvs20070927-1/debian/patches/series (from rev 83, unstable/rt2570/debian/patches/series)
===================================================================
--- tags/rt2570-1.1.0+cvs20070927-1/debian/patches/series (rev 0)
+++ tags/rt2570-1.1.0+cvs20070927-1/debian/patches/series 2007-11-12 00:30:15 UTC (rev 86)
@@ -0,0 +1,4 @@
+000_if_name.diff -p0
+004_fix_mlme_queue_locking.diff
+005_fix_delays.diff
+006_fix_probe_148f_2573.diff
Copied: tags/rt2x00-2.0.12+git20071103 (from rev 79, unstable/rt2x00)
Deleted: tags/rt2x00-2.0.12+git20071103/debian/changelog
===================================================================
--- unstable/rt2x00/debian/changelog 2007-11-11 22:54:12 UTC (rev 79)
+++ tags/rt2x00-2.0.12+git20071103/debian/changelog 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,122 +0,0 @@
-rt2x00 (2.0.9-2) unstable; urgency=low
-
- * Fixed probing for USB devices with ambiguous id
- * Added suggestion of rutilt
-
- -- Ben Hutchings <ben at decadent.org.uk> Wed, 31 Oct 2007 23:43:08 +0000
-
-rt2x00 (2.0.9-1) unstable; urgency=low
-
- * New version from git
-
- -- Ben Hutchings <ben at decadent.org.uk> Sun, 7 Oct 2007 01:01:44 +0100
-
-rt2x00 (2.0.8+git20070918-2) unstable; urgency=low
-
- * Fixed unversioned import of symbols from eeprom_93cx6 in PCI drivers
- which would taint the kernel
- * Added hardware flags needed in mainline kernels (closes: bug#444771)
-
- -- Ben Hutchings <ben at decadent.org.uk> Sat, 6 Oct 2007 16:19:28 +0100
-
-rt2x00 (2.0.8+git20070918-1) unstable; urgency=low
-
- * New version from git (closes: bug#421747, bug#422685)
-
- -- Ben Hutchings <ben at decadent.org.uk> Sun, 23 Sep 2007 22:00:31 +0100
-
-rt2x00 (0cvs20070219-2) unstable; urgency=low
-
- * Switch maintainer to "Debian Ralink packages maintainers".
- * Move Ben Hutchings to uploaders, and add Romain Beauxis to uploaders.
- * Use quilt for patch management.
-
- -- Aurelien Jarno <aurel32 at debian.org> Tue, 6 Mar 2007 00:23:48 +0100
-
-rt2x00 (0cvs20070219-1) unstable; urgency=low
-
- * New CVS version
- - Fix kernel panic while loading the module (closes: bug#409821).
-
- -- Aurelien Jarno <aurel32 at debian.org> Mon, 19 Feb 2007 01:43:08 +0100
-
-rt2x00 (0cvs20070121-1) unstable; urgency=low
-
- * Switch Maintainer and Uploader.
- * New CVS version
- - Fix build on >= 2.6.20-rc5 kernels (closes: bug#406827).
-
- -- Aurelien Jarno <aurel32 at debian.org> Sun, 21 Jan 2007 23:40:26 +0100
-
-rt2x00 (0cvs20070104.1-1) unstable; urgency=low
-
- * New CVS version.
-
- -- Aurelien Jarno <aurel32 at debian.org> Thu, 4 Jan 2007 19:19:27 +0100
-
-rt2x00 (0cvs20070104-1) unstable; urgency=low
-
- * New CVS version.
- * Disable CONFIG_RT2X00_DEBUGFS.
-
- -- Aurelien Jarno <aurel32 at debian.org> Thu, 4 Jan 2007 11:51:54 +0100
-
-rt2x00 (0cvs20070103-1) unstable; urgency=low
-
- * New CVS version.
- * Use bzip2 instead of gzip to compress the sources.
-
- -- Aurelien Jarno <aurel32 at debian.org> Wed, 3 Jan 2007 21:13:59 +0100
-
-rt2x00 (0cvs20061231-1) unstable; urgency=low
-
- * New CVS version.
-
- -- Aurelien Jarno <aurel32 at debian.org> Sun, 31 Dec 2006 18:40:54 +0100
-
-rt2x00 (0cvs20061202-1) unstable; urgency=low
-
- * New CVS version:
- - rt2500 PCI should be able to associate in WPA2-PSK-CCMP mode (closes:
- bug#397727).
-
- -- Aurelien Jarno <aurel32 at debian.org> Sun, 3 Dec 2006 02:06:51 +0100
-
-rt2x00 (0cvs20060928-1) unstable; urgency=low
-
- * New CVS version.
-
- -- Aurelien Jarno <aurel32 at debian.org> Thu, 28 Sep 2006 12:04:00 +0200
-
-rt2x00 (0cvs20060801-4) unstable; urgency=low
-
- * Added a note that you need a 2.6.17 or later kernel (closes:
- bug#383519).
-
- -- Aurelien Jarno <aurel32 at debian.org> Sun, 20 Aug 2006 13:39:16 +0200
-
-rt2x00 (0cvs20060801-3) unstable; urgency=low
-
- * Include the new crc-itu-c in the built package (closes: bug#381519).
-
- -- Aurelien Jarno <aurel32 at debian.org> Sat, 5 Aug 2006 22:04:37 +0200
-
-rt2x00 (0cvs20060801-2) unstable; urgency=low
-
- * Pass the location of the kernel sources for the clean rule
- (closes: bug#379753).
-
- -- Aurelien Jarno <aurel32 at debian.org> Thu, 3 Aug 2006 17:40:27 +0200
-
-rt2x00 (0cvs20060801-1) unstable; urgency=low
-
- * New CVS version.
- * Enhanced description (closes: bug#379762).
-
- -- Aurelien Jarno <aurel32 at debian.org> Tue, 1 Aug 2006 16:36:24 +0200
-
-rt2x00 (0cvs20060721-1) unstable; urgency=low
-
- * Initial Release (closes: bug#362040).
-
- -- Aurelien Jarno <aurel32 at debian.org> Fri, 21 Jul 2006 17:27:45 +0200
Copied: tags/rt2x00-2.0.12+git20071103/debian/changelog (from rev 85, unstable/rt2x00/debian/changelog)
===================================================================
--- tags/rt2x00-2.0.12+git20071103/debian/changelog (rev 0)
+++ tags/rt2x00-2.0.12+git20071103/debian/changelog 2007-11-12 00:30:15 UTC (rev 86)
@@ -0,0 +1,129 @@
+rt2x00 (2.0.12+git20071103-1) unstable; urgency=low
+
+ * New version from git
+ * Added suggestion of firmware packages needed for some drivers
+
+ -- Ben Hutchings <ben at decadent.org.uk> Sun, 04 Nov 2007 23:16:53 +0000
+
+rt2x00 (2.0.9-2) unstable; urgency=low
+
+ * Fixed probing for USB devices with ambiguous id
+ * Added suggestion of rutilt
+
+ -- Ben Hutchings <ben at decadent.org.uk> Wed, 31 Oct 2007 23:43:08 +0000
+
+rt2x00 (2.0.9-1) unstable; urgency=low
+
+ * New version from git
+
+ -- Ben Hutchings <ben at decadent.org.uk> Sun, 7 Oct 2007 01:01:44 +0100
+
+rt2x00 (2.0.8+git20070918-2) unstable; urgency=low
+
+ * Fixed unversioned import of symbols from eeprom_93cx6 in PCI drivers
+ which would taint the kernel
+ * Added hardware flags needed in mainline kernels (closes: bug#444771)
+
+ -- Ben Hutchings <ben at decadent.org.uk> Sat, 6 Oct 2007 16:19:28 +0100
+
+rt2x00 (2.0.8+git20070918-1) unstable; urgency=low
+
+ * New version from git (closes: bug#421747, bug#422685)
+
+ -- Ben Hutchings <ben at decadent.org.uk> Sun, 23 Sep 2007 22:00:31 +0100
+
+rt2x00 (0cvs20070219-2) unstable; urgency=low
+
+ * Switch maintainer to "Debian Ralink packages maintainers".
+ * Move Ben Hutchings to uploaders, and add Romain Beauxis to uploaders.
+ * Use quilt for patch management.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Tue, 6 Mar 2007 00:23:48 +0100
+
+rt2x00 (0cvs20070219-1) unstable; urgency=low
+
+ * New CVS version
+ - Fix kernel panic while loading the module (closes: bug#409821).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Mon, 19 Feb 2007 01:43:08 +0100
+
+rt2x00 (0cvs20070121-1) unstable; urgency=low
+
+ * Switch Maintainer and Uploader.
+ * New CVS version
+ - Fix build on >= 2.6.20-rc5 kernels (closes: bug#406827).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sun, 21 Jan 2007 23:40:26 +0100
+
+rt2x00 (0cvs20070104.1-1) unstable; urgency=low
+
+ * New CVS version.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Thu, 4 Jan 2007 19:19:27 +0100
+
+rt2x00 (0cvs20070104-1) unstable; urgency=low
+
+ * New CVS version.
+ * Disable CONFIG_RT2X00_DEBUGFS.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Thu, 4 Jan 2007 11:51:54 +0100
+
+rt2x00 (0cvs20070103-1) unstable; urgency=low
+
+ * New CVS version.
+ * Use bzip2 instead of gzip to compress the sources.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Wed, 3 Jan 2007 21:13:59 +0100
+
+rt2x00 (0cvs20061231-1) unstable; urgency=low
+
+ * New CVS version.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sun, 31 Dec 2006 18:40:54 +0100
+
+rt2x00 (0cvs20061202-1) unstable; urgency=low
+
+ * New CVS version:
+ - rt2500 PCI should be able to associate in WPA2-PSK-CCMP mode (closes:
+ bug#397727).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sun, 3 Dec 2006 02:06:51 +0100
+
+rt2x00 (0cvs20060928-1) unstable; urgency=low
+
+ * New CVS version.
+
+ -- Aurelien Jarno <aurel32 at debian.org> Thu, 28 Sep 2006 12:04:00 +0200
+
+rt2x00 (0cvs20060801-4) unstable; urgency=low
+
+ * Added a note that you need a 2.6.17 or later kernel (closes:
+ bug#383519).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sun, 20 Aug 2006 13:39:16 +0200
+
+rt2x00 (0cvs20060801-3) unstable; urgency=low
+
+ * Include the new crc-itu-c in the built package (closes: bug#381519).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Sat, 5 Aug 2006 22:04:37 +0200
+
+rt2x00 (0cvs20060801-2) unstable; urgency=low
+
+ * Pass the location of the kernel sources for the clean rule
+ (closes: bug#379753).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Thu, 3 Aug 2006 17:40:27 +0200
+
+rt2x00 (0cvs20060801-1) unstable; urgency=low
+
+ * New CVS version.
+ * Enhanced description (closes: bug#379762).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Tue, 1 Aug 2006 16:36:24 +0200
+
+rt2x00 (0cvs20060721-1) unstable; urgency=low
+
+ * Initial Release (closes: bug#362040).
+
+ -- Aurelien Jarno <aurel32 at debian.org> Fri, 21 Jul 2006 17:27:45 +0200
Deleted: tags/rt2x00-2.0.12+git20071103/debian/patches/002_out_of_tree.diff
===================================================================
--- unstable/rt2x00/debian/patches/002_out_of_tree.diff 2007-11-11 22:54:12 UTC (rev 79)
+++ tags/rt2x00-2.0.12+git20071103/debian/patches/002_out_of_tree.diff 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,100 +0,0 @@
---- rt2x00.orig/drivers/net/wireless/rt2x00/Makefile
-+++ rt2x00/drivers/net/wireless/rt2x00/Makefile
-@@ -1,3 +1,12 @@
-+# If KERNELRELEASE is defined, we've been invoked from the
-+# kernel build system and can use its language.
-+ifneq ($(KERNELRELEASE),)
-+
-+# Include rt2x00 config
-+include $(M)/config
-+
-+CPPFLAGS += -I$(M)/../../../../include
-+
- rt2x00lib-objs := rt2x00dev.o rt2x00mac.o rt2x00config.o
-
- ifeq ($(CONFIG_RT2X00_LIB_DEBUGFS),y)
-@@ -20,3 +29,29 @@
- obj-$(CONFIG_RT61PCI) += rt61pci.o
- obj-$(CONFIG_RT2500USB) += rt2500usb.o
- obj-$(CONFIG_RT73USB) += rt73usb.o
-+
-+# Otherwise we were called directly from the command
-+# line; invoke the kernel build system.
-+else
-+
-+KSRC ?= /lib/modules/$(shell uname -r)/build
-+PWD := $(shell pwd)
-+
-+default: config.h
-+ $(MAKE) -C $(KSRC) M=$(PWD) modules
-+
-+config.h: config
-+ awk -F = > config.h < config '/^CONFIG.*$\/ \
-+ { \
-+ if($$2 == "y") { \
-+ print "#define " $$1; \
-+ } else { \
-+ print "#undef " $$1; \
-+ } \
-+ }'
-+
-+clean:
-+ $(MAKE) -C $(KSRC) M=$(PWD) clean
-+ rm -f config.h
-+
-+endif
---- /dev/null
-+++ rt2x00/drivers/net/wireless/rt2x00/config
-@@ -0,0 +1,16 @@
-+CONFIG_RT2X00=m
-+CONFIG_RT2X00_LIB=m
-+CONFIG_RT2X00_LIB_PCI=m
-+CONFIG_RT2X00_LIB_USB=m
-+CONFIG_RT2X00_LIB_FIRMWARE=y
-+CONFIG_RT2X00_LIB_RFKILL=n
-+CONFIG_RT2400PCI=m
-+CONFIG_RT2400PCI_RFKILL=n
-+CONFIG_RT2500PCI=m
-+CONFIG_RT2500PCI_RFKILL=n
-+CONFIG_RT61PCI=m
-+CONFIG_RT61PCI_RFKILL=n
-+CONFIG_RT2500USB=m
-+CONFIG_RT73USB=m
-+CONFIG_RT2X00_LIB_DEBUGFS=y
-+CONFIG_RT2X00_DEBUG=y
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt2x00.h
-+++ rt2x00/drivers/net/wireless/rt2x00/rt2x00.h
-@@ -38,6 +38,8 @@
- #include "rt2x00reg.h"
- #include "rt2x00ring.h"
-
-+#include "config.h"
-+
- /*
- * Module information.
- * DRV_NAME should be set within the individual module source files.
---- /dev/null
-+++ rt2x00/drivers/misc/Makefile
-@@ -0,0 +1,22 @@
-+# If KERNELRELEASE is defined, we've been invoked from the
-+# kernel build system and can use its language.
-+ifneq ($(KERNELRELEASE),)
-+
-+CPPFLAGS += -I$(M)/../../include
-+
-+obj-m += eeprom_93cx6.o
-+
-+# Otherwise we were called directly from the command
-+# line; invoke the kernel build system.
-+else
-+
-+KSRC ?= /lib/modules/$(shell uname -r)/build
-+PWD := $(shell pwd)
-+
-+default:
-+ $(MAKE) -C $(KSRC) M=$(PWD) modules
-+
-+clean:
-+ $(MAKE) -C $(KSRC) M=$(PWD) clean
-+
-+endif
Copied: tags/rt2x00-2.0.12+git20071103/debian/patches/002_out_of_tree.diff (from rev 85, unstable/rt2x00/debian/patches/002_out_of_tree.diff)
===================================================================
--- tags/rt2x00-2.0.12+git20071103/debian/patches/002_out_of_tree.diff (rev 0)
+++ tags/rt2x00-2.0.12+git20071103/debian/patches/002_out_of_tree.diff 2007-11-12 00:30:15 UTC (rev 86)
@@ -0,0 +1,100 @@
+--- rt2x00.orig/drivers/net/wireless/rt2x00/Makefile
++++ rt2x00/drivers/net/wireless/rt2x00/Makefile
+@@ -1,3 +1,12 @@
++# If KERNELRELEASE is defined, we've been invoked from the
++# kernel build system and can use its language.
++ifneq ($(KERNELRELEASE),)
++
++# Include rt2x00 config
++include $(M)/config
++
++CPPFLAGS += -I$(M)/../../../../include
++
+ rt2x00lib-objs := rt2x00dev.o rt2x00mac.o rt2x00config.o
+
+ ifeq ($(CONFIG_RT2X00_LIB_DEBUGFS),y)
+@@ -20,3 +29,29 @@
+ obj-$(CONFIG_RT61PCI) += rt61pci.o
+ obj-$(CONFIG_RT2500USB) += rt2500usb.o
+ obj-$(CONFIG_RT73USB) += rt73usb.o
++
++# Otherwise we were called directly from the command
++# line; invoke the kernel build system.
++else
++
++KSRC ?= /lib/modules/$(shell uname -r)/build
++PWD := $(shell pwd)
++
++default: config.h
++ $(MAKE) -C $(KSRC) M=$(PWD) modules
++
++config.h: config
++ awk -F = > config.h < config '/^CONFIG.*$\/ \
++ { \
++ if($$2 == "y") { \
++ print "#define " $$1; \
++ } else { \
++ print "#undef " $$1; \
++ } \
++ }'
++
++clean:
++ $(MAKE) -C $(KSRC) M=$(PWD) clean
++ rm -f config.h
++
++endif
+--- /dev/null
++++ rt2x00/drivers/net/wireless/rt2x00/config
+@@ -0,0 +1,16 @@
++CONFIG_RT2X00=m
++CONFIG_RT2X00_LIB=m
++CONFIG_RT2X00_LIB_PCI=m
++CONFIG_RT2X00_LIB_USB=m
++CONFIG_RT2X00_LIB_FIRMWARE=y
++CONFIG_RT2X00_LIB_RFKILL=n
++CONFIG_RT2400PCI=m
++CONFIG_RT2400PCI_RFKILL=n
++CONFIG_RT2500PCI=m
++CONFIG_RT2500PCI_RFKILL=n
++CONFIG_RT61PCI=m
++CONFIG_RT61PCI_RFKILL=n
++CONFIG_RT2500USB=m
++CONFIG_RT73USB=m
++CONFIG_RT2X00_LIB_DEBUGFS=y
++CONFIG_RT2X00_DEBUG=y
+--- rt2x00.orig/drivers/net/wireless/rt2x00/rt2x00.h
++++ rt2x00/drivers/net/wireless/rt2x00/rt2x00.h
+@@ -39,6 +39,8 @@
+ #include "rt2x00reg.h"
+ #include "rt2x00ring.h"
+
++#include "config.h"
++
+ /*
+ * Module information.
+ * DRV_NAME should be set within the individual module source files.
+--- /dev/null
++++ rt2x00/drivers/misc/Makefile
+@@ -0,0 +1,22 @@
++# If KERNELRELEASE is defined, we've been invoked from the
++# kernel build system and can use its language.
++ifneq ($(KERNELRELEASE),)
++
++CPPFLAGS += -I$(M)/../../include
++
++obj-m += eeprom_93cx6.o
++
++# Otherwise we were called directly from the command
++# line; invoke the kernel build system.
++else
++
++KSRC ?= /lib/modules/$(shell uname -r)/build
++PWD := $(shell pwd)
++
++default:
++ $(MAKE) -C $(KSRC) M=$(PWD) modules
++
++clean:
++ $(MAKE) -C $(KSRC) M=$(PWD) clean
++
++endif
Deleted: tags/rt2x00-2.0.12+git20071103/debian/patches/003_workaround_mac80211_changes.diff
===================================================================
--- unstable/rt2x00/debian/patches/003_workaround_mac80211_changes.diff 2007-11-11 22:54:12 UTC (rev 79)
+++ tags/rt2x00-2.0.12+git20071103/debian/patches/003_workaround_mac80211_changes.diff 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,688 +0,0 @@
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt2x00.h
-+++ rt2x00/drivers/net/wireless/rt2x00/rt2x00.h
-@@ -31,6 +31,7 @@
- #include <linux/skbuff.h>
- #include <linux/workqueue.h>
- #include <linux/firmware.h>
-+#include <linux/version.h>
-
- #include <net/mac80211.h>
-
-@@ -40,6 +41,76 @@
-
- #include "config.h"
-
-+/* Version compatibility workarounds */
-+
-+#ifndef IEEE80211_TXCTL_LONG_RETRY_LIMIT
-+#define IEEE80211_TXCTL_LONG_RETRY_LIMIT 0
-+/* These were changed around the same time as
-+ * IEEE80211_TXCTL_LONG_RETRY_LIMIT was added in wireless-dev, but we
-+ * can't detect this change directly using the preprocessor
-+ */
-+#define ieee80211_rts_get(hw, if_id, frame, frame_len, frame_txctl, rts) \
-+ ieee80211_rts_get(hw, frame, frame_len, frame_txctl, rts)
-+#define ieee80211_ctstoself_get(hw, if_id, frame, frame_len, frame_txctl, cts) \
-+ ieee80211_ctstoself_get(hw, frame, frame_len, frame_txctl, cts)
-+#endif
-+
-+/* These negative capability flags have been removed in wireless-dev */
-+#ifndef IEEE80211_HW_HOST_GEN_BEACON
-+#define IEEE80211_HW_HOST_GEN_BEACON 0
-+#endif
-+#ifndef IEEE80211_HW_WEP_INCLUDE_IV
-+#define IEEE80211_HW_WEP_INCLUDE_IV 0
-+#endif
-+#ifndef IEEE80211_HW_DATA_NULLFUNC_ACK
-+#define IEEE80211_HW_DATA_NULLFUNC_ACK 0
-+#endif
-+#ifndef IEEE80211_HW_NO_TKIP_WMM_HWACCEL
-+#define IEEE80211_HW_NO_TKIP_WMM_HWACCEL 0
-+#endif
-+
-+/* The filter interface has been changed in wireless-dev */
-+#ifdef IEEE80211_HW_MONITOR_DURING_OPER
-+#define RT2X00_ADAPT_OLD_FILTER_API
-+enum ieee80211_filter_flags {
-+ FIF_PROMISC_IN_BSS = 1<<0,
-+ FIF_ALLMULTI = 1<<1,
-+ FIF_FCSFAIL = 1<<2,
-+ FIF_PLCPFAIL = 1<<3,
-+ FIF_BCN_PRBRESP_PROMISC = 1<<4,
-+ FIF_CONTROL = 1<<5,
-+ FIF_OTHER_BSS = 1<<6,
-+};
-+enum {
-+ RX_FLAG_FAILED_FCS_CRC = 0,
-+ RX_FLAG_FAILED_PLCP_CRC = 0,
-+};
-+struct dev_addr_list;
-+#else
-+#define IEEE80211_HW_MONITOR_DURING_OPER 0
-+#define IEEE80211_HW_NO_PROBE_FILTERING 0
-+#endif
-+
-+#ifndef DECLARE_MAC_BUF
-+#define DECLARE_MAC_BUF(var) char var[18] __maybe_unused
-+static inline
-+char *print_mac(char *buf, const u8 *addr)
-+{
-+ sprintf(buf, MAC_FMT,
-+ addr[0], addr[1], addr[2], addr[3], addr[4], addr[5]);
-+ return buf;
-+}
-+#endif
-+
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,23)
-+static inline
-+void cancel_delayed_work_sync(struct delayed_work *work)
-+{
-+ if (cancel_delayed_work(work))
-+ cancel_work_sync(&work->work);
-+}
-+#endif
-+
- /*
- * Module information.
- * DRV_NAME should be set within the individual module source files.
-@@ -315,6 +386,19 @@
- * Store the packet filter mode for the current interface.
- */
- unsigned int filter;
-+
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ /*
-+ * Monitor mode count, the number of interfaces
-+ * in monitor mode that that have been added.
-+ */
-+ unsigned short monitor_count;
-+
-+ /*
-+ * Interface filter passed to config_packet_filter.
-+ */
-+ unsigned int iff_filter;
-+#endif
- };
-
- /* Magic filter for configure_filter to apply existing filter */
-@@ -332,6 +416,13 @@
- return intf->type == type;
- }
-
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+static inline int is_monitor_present(struct interface *intf)
-+{
-+ return !!intf->monitor_count;
-+}
-+#endif
-+
- /*
- * Details about the supported modes, rates and channels
- * of a particular chipset. This is used by rt2x00lib
-@@ -417,8 +508,12 @@
- */
- void (*config_mac_addr) (struct rt2x00_dev *rt2x00dev, u8 *mac);
- void (*config_bssid) (struct rt2x00_dev *rt2x00dev, u8 *bssid);
-- void (*config_packet_filter) (struct rt2x00_dev *rt2x00dev,
-- const unsigned int filter);
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ void (*configure_filter) (struct ieee80211_hw *hw,
-+ unsigned int changed_flags,
-+ unsigned int *total_flags,
-+ int mc_count, struct dev_addr_list *mc_list);
-+#endif
- void (*config_type) (struct rt2x00_dev *rt2x00dev, const int type);
- void (*config) (struct rt2x00_dev *rt2x00dev, const unsigned int flags,
- struct ieee80211_conf *conf);
-@@ -768,7 +863,11 @@
- int rt2x00mac_tx(struct ieee80211_hw *hw, struct sk_buff *skb,
- struct ieee80211_tx_control *control);
- int rt2x00mac_start(struct ieee80211_hw *hw);
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+int rt2x00mac_stop(struct ieee80211_hw *hw);
-+#else
- void rt2x00mac_stop(struct ieee80211_hw *hw);
-+#endif
- int rt2x00mac_add_interface(struct ieee80211_hw *hw,
- struct ieee80211_if_init_conf *conf);
- void rt2x00mac_remove_interface(struct ieee80211_hw *hw,
-@@ -776,6 +875,10 @@
- int rt2x00mac_config(struct ieee80211_hw *hw, struct ieee80211_conf *conf);
- int rt2x00mac_config_interface(struct ieee80211_hw *hw, int if_id,
- struct ieee80211_if_conf *conf);
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+void rt2x00mac_set_multicast_list(struct ieee80211_hw *hw,
-+ unsigned short flags, int mc_count);
-+#endif
- int rt2x00mac_get_stats(struct ieee80211_hw *hw,
- struct ieee80211_low_level_stats *stats);
- int rt2x00mac_get_tx_stats(struct ieee80211_hw *hw,
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt2400pci.c
-+++ rt2x00/drivers/net/wireless/rt2x00/rt2400pci.c
-@@ -296,8 +296,13 @@
- * Enable synchronisation.
- */
- rt2x00pci_register_read(rt2x00dev, CSR14, ®);
-- rt2x00_set_field32(®, CSR14_TSF_COUNT, 1);
-- rt2x00_set_field32(®, CSR14_TBCN, 1);
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ if (is_interface_present(&rt2x00dev->interface))
-+#endif
-+ {
-+ rt2x00_set_field32(®, CSR14_TSF_COUNT, 1);
-+ rt2x00_set_field32(®, CSR14_TBCN, 1);
-+ }
- rt2x00_set_field32(®, CSR14_BEACON_GEN, 0);
- if (is_interface_type(intf, IEEE80211_IF_TYPE_IBSS) ||
- is_interface_type(intf, IEEE80211_IF_TYPE_AP))
-@@ -1415,7 +1420,14 @@
- /*
- * Initialize all hw fields.
- */
-- rt2x00dev->hw->flags = IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING;
-+ rt2x00dev->hw->flags =
-+ IEEE80211_HW_HOST_GEN_BEACON |
-+ IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING |
-+ IEEE80211_HW_WEP_INCLUDE_IV |
-+ IEEE80211_HW_DATA_NULLFUNC_ACK |
-+ IEEE80211_HW_NO_TKIP_WMM_HWACCEL |
-+ IEEE80211_HW_MONITOR_DURING_OPER |
-+ IEEE80211_HW_NO_PROBE_FILTERING;
- rt2x00dev->hw->extra_tx_headroom = 0;
- rt2x00dev->hw->max_signal = MAX_SIGNAL;
- rt2x00dev->hw->max_rssi = MAX_RX_SSI;
-@@ -1616,13 +1628,19 @@
-
- static const struct ieee80211_ops rt2400pci_mac80211_ops = {
- .tx = rt2x00mac_tx,
-+#ifndef RT2X00_ADAPT_OLD_FILTER_API
- .start = rt2x00mac_start,
-+#endif
- .stop = rt2x00mac_stop,
- .add_interface = rt2x00mac_add_interface,
- .remove_interface = rt2x00mac_remove_interface,
- .config = rt2x00mac_config,
- .config_interface = rt2x00mac_config_interface,
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ .set_multicast_list = rt2x00mac_set_multicast_list,
-+#else
- .configure_filter = rt2400pci_configure_filter,
-+#endif
- .get_stats = rt2x00mac_get_stats,
- .set_retry_limit = rt2400pci_set_retry_limit,
- .conf_tx = rt2400pci_conf_tx,
-@@ -1651,6 +1669,9 @@
- .fill_rxdone = rt2400pci_fill_rxdone,
- .config_mac_addr = rt2400pci_config_mac_addr,
- .config_bssid = rt2400pci_config_bssid,
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ .configure_filter = rt2400pci_configure_filter,
-+#endif
- .config_type = rt2400pci_config_type,
- .config = rt2400pci_config,
- };
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt2500pci.c
-+++ rt2x00/drivers/net/wireless/rt2x00/rt2500pci.c
-@@ -300,8 +300,13 @@
- * Enable synchronisation.
- */
- rt2x00pci_register_read(rt2x00dev, CSR14, ®);
-- rt2x00_set_field32(®, CSR14_TSF_COUNT, 1);
-- rt2x00_set_field32(®, CSR14_TBCN, 1);
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ if (is_interface_present(&rt2x00dev->interface))
-+#endif
-+ {
-+ rt2x00_set_field32(®, CSR14_TSF_COUNT, 1);
-+ rt2x00_set_field32(®, CSR14_TBCN, 1);
-+ }
- rt2x00_set_field32(®, CSR14_BEACON_GEN, 0);
- if (is_interface_type(intf, IEEE80211_IF_TYPE_IBSS) ||
- is_interface_type(intf, IEEE80211_IF_TYPE_AP))
-@@ -1729,7 +1734,14 @@
- /*
- * Initialize all hw fields.
- */
-- rt2x00dev->hw->flags = IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING;
-+ rt2x00dev->hw->flags =
-+ IEEE80211_HW_HOST_GEN_BEACON |
-+ IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING |
-+ IEEE80211_HW_WEP_INCLUDE_IV |
-+ IEEE80211_HW_DATA_NULLFUNC_ACK |
-+ IEEE80211_HW_NO_TKIP_WMM_HWACCEL |
-+ IEEE80211_HW_MONITOR_DURING_OPER |
-+ IEEE80211_HW_NO_PROBE_FILTERING;
- rt2x00dev->hw->extra_tx_headroom = 0;
- rt2x00dev->hw->max_signal = MAX_SIGNAL;
- rt2x00dev->hw->max_rssi = MAX_RX_SSI;
-@@ -1928,13 +1940,19 @@
-
- static const struct ieee80211_ops rt2500pci_mac80211_ops = {
- .tx = rt2x00mac_tx,
-+#ifndef RT2X00_ADAPT_OLD_FILTER_API
- .start = rt2x00mac_start,
-+#endif
- .stop = rt2x00mac_stop,
- .add_interface = rt2x00mac_add_interface,
- .remove_interface = rt2x00mac_remove_interface,
- .config = rt2x00mac_config,
- .config_interface = rt2x00mac_config_interface,
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ .set_multicast_list = rt2x00mac_set_multicast_list,
-+#else
- .configure_filter = rt2500pci_configure_filter,
-+#endif
- .get_stats = rt2x00mac_get_stats,
- .set_retry_limit = rt2500pci_set_retry_limit,
- .conf_tx = rt2x00mac_conf_tx,
-@@ -1963,6 +1981,9 @@
- .fill_rxdone = rt2500pci_fill_rxdone,
- .config_mac_addr = rt2500pci_config_mac_addr,
- .config_bssid = rt2500pci_config_bssid,
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ .configure_filter = rt2500pci_configure_filter,
-+#endif
- .config_type = rt2500pci_config_type,
- .config = rt2500pci_config,
- };
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt2500usb.c
-+++ rt2x00/drivers/net/wireless/rt2x00/rt2500usb.c
-@@ -309,8 +309,13 @@
- rt2500usb_register_write(rt2x00dev, TXRX_CSR18, reg);
-
- rt2500usb_register_read(rt2x00dev, TXRX_CSR19, ®);
-- rt2x00_set_field16(®, TXRX_CSR19_TSF_COUNT, 1);
-- rt2x00_set_field16(®, TXRX_CSR19_TBCN, 1);
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ if (is_interface_present(&rt2x00dev->interface))
-+#endif
-+ {
-+ rt2x00_set_field16(®, TXRX_CSR19_TSF_COUNT, 1);
-+ rt2x00_set_field16(®, TXRX_CSR19_TBCN, 1);
-+ }
- rt2x00_set_field16(®, TXRX_CSR19_BEACON_GEN, 0);
- if (is_interface_type(intf, IEEE80211_IF_TYPE_IBSS) ||
- is_interface_type(intf, IEEE80211_IF_TYPE_AP))
-@@ -1501,7 +1506,12 @@
- rt2x00dev->hw->flags =
- IEEE80211_HW_HOST_GEN_BEACON_TEMPLATE |
- IEEE80211_HW_RX_INCLUDES_FCS |
-- IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING;
-+ IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING |
-+ IEEE80211_HW_WEP_INCLUDE_IV |
-+ IEEE80211_HW_DATA_NULLFUNC_ACK |
-+ IEEE80211_HW_NO_TKIP_WMM_HWACCEL |
-+ IEEE80211_HW_MONITOR_DURING_OPER |
-+ IEEE80211_HW_NO_PROBE_FILTERING;
- rt2x00dev->hw->extra_tx_headroom = TXD_DESC_SIZE;
- rt2x00dev->hw->max_signal = MAX_SIGNAL;
- rt2x00dev->hw->max_rssi = MAX_RX_SSI;
-@@ -1746,13 +1756,19 @@
-
- static const struct ieee80211_ops rt2500usb_mac80211_ops = {
- .tx = rt2x00mac_tx,
-+#ifndef RT2X00_ADAPT_OLD_FILTER_API
- .start = rt2x00mac_start,
-+#endif
- .stop = rt2x00mac_stop,
- .add_interface = rt2x00mac_add_interface,
- .remove_interface = rt2x00mac_remove_interface,
- .config = rt2x00mac_config,
- .config_interface = rt2x00mac_config_interface,
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ .set_multicast_list = rt2x00mac_set_multicast_list,
-+#else
- .configure_filter = rt2500usb_configure_filter,
-+#endif
- .get_stats = rt2x00mac_get_stats,
- .conf_tx = rt2x00mac_conf_tx,
- .get_tx_stats = rt2x00mac_get_tx_stats,
-@@ -1773,6 +1789,9 @@
- .fill_rxdone = rt2500usb_fill_rxdone,
- .config_mac_addr = rt2500usb_config_mac_addr,
- .config_bssid = rt2500usb_config_bssid,
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ .configure_filter = rt2500usb_configure_filter,
-+#endif
- .config_type = rt2500usb_config_type,
- .config = rt2500usb_config,
- };
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt61pci.c
-+++ rt2x00/drivers/net/wireless/rt2x00/rt61pci.c
-@@ -2289,7 +2289,12 @@
- */
- rt2x00dev->hw->flags =
- IEEE80211_HW_HOST_GEN_BEACON_TEMPLATE |
-- IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING;
-+ IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING |
-+ IEEE80211_HW_WEP_INCLUDE_IV |
-+ IEEE80211_HW_DATA_NULLFUNC_ACK |
-+ IEEE80211_HW_NO_TKIP_WMM_HWACCEL |
-+ IEEE80211_HW_MONITOR_DURING_OPER |
-+ IEEE80211_HW_NO_PROBE_FILTERING;
- rt2x00dev->hw->extra_tx_headroom = 0;
- rt2x00dev->hw->max_signal = MAX_SIGNAL;
- rt2x00dev->hw->max_rssi = MAX_RX_SSI;
-@@ -2521,13 +2526,19 @@
-
- static const struct ieee80211_ops rt61pci_mac80211_ops = {
- .tx = rt2x00mac_tx,
-+#ifndef RT2X00_ADAPT_OLD_FILTER_API
- .start = rt2x00mac_start,
-+#endif
- .stop = rt2x00mac_stop,
- .add_interface = rt2x00mac_add_interface,
- .remove_interface = rt2x00mac_remove_interface,
- .config = rt2x00mac_config,
- .config_interface = rt2x00mac_config_interface,
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ .set_multicast_list = rt2x00mac_set_multicast_list,
-+#else
- .configure_filter = rt61pci_configure_filter,
-+#endif
- .get_stats = rt2x00mac_get_stats,
- .set_retry_limit = rt61pci_set_retry_limit,
- .conf_tx = rt2x00mac_conf_tx,
-@@ -2557,6 +2568,9 @@
- .fill_rxdone = rt61pci_fill_rxdone,
- .config_mac_addr = rt61pci_config_mac_addr,
- .config_bssid = rt61pci_config_bssid,
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ .configure_filter = rt61pci_configure_filter,
-+#endif
- .config_type = rt61pci_config_type,
- .config = rt61pci_config,
- };
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt73usb.c
-+++ rt2x00/drivers/net/wireless/rt2x00/rt73usb.c
-@@ -314,8 +314,13 @@
- * Enable synchronisation.
- */
- rt73usb_register_read(rt2x00dev, TXRX_CSR9, ®);
-- rt2x00_set_field32(®, TXRX_CSR9_TSF_TICKING, 1);
-- rt2x00_set_field32(®, TXRX_CSR9_TBTT_ENABLE, 1);
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ if (is_interface_present(&rt2x00dev->interface))
-+#endif
-+ {
-+ rt2x00_set_field32(®, TXRX_CSR9_TSF_TICKING, 1);
-+ rt2x00_set_field32(®, TXRX_CSR9_TBTT_ENABLE, 1);
-+ }
- rt2x00_set_field32(®, TXRX_CSR9_BEACON_GEN, 0);
- if (is_interface_type(intf, IEEE80211_IF_TYPE_IBSS) ||
- is_interface_type(intf, IEEE80211_IF_TYPE_AP))
-@@ -1751,7 +1756,12 @@
- */
- rt2x00dev->hw->flags =
- IEEE80211_HW_HOST_GEN_BEACON_TEMPLATE |
-- IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING;
-+ IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING |
-+ IEEE80211_HW_WEP_INCLUDE_IV |
-+ IEEE80211_HW_DATA_NULLFUNC_ACK |
-+ IEEE80211_HW_NO_TKIP_WMM_HWACCEL |
-+ IEEE80211_HW_MONITOR_DURING_OPER |
-+ IEEE80211_HW_NO_PROBE_FILTERING;
- rt2x00dev->hw->extra_tx_headroom = TXD_DESC_SIZE;
- rt2x00dev->hw->max_signal = MAX_SIGNAL;
- rt2x00dev->hw->max_rssi = MAX_RX_SSI;
-@@ -2007,13 +2017,19 @@
-
- static const struct ieee80211_ops rt73usb_mac80211_ops = {
- .tx = rt2x00mac_tx,
-+#ifndef RT2X00_ADAPT_OLD_FILTER_API
- .start = rt2x00mac_start,
-+#endif
- .stop = rt2x00mac_stop,
- .add_interface = rt2x00mac_add_interface,
- .remove_interface = rt2x00mac_remove_interface,
- .config = rt2x00mac_config,
- .config_interface = rt2x00mac_config_interface,
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ .set_multicast_list = rt2x00mac_set_multicast_list,
-+#else
- .configure_filter = rt73usb_configure_filter,
-+#endif
- .get_stats = rt2x00mac_get_stats,
- .set_retry_limit = rt73usb_set_retry_limit,
- .conf_tx = rt2x00mac_conf_tx,
-@@ -2044,6 +2060,9 @@
- .fill_rxdone = rt73usb_fill_rxdone,
- .config_mac_addr = rt73usb_config_mac_addr,
- .config_bssid = rt73usb_config_bssid,
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ .configure_filter = rt73usb_configure_filter,
-+#endif
- .config_type = rt73usb_config_type,
- .config = rt73usb_config,
- };
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt2x00config.c
-+++ rt2x00/drivers/net/wireless/rt2x00/rt2x00config.c
-@@ -50,6 +50,11 @@
- {
- if (type != INVALID_INTERFACE)
- rt2x00dev->ops->lib->config_type(rt2x00dev, type);
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ else if (is_monitor_present(&rt2x00dev->interface))
-+ rt2x00dev->ops->lib->config_type(rt2x00dev,
-+ IEEE80211_IF_TYPE_MNTR);
-+#endif
- }
-
- void rt2x00lib_config(struct rt2x00_dev *rt2x00dev,
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt2x00mac.c
-+++ rt2x00/drivers/net/wireless/rt2x00/rt2x00mac.c
-@@ -34,6 +34,28 @@
- #include "rt2x00.h"
- #include "rt2x00lib.h"
-
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+static void rt2x00mac_configure_filter(struct rt2x00_dev *rt2x00dev)
-+{
-+ struct interface *intf = &rt2x00dev->interface;
-+ unsigned int filter = 0;
-+
-+ if (intf->iff_filter & IFF_PROMISC ||
-+ is_monitor_present(intf) ||
-+ !(is_interface_type(intf, IEEE80211_IF_TYPE_IBSS) ||
-+ is_interface_type(intf, IEEE80211_IF_TYPE_STA)))
-+ filter |= FIF_PROMISC_IN_BSS | FIF_OTHER_BSS;
-+ if (intf->iff_filter & IFF_MULTICAST)
-+ filter |= FIF_ALLMULTI;
-+ if (!is_interface_present(intf) && is_monitor_present(intf))
-+ filter |= FIF_FCSFAIL | FIF_PLCPFAIL | FIF_CONTROL;
-+
-+ rt2x00dev->ops->lib->configure_filter(rt2x00dev->hw,
-+ intf->filter ^ filter, &filter,
-+ 0, NULL);
-+}
-+#endif
-+
- static int rt2x00mac_tx_rts_cts(struct rt2x00_dev *rt2x00dev,
- struct data_ring *ring,
- struct sk_buff *frag_skb,
-@@ -173,12 +195,20 @@
- }
- EXPORT_SYMBOL_GPL(rt2x00mac_start);
-
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+int rt2x00mac_stop(struct ieee80211_hw *hw)
-+#else
- void rt2x00mac_stop(struct ieee80211_hw *hw)
-+#endif
- {
- struct rt2x00_dev *rt2x00dev = hw->priv;
-
- if (!test_bit(DEVICE_PRESENT, &rt2x00dev->flags))
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ return 0;
-+#else
- return;
-+#endif
-
- /*
- * Perhaps we can add something smarter here,
-@@ -187,6 +217,10 @@
- rt2x00lib_disable_radio(rt2x00dev);
-
- __clear_bit(DEVICE_STARTED, &rt2x00dev->flags);
-+
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ return 0;
-+#endif
- }
- EXPORT_SYMBOL_GPL(rt2x00mac_stop);
-
-@@ -202,14 +236,37 @@
- * another interface is already present.
- */
- if (!test_bit(DEVICE_PRESENT, &rt2x00dev->flags) ||
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ conf->type != IEEE80211_IF_TYPE_MNTR &&
-+#endif
- is_interface_present(intf))
- return -ENOBUFS;
-
-- intf->id = conf->if_id;
-- intf->type = conf->type;
-- if (conf->type == IEEE80211_IF_TYPE_AP)
-- memcpy(&intf->bssid, conf->mac_addr, ETH_ALEN);
-- memcpy(&intf->mac, conf->mac_addr, ETH_ALEN);
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ {
-+ int retval = rt2x00mac_start(hw);
-+ if (retval)
-+ return retval;
-+ }
-+
-+ /*
-+ * We support muliple monitor mode interfaces.
-+ * All we need to do is increase the monitor_count.
-+ */
-+ if (conf->type == IEEE80211_IF_TYPE_MNTR) {
-+ intf->monitor_count++;
-+ } else
-+#endif
-+ {
-+ intf->id = conf->if_id;
-+ intf->type = conf->type;
-+ if (conf->type == IEEE80211_IF_TYPE_AP)
-+ memcpy(&intf->bssid, conf->mac_addr, ETH_ALEN);
-+ memcpy(&intf->mac, conf->mac_addr, ETH_ALEN);
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ intf->iff_filter = 0;
-+#endif
-+ }
-
- /*
- * The MAC adddress must be configured after the device
-@@ -218,6 +275,9 @@
- */
- rt2x00lib_config_mac_addr(rt2x00dev, intf->mac);
- rt2x00lib_config_type(rt2x00dev, conf->type);
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ rt2x00mac_configure_filter(rt2x00dev);
-+#endif
-
- return 0;
- }
-@@ -235,13 +295,30 @@
- * no interface is present.
- */
- if (!test_bit(DEVICE_PRESENT, &rt2x00dev->flags) ||
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ conf->type != IEEE80211_IF_TYPE_MNTR &&
-+#endif
- !is_interface_present(intf))
- return;
-
-- intf->id = 0;
-- intf->type = INVALID_INTERFACE;
-- memset(&intf->bssid, 0x00, ETH_ALEN);
-- memset(&intf->mac, 0x00, ETH_ALEN);
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ /*
-+ * When removing an monitor interface, decrease monitor_count.
-+ * For non-monitor interfaces, all interface data needs to be reset.
-+ */
-+ if (conf->type == IEEE80211_IF_TYPE_MNTR) {
-+ intf->monitor_count--;
-+ } else if (intf->type == conf->type)
-+#endif
-+ {
-+ intf->id = 0;
-+ intf->type = INVALID_INTERFACE;
-+ memset(&intf->bssid, 0x00, ETH_ALEN);
-+ memset(&intf->mac, 0x00, ETH_ALEN);
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ intf->iff_filter = 0;
-+#endif
-+ }
-
- /*
- * Make sure the bssid and mac address registers
-@@ -250,6 +327,11 @@
- rt2x00lib_config_mac_addr(rt2x00dev, intf->mac);
- rt2x00lib_config_bssid(rt2x00dev, intf->bssid);
- rt2x00lib_config_type(rt2x00dev, intf->type);
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ rt2x00mac_configure_filter(rt2x00dev);
-+ if (!is_monitor_present(intf))
-+ rt2x00mac_stop(hw);
-+#endif
- }
- EXPORT_SYMBOL_GPL(rt2x00mac_remove_interface);
-
-@@ -303,6 +385,14 @@
- if (!test_bit(DEVICE_PRESENT, &rt2x00dev->flags))
- return 0;
-
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ /*
-+ * Monitor mode does not need configuring.
-+ */
-+ if (conf->type == IEEE80211_IF_TYPE_MNTR)
-+ return 0;
-+#endif
-+
- /*
- * If the given type does not match the configured type,
- * there has been a problem.
-@@ -335,6 +425,18 @@
- }
- EXPORT_SYMBOL_GPL(rt2x00mac_config_interface);
-
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+void rt2x00mac_set_multicast_list(struct ieee80211_hw *hw,
-+ unsigned short iff_filter, int mc_count)
-+{
-+ struct rt2x00_dev *rt2x00dev = hw->priv;
-+
-+ rt2x00dev->interface.iff_filter = iff_filter;
-+ rt2x00mac_configure_filter(rt2x00dev);
-+}
-+EXPORT_SYMBOL_GPL(rt2x00mac_set_multicast_list);
-+#endif
-+
- int rt2x00mac_get_stats(struct ieee80211_hw *hw,
- struct ieee80211_low_level_stats *stats)
- {
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt2x00dev.c
-+++ rt2x00/drivers/net/wireless/rt2x00/rt2x00dev.c
-@@ -280,9 +280,14 @@
- struct rt2x00_dev *rt2x00dev =
- container_of(work, struct rt2x00_dev, filter_work);
-
-- rt2x00dev->ops->hw->configure_filter(rt2x00dev->hw,
-- FIF_RT2X00_USE_CURRENT, NULL,
-- 0, NULL);
-+#ifdef RT2X00_ADAPT_OLD_FILTER_API
-+ rt2x00dev->ops->lib
-+#else
-+ rt2x00dev->ops->hw
-+#endif
-+ ->configure_filter(rt2x00dev->hw,
-+ FIF_RT2X00_USE_CURRENT, NULL,
-+ 0, NULL);
- }
-
- /*
Copied: tags/rt2x00-2.0.12+git20071103/debian/patches/003_workaround_mac80211_changes.diff (from rev 85, unstable/rt2x00/debian/patches/003_workaround_mac80211_changes.diff)
===================================================================
--- tags/rt2x00-2.0.12+git20071103/debian/patches/003_workaround_mac80211_changes.diff (rev 0)
+++ tags/rt2x00-2.0.12+git20071103/debian/patches/003_workaround_mac80211_changes.diff 2007-11-12 00:30:15 UTC (rev 86)
@@ -0,0 +1,892 @@
+--- rt2x00.orig/drivers/net/wireless/rt2x00/rt2x00.h
++++ rt2x00/drivers/net/wireless/rt2x00/rt2x00.h
+@@ -32,6 +32,7 @@
+ #include <linux/workqueue.h>
+ #include <linux/firmware.h>
+ #include <linux/mutex.h>
++#include <linux/version.h>
+
+ #include <net/mac80211.h>
+
+@@ -41,6 +42,86 @@
+
+ #include "config.h"
+
++/* Version compatibility workarounds */
++
++#ifndef IEEE80211_TXCTL_LONG_RETRY_LIMIT
++
++#define IEEE80211_TXCTL_LONG_RETRY_LIMIT 0
++
++/* These were changed around the same time as
++ * IEEE80211_TXCTL_LONG_RETRY_LIMIT was added in wireless-dev, but we
++ * can't detect this change directly using the preprocessor
++ */
++#define ieee80211_rts_get(hw, if_id, frame, frame_len, frame_txctl, rts) \
++ ieee80211_rts_get(hw, frame, frame_len, frame_txctl, rts)
++#define ieee80211_ctstoself_get(hw, if_id, frame, frame_len, frame_txctl, cts) \
++ ieee80211_ctstoself_get(hw, frame, frame_len, frame_txctl, cts)
++
++/* erp_ie_changed was added around the same time. */
++#define RT2X00_SYNTHESISE_ERP_IE_CHANGED
++enum ieee80211_erp_change_flags {
++ IEEE80211_ERP_CHANGE_PROTECTION = 1<<0,
++ IEEE80211_ERP_CHANGE_PREAMBLE = 1<<1,
++};
++
++#endif /* !IEEE80211_TXCTL_LONG_RETRY_LIMIT */
++
++/* These negative capability flags have been removed in wireless-dev */
++#ifndef IEEE80211_HW_HOST_GEN_BEACON
++#define IEEE80211_HW_HOST_GEN_BEACON 0
++#endif
++#ifndef IEEE80211_HW_WEP_INCLUDE_IV
++#define IEEE80211_HW_WEP_INCLUDE_IV 0
++#endif
++#ifndef IEEE80211_HW_DATA_NULLFUNC_ACK
++#define IEEE80211_HW_DATA_NULLFUNC_ACK 0
++#endif
++#ifndef IEEE80211_HW_NO_TKIP_WMM_HWACCEL
++#define IEEE80211_HW_NO_TKIP_WMM_HWACCEL 0
++#endif
++
++/* The filter interface has been changed in wireless-dev */
++#ifdef IEEE80211_HW_MONITOR_DURING_OPER
++#define RT2X00_ADAPT_OLD_FILTER_API
++enum ieee80211_filter_flags {
++ FIF_PROMISC_IN_BSS = 1<<0,
++ FIF_ALLMULTI = 1<<1,
++ FIF_FCSFAIL = 1<<2,
++ FIF_PLCPFAIL = 1<<3,
++ FIF_BCN_PRBRESP_PROMISC = 1<<4,
++ FIF_CONTROL = 1<<5,
++ FIF_OTHER_BSS = 1<<6,
++};
++enum {
++ RX_FLAG_FAILED_FCS_CRC = 0,
++ RX_FLAG_FAILED_PLCP_CRC = 0,
++};
++struct dev_addr_list;
++#else
++#define IEEE80211_HW_MONITOR_DURING_OPER 0
++#define IEEE80211_HW_NO_PROBE_FILTERING 0
++#endif
++
++#ifndef DECLARE_MAC_BUF
++#define DECLARE_MAC_BUF(var) char var[18] __maybe_unused
++static inline
++char *print_mac(char *buf, const u8 *addr)
++{
++ sprintf(buf, MAC_FMT,
++ addr[0], addr[1], addr[2], addr[3], addr[4], addr[5]);
++ return buf;
++}
++#endif
++
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,23)
++static inline
++void cancel_delayed_work_sync(struct delayed_work *work)
++{
++ if (cancel_delayed_work(work))
++ cancel_work_sync(&work->work);
++}
++#endif
++
+ /*
+ * Module information.
+ * DRV_NAME should be set within the individual module source files.
+@@ -375,7 +456,7 @@
+ * When set to INVALID_INTERFACE, no interface is configured.
+ */
+ int type;
+-#define INVALID_INTERFACE IEEE80211_IF_TYPE_INVALID
++#define INVALID_INTERFACE (IEEE80211_IF_TYPE_AP - 1)
+
+ /*
+ * MAC of the device.
+@@ -391,6 +472,19 @@
+ * Store the packet filter mode for the current interface.
+ */
+ unsigned int filter;
++
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ /*
++ * Monitor mode count, the number of interfaces
++ * in monitor mode that that have been added.
++ */
++ unsigned short monitor_count;
++
++ /*
++ * Interface filter passed to config_packet_filter.
++ */
++ unsigned int iff_filter;
++#endif
+ };
+
+ /* Magic filter for configure_filter to apply existing filter */
+@@ -408,6 +502,13 @@
+ return intf->type == type;
+ }
+
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++static inline int is_monitor_present(struct interface *intf)
++{
++ return !!intf->monitor_count;
++}
++#endif
++
+ /*
+ * Details about the supported modes, rates and channels
+ * of a particular chipset. This is used by rt2x00lib
+@@ -450,6 +551,9 @@
+ int phymode;
+
+ int basic_rates;
++#ifdef RT2X00_SYNTHESISE_ERP_IE_CHANGED
++ int preamble;
++#endif
+ int slot_time;
+
+ short sifs;
+@@ -520,6 +624,12 @@
+ */
+ void (*config_mac_addr) (struct rt2x00_dev *rt2x00dev, __le32 *mac);
+ void (*config_bssid) (struct rt2x00_dev *rt2x00dev, __le32 *bssid);
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ void (*configure_filter) (struct ieee80211_hw *hw,
++ unsigned int changed_flags,
++ unsigned int *total_flags,
++ int mc_count, struct dev_addr_list *mc_list);
++#endif
+ void (*config_type) (struct rt2x00_dev *rt2x00dev, const int type,
+ const int tsf_sync);
+ void (*config_preamble) (struct rt2x00_dev *rt2x00dev,
+@@ -744,7 +854,9 @@
+ */
+ struct work_struct beacon_work;
+ struct work_struct filter_work;
++#ifndef RT2X00_SYNTHESISE_ERP_IE_CHANGED
+ struct work_struct config_work;
++#endif
+
+ /*
+ * Data ring arrays for RX, TX and Beacon.
+@@ -915,7 +1027,11 @@
+ int rt2x00mac_tx(struct ieee80211_hw *hw, struct sk_buff *skb,
+ struct ieee80211_tx_control *control);
+ int rt2x00mac_start(struct ieee80211_hw *hw);
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++int rt2x00mac_stop(struct ieee80211_hw *hw);
++#else
+ void rt2x00mac_stop(struct ieee80211_hw *hw);
++#endif
+ int rt2x00mac_add_interface(struct ieee80211_hw *hw,
+ struct ieee80211_if_init_conf *conf);
+ void rt2x00mac_remove_interface(struct ieee80211_hw *hw,
+@@ -923,6 +1039,10 @@
+ int rt2x00mac_config(struct ieee80211_hw *hw, struct ieee80211_conf *conf);
+ int rt2x00mac_config_interface(struct ieee80211_hw *hw, int if_id,
+ struct ieee80211_if_conf *conf);
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++void rt2x00mac_set_multicast_list(struct ieee80211_hw *hw,
++ unsigned short flags, int mc_count);
++#endif
+ int rt2x00mac_get_stats(struct ieee80211_hw *hw,
+ struct ieee80211_low_level_stats *stats);
+ int rt2x00mac_get_tx_stats(struct ieee80211_hw *hw,
+--- rt2x00.orig/drivers/net/wireless/rt2x00/rt2400pci.c
++++ rt2x00/drivers/net/wireless/rt2x00/rt2400pci.c
+@@ -284,8 +284,13 @@
+ * Enable synchronisation.
+ */
+ rt2x00pci_register_read(rt2x00dev, CSR14, ®);
+- rt2x00_set_field32(®, CSR14_TSF_COUNT, 1);
+- rt2x00_set_field32(®, CSR14_TBCN, 1);
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ if (is_interface_present(&rt2x00dev->interface))
++#endif
++ {
++ rt2x00_set_field32(®, CSR14_TSF_COUNT, 1);
++ rt2x00_set_field32(®, CSR14_TBCN, 1);
++ }
+ rt2x00_set_field32(®, CSR14_BEACON_GEN, 0);
+ rt2x00_set_field32(®, CSR14_TSF_SYNC, tsf_sync);
+ rt2x00pci_register_write(rt2x00dev, CSR14, reg);
+@@ -489,8 +494,14 @@
+ const unsigned int flags,
+ struct rt2x00lib_conf *libconf)
+ {
+- if (flags & CONFIG_UPDATE_PHYMODE)
++ if (flags & CONFIG_UPDATE_PHYMODE) {
+ rt2400pci_config_phymode(rt2x00dev, libconf->basic_rates);
++#ifdef RT2X00_SYNTHESISE_ERP_IE_CHANGED
++ rt2x00mac_erp_ie_changed(rt2x00dev->hw,
++ IEEE80211_ERP_CHANGE_PREAMBLE,
++ 0, libconf->preamble);
++#endif
++ }
+ if (flags & CONFIG_UPDATE_CHANNEL)
+ rt2400pci_config_channel(rt2x00dev, &libconf->rf);
+ if (flags & CONFIG_UPDATE_TXPOWER)
+@@ -1369,7 +1380,14 @@
+ /*
+ * Initialize all hw fields.
+ */
+- rt2x00dev->hw->flags = IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING;
++ rt2x00dev->hw->flags =
++ IEEE80211_HW_HOST_GEN_BEACON |
++ IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING |
++ IEEE80211_HW_WEP_INCLUDE_IV |
++ IEEE80211_HW_DATA_NULLFUNC_ACK |
++ IEEE80211_HW_NO_TKIP_WMM_HWACCEL |
++ IEEE80211_HW_MONITOR_DURING_OPER |
++ IEEE80211_HW_NO_PROBE_FILTERING;
+ rt2x00dev->hw->extra_tx_headroom = 0;
+ rt2x00dev->hw->max_signal = MAX_SIGNAL;
+ rt2x00dev->hw->max_rssi = MAX_RX_SSI;
+@@ -1570,16 +1588,24 @@
+
+ static const struct ieee80211_ops rt2400pci_mac80211_ops = {
+ .tx = rt2x00mac_tx,
++#ifndef RT2X00_ADAPT_OLD_FILTER_API
+ .start = rt2x00mac_start,
++#endif
+ .stop = rt2x00mac_stop,
+ .add_interface = rt2x00mac_add_interface,
+ .remove_interface = rt2x00mac_remove_interface,
+ .config = rt2x00mac_config,
+ .config_interface = rt2x00mac_config_interface,
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ .set_multicast_list = rt2x00mac_set_multicast_list,
++#else
+ .configure_filter = rt2400pci_configure_filter,
++#endif
+ .get_stats = rt2x00mac_get_stats,
+ .set_retry_limit = rt2400pci_set_retry_limit,
++#ifndef RT2X00_SYNTHESISE_ERP_IE_CHANGED
+ .erp_ie_changed = rt2x00mac_erp_ie_changed,
++#endif
+ .conf_tx = rt2400pci_conf_tx,
+ .get_tx_stats = rt2x00mac_get_tx_stats,
+ .get_tsf = rt2400pci_get_tsf,
+@@ -1604,6 +1630,9 @@
+ .fill_rxdone = rt2400pci_fill_rxdone,
+ .config_mac_addr = rt2400pci_config_mac_addr,
+ .config_bssid = rt2400pci_config_bssid,
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ .configure_filter = rt2400pci_configure_filter,
++#endif
+ .config_type = rt2400pci_config_type,
+ .config_preamble = rt2400pci_config_preamble,
+ .config = rt2400pci_config,
+--- rt2x00.orig/drivers/net/wireless/rt2x00/rt2500pci.c
++++ rt2x00/drivers/net/wireless/rt2x00/rt2500pci.c
+@@ -288,8 +288,13 @@
+ * Enable synchronisation.
+ */
+ rt2x00pci_register_read(rt2x00dev, CSR14, ®);
+- rt2x00_set_field32(®, CSR14_TSF_COUNT, 1);
+- rt2x00_set_field32(®, CSR14_TBCN, 1);
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ if (is_interface_present(&rt2x00dev->interface))
++#endif
++ {
++ rt2x00_set_field32(®, CSR14_TSF_COUNT, 1);
++ rt2x00_set_field32(®, CSR14_TBCN, 1);
++ }
+ rt2x00_set_field32(®, CSR14_BEACON_GEN, 0);
+ rt2x00_set_field32(®, CSR14_TSF_SYNC, tsf_sync);
+ rt2x00pci_register_write(rt2x00dev, CSR14, reg);
+@@ -538,8 +543,14 @@
+ const unsigned int flags,
+ struct rt2x00lib_conf *libconf)
+ {
+- if (flags & CONFIG_UPDATE_PHYMODE)
++ if (flags & CONFIG_UPDATE_PHYMODE) {
+ rt2500pci_config_phymode(rt2x00dev, libconf->basic_rates);
++#ifdef RT2X00_SYNTHESISE_ERP_IE_CHANGED
++ rt2x00mac_erp_ie_changed(rt2x00dev->hw,
++ IEEE80211_ERP_CHANGE_PREAMBLE,
++ 0, libconf->preamble);
++#endif
++ }
+ if (flags & CONFIG_UPDATE_CHANNEL)
+ rt2500pci_config_channel(rt2x00dev, &libconf->rf,
+ libconf->conf->power_level);
+@@ -1664,7 +1675,14 @@
+ /*
+ * Initialize all hw fields.
+ */
+- rt2x00dev->hw->flags = IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING;
++ rt2x00dev->hw->flags =
++ IEEE80211_HW_HOST_GEN_BEACON |
++ IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING |
++ IEEE80211_HW_WEP_INCLUDE_IV |
++ IEEE80211_HW_DATA_NULLFUNC_ACK |
++ IEEE80211_HW_NO_TKIP_WMM_HWACCEL |
++ IEEE80211_HW_MONITOR_DURING_OPER |
++ IEEE80211_HW_NO_PROBE_FILTERING;
+ rt2x00dev->hw->extra_tx_headroom = 0;
+ rt2x00dev->hw->max_signal = MAX_SIGNAL;
+ rt2x00dev->hw->max_rssi = MAX_RX_SSI;
+@@ -1863,16 +1881,24 @@
+
+ static const struct ieee80211_ops rt2500pci_mac80211_ops = {
+ .tx = rt2x00mac_tx,
++#ifndef RT2X00_ADAPT_OLD_FILTER_API
+ .start = rt2x00mac_start,
++#endif
+ .stop = rt2x00mac_stop,
+ .add_interface = rt2x00mac_add_interface,
+ .remove_interface = rt2x00mac_remove_interface,
+ .config = rt2x00mac_config,
+ .config_interface = rt2x00mac_config_interface,
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ .set_multicast_list = rt2x00mac_set_multicast_list,
++#else
+ .configure_filter = rt2500pci_configure_filter,
++#endif
+ .get_stats = rt2x00mac_get_stats,
+ .set_retry_limit = rt2500pci_set_retry_limit,
++#ifndef RT2X00_SYNTHESISE_ERP_IE_CHANGED
+ .erp_ie_changed = rt2x00mac_erp_ie_changed,
++#endif
+ .conf_tx = rt2x00mac_conf_tx,
+ .get_tx_stats = rt2x00mac_get_tx_stats,
+ .get_tsf = rt2500pci_get_tsf,
+@@ -1897,6 +1923,9 @@
+ .fill_rxdone = rt2500pci_fill_rxdone,
+ .config_mac_addr = rt2500pci_config_mac_addr,
+ .config_bssid = rt2500pci_config_bssid,
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ .configure_filter = rt2500pci_configure_filter,
++#endif
+ .config_type = rt2500pci_config_type,
+ .config_preamble = rt2500pci_config_preamble,
+ .config = rt2500pci_config,
+--- rt2x00.orig/drivers/net/wireless/rt2x00/rt2500usb.c
++++ rt2x00/drivers/net/wireless/rt2x00/rt2500usb.c
+@@ -331,8 +331,13 @@
+ rt2500usb_register_write(rt2x00dev, TXRX_CSR18, reg);
+
+ rt2500usb_register_read(rt2x00dev, TXRX_CSR19, ®);
+- rt2x00_set_field16(®, TXRX_CSR19_TSF_COUNT, 1);
+- rt2x00_set_field16(®, TXRX_CSR19_TBCN, 1);
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ if (is_interface_present(&rt2x00dev->interface))
++#endif
++ {
++ rt2x00_set_field16(®, TXRX_CSR19_TSF_COUNT, 1);
++ rt2x00_set_field16(®, TXRX_CSR19_TBCN, 1);
++ }
+ rt2x00_set_field16(®, TXRX_CSR19_BEACON_GEN, 0);
+ rt2x00_set_field16(®, TXRX_CSR19_TSF_SYNC, tsf_sync);
+ rt2500usb_register_write(rt2x00dev, TXRX_CSR19, reg);
+@@ -345,6 +350,7 @@
+ {
+ u16 reg;
+
++#ifndef RT2X00_SYNTHESISE_ERP_IE_CHANGED
+ /*
+ * When in atomic context, reschedule and let rt2x00lib
+ * call this function again.
+@@ -353,6 +359,7 @@
+ queue_work(rt2x00dev->hw->workqueue, &rt2x00dev->config_work);
+ return;
+ }
++#endif
+
+ rt2500usb_register_read(rt2x00dev, TXRX_CSR1, ®);
+ rt2x00_set_field16(®, TXRX_CSR1_ACK_TIMEOUT, ack_timeout);
+@@ -525,9 +532,15 @@
+ const unsigned int flags,
+ struct rt2x00lib_conf *libconf)
+ {
+- if (flags & CONFIG_UPDATE_PHYMODE)
++ if (flags & CONFIG_UPDATE_PHYMODE) {
+ rt2500usb_config_phymode(rt2x00dev, libconf->phymode,
+ libconf->basic_rates);
++#ifdef RT2X00_SYNTHESISE_ERP_IE_CHANGED
++ rt2x00mac_erp_ie_changed(rt2x00dev->hw,
++ IEEE80211_ERP_CHANGE_PREAMBLE,
++ 0, libconf->preamble);
++#endif
++ }
+ if (flags & CONFIG_UPDATE_CHANNEL)
+ rt2500usb_config_channel(rt2x00dev, &libconf->rf,
+ libconf->conf->power_level);
+@@ -1523,7 +1536,12 @@
+ rt2x00dev->hw->flags =
+ IEEE80211_HW_HOST_GEN_BEACON_TEMPLATE |
+ IEEE80211_HW_RX_INCLUDES_FCS |
+- IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING;
++ IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING |
++ IEEE80211_HW_WEP_INCLUDE_IV |
++ IEEE80211_HW_DATA_NULLFUNC_ACK |
++ IEEE80211_HW_NO_TKIP_WMM_HWACCEL |
++ IEEE80211_HW_MONITOR_DURING_OPER |
++ IEEE80211_HW_NO_PROBE_FILTERING;
+ rt2x00dev->hw->extra_tx_headroom = TXD_DESC_SIZE;
+ rt2x00dev->hw->max_signal = MAX_SIGNAL;
+ rt2x00dev->hw->max_rssi = MAX_RX_SSI;
+@@ -1764,15 +1782,23 @@
+
+ static const struct ieee80211_ops rt2500usb_mac80211_ops = {
+ .tx = rt2x00mac_tx,
++#ifndef RT2X00_ADAPT_OLD_FILTER_API
+ .start = rt2x00mac_start,
++#endif
+ .stop = rt2x00mac_stop,
+ .add_interface = rt2x00mac_add_interface,
+ .remove_interface = rt2x00mac_remove_interface,
+ .config = rt2x00mac_config,
+ .config_interface = rt2x00mac_config_interface,
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ .set_multicast_list = rt2x00mac_set_multicast_list,
++#else
+ .configure_filter = rt2500usb_configure_filter,
++#endif
+ .get_stats = rt2x00mac_get_stats,
++#ifndef RT2X00_SYNTHESISE_ERP_IE_CHANGED
+ .erp_ie_changed = rt2x00mac_erp_ie_changed,
++#endif
+ .conf_tx = rt2x00mac_conf_tx,
+ .get_tx_stats = rt2x00mac_get_tx_stats,
+ .beacon_update = rt2500usb_beacon_update,
+@@ -1793,6 +1819,9 @@
+ .fill_rxdone = rt2500usb_fill_rxdone,
+ .config_mac_addr = rt2500usb_config_mac_addr,
+ .config_bssid = rt2500usb_config_bssid,
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ .configure_filter = rt2500usb_configure_filter,
++#endif
+ .config_type = rt2500usb_config_type,
+ .config_preamble = rt2500usb_config_preamble,
+ .config = rt2500usb_config,
+--- rt2x00.orig/drivers/net/wireless/rt2x00/rt61pci.c
++++ rt2x00/drivers/net/wireless/rt2x00/rt61pci.c
+@@ -674,8 +674,14 @@
+ const unsigned int flags,
+ struct rt2x00lib_conf *libconf)
+ {
+- if (flags & CONFIG_UPDATE_PHYMODE)
++ if (flags & CONFIG_UPDATE_PHYMODE) {
+ rt61pci_config_phymode(rt2x00dev, libconf->basic_rates);
++#ifdef RT2X00_SYNTHESISE_ERP_IE_CHANGED
++ rt2x00mac_erp_ie_changed(rt2x00dev->hw,
++ IEEE80211_ERP_CHANGE_PREAMBLE,
++ 0, libconf->preamble);
++#endif
++ }
+ if (flags & CONFIG_UPDATE_CHANNEL)
+ rt61pci_config_channel(rt2x00dev, &libconf->rf,
+ libconf->conf->power_level);
+@@ -2209,7 +2215,12 @@
+ */
+ rt2x00dev->hw->flags =
+ IEEE80211_HW_HOST_GEN_BEACON_TEMPLATE |
+- IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING;
++ IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING |
++ IEEE80211_HW_WEP_INCLUDE_IV |
++ IEEE80211_HW_DATA_NULLFUNC_ACK |
++ IEEE80211_HW_NO_TKIP_WMM_HWACCEL |
++ IEEE80211_HW_MONITOR_DURING_OPER |
++ IEEE80211_HW_NO_PROBE_FILTERING;
+ rt2x00dev->hw->extra_tx_headroom = 0;
+ rt2x00dev->hw->max_signal = MAX_SIGNAL;
+ rt2x00dev->hw->max_rssi = MAX_RX_SSI;
+@@ -2444,16 +2455,24 @@
+
+ static const struct ieee80211_ops rt61pci_mac80211_ops = {
+ .tx = rt2x00mac_tx,
++#ifndef RT2X00_ADAPT_OLD_FILTER_API
+ .start = rt2x00mac_start,
++#endif
+ .stop = rt2x00mac_stop,
+ .add_interface = rt2x00mac_add_interface,
+ .remove_interface = rt2x00mac_remove_interface,
+ .config = rt2x00mac_config,
+ .config_interface = rt2x00mac_config_interface,
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ .set_multicast_list = rt2x00mac_set_multicast_list,
++#else
+ .configure_filter = rt61pci_configure_filter,
++#endif
+ .get_stats = rt2x00mac_get_stats,
+ .set_retry_limit = rt61pci_set_retry_limit,
++#ifndef RT2X00_SYNTHESISE_ERP_IE_CHANGED
+ .erp_ie_changed = rt2x00mac_erp_ie_changed,
++#endif
+ .conf_tx = rt2x00mac_conf_tx,
+ .get_tx_stats = rt2x00mac_get_tx_stats,
+ .get_tsf = rt61pci_get_tsf,
+@@ -2479,6 +2498,9 @@
+ .fill_rxdone = rt61pci_fill_rxdone,
+ .config_mac_addr = rt61pci_config_mac_addr,
+ .config_bssid = rt61pci_config_bssid,
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ .configure_filter = rt61pci_configure_filter,
++#endif
+ .config_type = rt61pci_config_type,
+ .config_preamble = rt61pci_config_preamble,
+ .config = rt61pci_config,
+--- rt2x00.orig/drivers/net/wireless/rt2x00/rt73usb.c
++++ rt2x00/drivers/net/wireless/rt2x00/rt73usb.c
+@@ -331,8 +331,13 @@
+ * Enable synchronisation.
+ */
+ rt73usb_register_read(rt2x00dev, TXRX_CSR9, ®);
+- rt2x00_set_field32(®, TXRX_CSR9_TSF_TICKING, 1);
+- rt2x00_set_field32(®, TXRX_CSR9_TBTT_ENABLE, 1);
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ if (is_interface_present(&rt2x00dev->interface))
++#endif
++ {
++ rt2x00_set_field32(®, TXRX_CSR9_TSF_TICKING, 1);
++ rt2x00_set_field32(®, TXRX_CSR9_TBTT_ENABLE, 1);
++ }
+ rt2x00_set_field32(®, TXRX_CSR9_BEACON_GEN, 0);
+ rt2x00_set_field32(®, TXRX_CSR9_TSF_SYNC, tsf_sync);
+ rt73usb_register_write(rt2x00dev, TXRX_CSR9, reg);
+@@ -345,6 +350,7 @@
+ {
+ u32 reg;
+
++#ifndef RT2X00_SYNTHESISE_ERP_IE_CHANGED
+ /*
+ * When in atomic context, reschedule and let rt2x00lib
+ * call this function again.
+@@ -353,6 +359,7 @@
+ queue_work(rt2x00dev->hw->workqueue, &rt2x00dev->config_work);
+ return;
+ }
++#endif
+
+ rt73usb_register_read(rt2x00dev, TXRX_CSR0, ®);
+ rt2x00_set_field32(®, TXRX_CSR0_RX_ACK_TIMEOUT, ack_timeout);
+@@ -624,8 +631,14 @@
+ const unsigned int flags,
+ struct rt2x00lib_conf *libconf)
+ {
+- if (flags & CONFIG_UPDATE_PHYMODE)
++ if (flags & CONFIG_UPDATE_PHYMODE) {
+ rt73usb_config_phymode(rt2x00dev, libconf->basic_rates);
++#ifdef RT2X00_SYNTHESISE_ERP_IE_CHANGED
++ rt2x00mac_erp_ie_changed(rt2x00dev->hw,
++ IEEE80211_ERP_CHANGE_PREAMBLE,
++ 0, libconf->preamble);
++#endif
++ }
+ if (flags & CONFIG_UPDATE_CHANNEL)
+ rt73usb_config_channel(rt2x00dev, &libconf->rf,
+ libconf->conf->power_level);
+@@ -1754,7 +1767,12 @@
+ */
+ rt2x00dev->hw->flags =
+ IEEE80211_HW_HOST_GEN_BEACON_TEMPLATE |
+- IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING;
++ IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING |
++ IEEE80211_HW_WEP_INCLUDE_IV |
++ IEEE80211_HW_DATA_NULLFUNC_ACK |
++ IEEE80211_HW_NO_TKIP_WMM_HWACCEL |
++ IEEE80211_HW_MONITOR_DURING_OPER |
++ IEEE80211_HW_NO_PROBE_FILTERING;
+ rt2x00dev->hw->extra_tx_headroom = TXD_DESC_SIZE;
+ rt2x00dev->hw->max_signal = MAX_SIGNAL;
+ rt2x00dev->hw->max_rssi = MAX_RX_SSI;
+@@ -2014,16 +2032,24 @@
+
+ static const struct ieee80211_ops rt73usb_mac80211_ops = {
+ .tx = rt2x00mac_tx,
++#ifndef RT2X00_ADAPT_OLD_FILTER_API
+ .start = rt2x00mac_start,
++#endif
+ .stop = rt2x00mac_stop,
+ .add_interface = rt2x00mac_add_interface,
+ .remove_interface = rt2x00mac_remove_interface,
+ .config = rt2x00mac_config,
+ .config_interface = rt2x00mac_config_interface,
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ .set_multicast_list = rt2x00mac_set_multicast_list,
++#else
+ .configure_filter = rt73usb_configure_filter,
++#endif
+ .get_stats = rt2x00mac_get_stats,
+ .set_retry_limit = rt73usb_set_retry_limit,
++#ifndef RT2X00_SYNTHESISE_ERP_IE_CHANGED
+ .erp_ie_changed = rt2x00mac_erp_ie_changed,
++#endif
+ .conf_tx = rt2x00mac_conf_tx,
+ .get_tx_stats = rt2x00mac_get_tx_stats,
+ .get_tsf = rt73usb_get_tsf,
+@@ -2048,6 +2074,9 @@
+ .fill_rxdone = rt73usb_fill_rxdone,
+ .config_mac_addr = rt73usb_config_mac_addr,
+ .config_bssid = rt73usb_config_bssid,
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ .configure_filter = rt73usb_configure_filter,
++#endif
+ .config_type = rt73usb_config_type,
+ .config_preamble = rt73usb_config_preamble,
+ .config = rt73usb_config,
+--- rt2x00.orig/drivers/net/wireless/rt2x00/rt2x00mac.c
++++ rt2x00/drivers/net/wireless/rt2x00/rt2x00mac.c
+@@ -34,6 +34,28 @@
+ #include "rt2x00.h"
+ #include "rt2x00lib.h"
+
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++static void rt2x00mac_configure_filter(struct rt2x00_dev *rt2x00dev)
++{
++ struct interface *intf = &rt2x00dev->interface;
++ unsigned int filter = 0;
++
++ if (intf->iff_filter & IFF_PROMISC ||
++ is_monitor_present(intf) ||
++ !(is_interface_type(intf, IEEE80211_IF_TYPE_IBSS) ||
++ is_interface_type(intf, IEEE80211_IF_TYPE_STA)))
++ filter |= FIF_PROMISC_IN_BSS | FIF_OTHER_BSS;
++ if (intf->iff_filter & IFF_MULTICAST)
++ filter |= FIF_ALLMULTI;
++ if (!is_interface_present(intf) && is_monitor_present(intf))
++ filter |= FIF_FCSFAIL | FIF_PLCPFAIL | FIF_CONTROL;
++
++ rt2x00dev->ops->lib->configure_filter(rt2x00dev->hw,
++ intf->filter ^ filter, &filter,
++ 0, NULL);
++}
++#endif
++
+ static int rt2x00mac_tx_rts_cts(struct rt2x00_dev *rt2x00dev,
+ struct data_ring *ring,
+ struct sk_buff *frag_skb,
+@@ -173,12 +195,20 @@
+ }
+ EXPORT_SYMBOL_GPL(rt2x00mac_start);
+
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++int rt2x00mac_stop(struct ieee80211_hw *hw)
++#else
+ void rt2x00mac_stop(struct ieee80211_hw *hw)
++#endif
+ {
+ struct rt2x00_dev *rt2x00dev = hw->priv;
+
+ if (!test_bit(DEVICE_PRESENT, &rt2x00dev->flags))
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ return 0;
++#else
+ return;
++#endif
+
+ /*
+ * Perhaps we can add something smarter here,
+@@ -187,6 +217,10 @@
+ rt2x00lib_disable_radio(rt2x00dev);
+
+ __clear_bit(DEVICE_STARTED, &rt2x00dev->flags);
++
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ return 0;
++#endif
+ }
+ EXPORT_SYMBOL_GPL(rt2x00mac_stop);
+
+@@ -202,14 +236,37 @@
+ * another interface is already present.
+ */
+ if (!test_bit(DEVICE_PRESENT, &rt2x00dev->flags) ||
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ conf->type != IEEE80211_IF_TYPE_MNTR &&
++#endif
+ is_interface_present(intf))
+ return -ENOBUFS;
+
+- intf->id = conf->if_id;
+- intf->type = conf->type;
+- if (conf->type == IEEE80211_IF_TYPE_AP)
+- memcpy(&intf->bssid, conf->mac_addr, ETH_ALEN);
+- memcpy(&intf->mac, conf->mac_addr, ETH_ALEN);
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ {
++ int retval = rt2x00mac_start(hw);
++ if (retval)
++ return retval;
++ }
++
++ /*
++ * We support muliple monitor mode interfaces.
++ * All we need to do is increase the monitor_count.
++ */
++ if (conf->type == IEEE80211_IF_TYPE_MNTR) {
++ intf->monitor_count++;
++ } else
++#endif
++ {
++ intf->id = conf->if_id;
++ intf->type = conf->type;
++ if (conf->type == IEEE80211_IF_TYPE_AP)
++ memcpy(&intf->bssid, conf->mac_addr, ETH_ALEN);
++ memcpy(&intf->mac, conf->mac_addr, ETH_ALEN);
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ intf->iff_filter = 0;
++#endif
++ }
+
+ /*
+ * The MAC adddress must be configured after the device
+@@ -218,6 +275,9 @@
+ */
+ rt2x00lib_config_mac_addr(rt2x00dev, intf->mac);
+ rt2x00lib_config_type(rt2x00dev, conf->type);
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ rt2x00mac_configure_filter(rt2x00dev);
++#endif
+
+ return 0;
+ }
+@@ -235,13 +295,30 @@
+ * no interface is present.
+ */
+ if (!test_bit(DEVICE_PRESENT, &rt2x00dev->flags) ||
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ conf->type != IEEE80211_IF_TYPE_MNTR &&
++#endif
+ !is_interface_present(intf))
+ return;
+
+- intf->id = 0;
+- intf->type = INVALID_INTERFACE;
+- memset(&intf->bssid, 0x00, ETH_ALEN);
+- memset(&intf->mac, 0x00, ETH_ALEN);
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ /*
++ * When removing an monitor interface, decrease monitor_count.
++ * For non-monitor interfaces, all interface data needs to be reset.
++ */
++ if (conf->type == IEEE80211_IF_TYPE_MNTR) {
++ intf->monitor_count--;
++ } else if (intf->type == conf->type)
++#endif
++ {
++ intf->id = 0;
++ intf->type = INVALID_INTERFACE;
++ memset(&intf->bssid, 0x00, ETH_ALEN);
++ memset(&intf->mac, 0x00, ETH_ALEN);
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ intf->iff_filter = 0;
++#endif
++ }
+
+ /*
+ * Make sure the bssid and mac address registers
+@@ -250,6 +327,11 @@
+ rt2x00lib_config_mac_addr(rt2x00dev, intf->mac);
+ rt2x00lib_config_bssid(rt2x00dev, intf->bssid);
+ rt2x00lib_config_type(rt2x00dev, intf->type);
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ rt2x00mac_configure_filter(rt2x00dev);
++ if (!is_monitor_present(intf))
++ rt2x00mac_stop(hw);
++#endif
+ }
+ EXPORT_SYMBOL_GPL(rt2x00mac_remove_interface);
+
+@@ -303,6 +385,14 @@
+ if (!test_bit(DEVICE_PRESENT, &rt2x00dev->flags))
+ return 0;
+
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ /*
++ * Monitor mode does not need configuring.
++ */
++ if (conf->type == IEEE80211_IF_TYPE_MNTR)
++ return 0;
++#endif
++
+ /*
+ * If the given type does not match the configured type,
+ * there has been a problem.
+@@ -335,6 +425,18 @@
+ }
+ EXPORT_SYMBOL_GPL(rt2x00mac_config_interface);
+
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++void rt2x00mac_set_multicast_list(struct ieee80211_hw *hw,
++ unsigned short iff_filter, int mc_count)
++{
++ struct rt2x00_dev *rt2x00dev = hw->priv;
++
++ rt2x00dev->interface.iff_filter = iff_filter;
++ rt2x00mac_configure_filter(rt2x00dev);
++}
++EXPORT_SYMBOL_GPL(rt2x00mac_set_multicast_list);
++#endif
++
+ int rt2x00mac_get_stats(struct ieee80211_hw *hw,
+ struct ieee80211_low_level_stats *stats)
+ {
+--- rt2x00.orig/drivers/net/wireless/rt2x00/rt2x00dev.c
++++ rt2x00/drivers/net/wireless/rt2x00/rt2x00dev.c
+@@ -156,8 +156,10 @@
+ cancel_work_sync(&rt2x00dev->beacon_work);
+ if (work_pending(&rt2x00dev->filter_work))
+ cancel_work_sync(&rt2x00dev->filter_work);
++#ifndef RT2X00_SYNTHESISE_ERP_IE_CHANGED
+ if (work_pending(&rt2x00dev->config_work))
+ cancel_work_sync(&rt2x00dev->config_work);
++#endif
+
+ /*
+ * Stop the TX queues.
+@@ -422,11 +424,17 @@
+ struct rt2x00_dev *rt2x00dev =
+ container_of(work, struct rt2x00_dev, filter_work);
+
+- rt2x00dev->ops->hw->configure_filter(rt2x00dev->hw,
+- FIF_RT2X00_USE_CURRENT, NULL,
+- 0, NULL);
++#ifdef RT2X00_ADAPT_OLD_FILTER_API
++ rt2x00dev->ops->lib
++#else
++ rt2x00dev->ops->hw
++#endif
++ ->configure_filter(rt2x00dev->hw,
++ FIF_RT2X00_USE_CURRENT, NULL,
++ 0, NULL);
+ }
+
++#ifndef RT2X00_SYNTHESISE_ERP_IE_CHANGED
+ static void rt2x00lib_configuration_scheduled(struct work_struct *work)
+ {
+ struct rt2x00_dev *rt2x00dev =
+@@ -436,6 +444,7 @@
+ rt2x00mac_erp_ie_changed(rt2x00dev->hw,
+ IEEE80211_ERP_CHANGE_PREAMBLE, 0, preamble);
+ }
++#endif
+
+ /*
+ * Interrupt context handlers.
+@@ -1150,7 +1159,9 @@
+ */
+ INIT_WORK(&rt2x00dev->beacon_work, rt2x00lib_beacondone_scheduled);
+ INIT_WORK(&rt2x00dev->filter_work, rt2x00lib_packetfilter_scheduled);
++#ifndef RT2X00_SYNTHESISE_ERP_IE_CHANGED
+ INIT_WORK(&rt2x00dev->config_work, rt2x00lib_configuration_scheduled);
++#endif
+ INIT_DELAYED_WORK(&rt2x00dev->link.work, rt2x00lib_link_tuner);
+
+ /*
+--- rt2x00.orig/drivers/net/wireless/rt2x00/rt2x00config.c
++++ rt2x00/drivers/net/wireless/rt2x00/rt2x00config.c
+@@ -227,6 +227,9 @@
+
+ libconf.basic_rates =
+ DEVICE_GET_RATE_FIELD(rate->val, RATEMASK) & DEV_BASIC_RATEMASK;
++#ifdef RT2X00_SYNTHESISE_ERP_IE_CHANGED
++ libconf.preamble = !!DEVICE_GET_RATE_FIELD(rate->val2, PREAMBLE);
++#endif
+ }
+
+ if (flags & CONFIG_UPDATE_CHANNEL) {
Deleted: tags/rt2x00-2.0.12+git20071103/debian/patches/004_fix_filter_flags.diff
===================================================================
--- unstable/rt2x00/debian/patches/004_fix_filter_flags.diff 2007-11-11 22:54:12 UTC (rev 79)
+++ tags/rt2x00-2.0.12+git20071103/debian/patches/004_fix_filter_flags.diff 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,207 +0,0 @@
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt2400pci.c
-+++ rt2x00/drivers/net/wireless/rt2x00/rt2400pci.c
-@@ -1511,8 +1511,8 @@
- * - Some filters are set based on interface type.
- */
- *total_flags |= FIF_ALLMULTI;
-- if (changed_flags & FIF_OTHER_BSS ||
-- changed_flags & FIF_PROMISC_IN_BSS)
-+ if (*total_flags & FIF_OTHER_BSS ||
-+ *total_flags & FIF_PROMISC_IN_BSS)
- *total_flags |= FIF_PROMISC_IN_BSS | FIF_OTHER_BSS;
- if (is_interface_type(intf, IEEE80211_IF_TYPE_AP))
- *total_flags |= FIF_PROMISC_IN_BSS;
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt2500pci.c
-+++ rt2x00/drivers/net/wireless/rt2x00/rt2500pci.c
-@@ -1844,8 +1844,8 @@
- */
- if (mc_count)
- *total_flags |= FIF_ALLMULTI;
-- if (changed_flags & FIF_OTHER_BSS ||
-- changed_flags & FIF_PROMISC_IN_BSS)
-+ if (*total_flags & FIF_OTHER_BSS ||
-+ *total_flags & FIF_PROMISC_IN_BSS)
- *total_flags |= FIF_PROMISC_IN_BSS | FIF_OTHER_BSS;
- if (is_interface_type(intf, IEEE80211_IF_TYPE_AP))
- *total_flags |= FIF_PROMISC_IN_BSS;
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt2500usb.c
-+++ rt2x00/drivers/net/wireless/rt2x00/rt2500usb.c
-@@ -1594,8 +1594,14 @@
- {
- struct rt2x00_dev *rt2x00dev = hw->priv;
- struct interface *intf = &rt2x00dev->interface;
-+ unsigned int flags;
- u16 reg;
-
-+ if (changed_flags & FIF_RT2X00_USE_CURRENT) {
-+ flags = *(volatile unsigned int *)&intf->filter;
-+ goto configure;
-+ }
-+
- /*
- * Mask off any flags we are going to ignore from
- * the total_flags field.
-@@ -1616,8 +1622,8 @@
- */
- if (mc_count)
- *total_flags |= FIF_ALLMULTI;
-- if (changed_flags & FIF_OTHER_BSS ||
-- changed_flags & FIF_PROMISC_IN_BSS)
-+ if (*total_flags & FIF_OTHER_BSS ||
-+ *total_flags & FIF_PROMISC_IN_BSS)
- *total_flags |= FIF_PROMISC_IN_BSS | FIF_OTHER_BSS;
- if (is_interface_type(intf, IEEE80211_IF_TYPE_AP))
- *total_flags |= FIF_PROMISC_IN_BSS;
-@@ -1627,7 +1633,8 @@
- */
- if (intf->filter == *total_flags)
- return;
-- intf->filter = *total_flags;
-+ flags = *total_flags;
-+ *(volatile unsigned int *)&intf->filter = flags;
-
- /*
- * When in atomic context, reschedule and let rt2x00lib
-@@ -1638,6 +1645,7 @@
- return;
- }
-
-+configure:
- /*
- * Start configuration steps.
- * Note that the version error will always be dropped
-@@ -1646,18 +1654,18 @@
- */
- rt2500usb_register_read(rt2x00dev, TXRX_CSR2, ®);
- rt2x00_set_field16(®, TXRX_CSR2_DROP_CRC,
-- !(*total_flags & FIF_FCSFAIL));
-+ !(flags & FIF_FCSFAIL));
- rt2x00_set_field16(®, TXRX_CSR2_DROP_PHYSICAL,
-- !(*total_flags & FIF_PLCPFAIL));
-+ !(flags & FIF_PLCPFAIL));
- rt2x00_set_field16(®, TXRX_CSR2_DROP_CONTROL,
-- !(*total_flags & FIF_CONTROL));
-+ !(flags & FIF_CONTROL));
- rt2x00_set_field16(®, TXRX_CSR2_DROP_NOT_TO_ME,
-- !(*total_flags & FIF_PROMISC_IN_BSS));
-+ !(flags & FIF_PROMISC_IN_BSS));
- rt2x00_set_field16(®, TXRX_CSR2_DROP_TODS,
-- !(*total_flags & FIF_PROMISC_IN_BSS));
-+ !(flags & FIF_PROMISC_IN_BSS));
- rt2x00_set_field16(®, TXRX_CSR2_DROP_VERSION_ERROR, 1);
- rt2x00_set_field16(®, TXRX_CSR2_DROP_MULTICAST,
-- !(*total_flags & FIF_ALLMULTI));
-+ !(flags & FIF_ALLMULTI));
- rt2x00_set_field16(®, TXRX_CSR2_DROP_BROADCAST, 0);
- rt2500usb_register_write(rt2x00dev, TXRX_CSR2, reg);
- }
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt61pci.c
-+++ rt2x00/drivers/net/wireless/rt2x00/rt61pci.c
-@@ -2403,8 +2403,8 @@
- */
- if (mc_count)
- *total_flags |= FIF_ALLMULTI;
-- if (changed_flags & FIF_OTHER_BSS ||
-- changed_flags & FIF_PROMISC_IN_BSS)
-+ if (*total_flags & FIF_OTHER_BSS ||
-+ *total_flags & FIF_PROMISC_IN_BSS)
- *total_flags |= FIF_PROMISC_IN_BSS | FIF_OTHER_BSS;
- if (is_interface_type(intf, IEEE80211_IF_TYPE_AP))
- *total_flags |= FIF_PROMISC_IN_BSS;
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt73usb.c
-+++ rt2x00/drivers/net/wireless/rt2x00/rt73usb.c
-@@ -1848,8 +1848,14 @@
- {
- struct rt2x00_dev *rt2x00dev = hw->priv;
- struct interface *intf = &rt2x00dev->interface;
-+ unsigned int flags;
- u32 reg;
-
-+ if (changed_flags & FIF_RT2X00_USE_CURRENT) {
-+ flags = *(volatile unsigned int *)&intf->filter;
-+ goto configure;
-+ }
-+
- /*
- * Mask off any flags we are going to ignore from
- * the total_flags field.
-@@ -1870,8 +1876,8 @@
- */
- if (mc_count)
- *total_flags |= FIF_ALLMULTI;
-- if (changed_flags & FIF_OTHER_BSS ||
-- changed_flags & FIF_PROMISC_IN_BSS)
-+ if (*total_flags & FIF_OTHER_BSS ||
-+ *total_flags & FIF_PROMISC_IN_BSS)
- *total_flags |= FIF_PROMISC_IN_BSS | FIF_OTHER_BSS;
- if (is_interface_type(intf, IEEE80211_IF_TYPE_AP))
- *total_flags |= FIF_PROMISC_IN_BSS;
-@@ -1881,7 +1887,8 @@
- */
- if (intf->filter == *total_flags)
- return;
-- intf->filter = *total_flags;
-+ flags = *total_flags;
-+ *(volatile unsigned int *)&intf->filter = flags;
-
- /*
- * When in atomic context, reschedule and let rt2x00lib
-@@ -1892,6 +1899,7 @@
- return;
- }
-
-+configure:
- /*
- * Start configuration steps.
- * Note that the version error will always be dropped
-@@ -1900,18 +1908,18 @@
- */
- rt73usb_register_read(rt2x00dev, TXRX_CSR0, ®);
- rt2x00_set_field32(®, TXRX_CSR0_DROP_CRC,
-- !(*total_flags & FIF_FCSFAIL));
-+ !(flags & FIF_FCSFAIL));
- rt2x00_set_field32(®, TXRX_CSR0_DROP_PHYSICAL,
-- !(*total_flags & FIF_PLCPFAIL));
-+ !(flags & FIF_PLCPFAIL));
- rt2x00_set_field32(®, TXRX_CSR0_DROP_CONTROL,
-- !(*total_flags & FIF_CONTROL));
-+ !(flags & FIF_CONTROL));
- rt2x00_set_field32(®, TXRX_CSR0_DROP_NOT_TO_ME,
-- !(*total_flags & FIF_PROMISC_IN_BSS));
-+ !(flags & FIF_PROMISC_IN_BSS));
- rt2x00_set_field32(®, TXRX_CSR0_DROP_TO_DS,
-- !(*total_flags & FIF_PROMISC_IN_BSS));
-+ !(flags & FIF_PROMISC_IN_BSS));
- rt2x00_set_field32(®, TXRX_CSR0_DROP_VERSION_ERROR, 1);
- rt2x00_set_field32(®, TXRX_CSR0_DROP_MULTICAST,
-- !(*total_flags & FIF_ALLMULTI));
-+ !(flags & FIF_ALLMULTI));
- rt2x00_set_field32(®, TXRX_CSR0_DROP_BROADCAST, 0);
- rt2x00_set_field32(®, TXRX_CSR0_DROP_ACK_CTS, 1);
- rt73usb_register_write(rt2x00dev, TXRX_CSR0, reg);
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt2x00dev.c
-+++ rt2x00/drivers/net/wireless/rt2x00/rt2x00dev.c
-@@ -281,8 +281,7 @@
- container_of(work, struct rt2x00_dev, filter_work);
-
- rt2x00dev->ops->hw->configure_filter(rt2x00dev->hw,
-- rt2x00dev->interface.filter,
-- &rt2x00dev->interface.filter,
-+ FIF_RT2X00_USE_CURRENT, NULL,
- 0, NULL);
- }
-
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt2x00.h
-+++ rt2x00/drivers/net/wireless/rt2x00/rt2x00.h
-@@ -315,6 +315,11 @@
- unsigned int filter;
- };
-
-+/* Magic filter for configure_filter to apply existing filter */
-+enum {
-+ FIF_RT2X00_USE_CURRENT = 1<<30
-+};
-+
- static inline int is_interface_present(struct interface *intf)
- {
- return !!intf->id;
Copied: tags/rt2x00-2.0.12+git20071103/debian/patches/004_fix_filter_flags.diff (from rev 85, unstable/rt2x00/debian/patches/004_fix_filter_flags.diff)
===================================================================
--- tags/rt2x00-2.0.12+git20071103/debian/patches/004_fix_filter_flags.diff (rev 0)
+++ tags/rt2x00-2.0.12+git20071103/debian/patches/004_fix_filter_flags.diff 2007-11-12 00:30:15 UTC (rev 86)
@@ -0,0 +1,157 @@
+--- rt2x00.orig/drivers/net/wireless/rt2x00/rt2500usb.c
++++ rt2x00/drivers/net/wireless/rt2x00/rt2500usb.c
+@@ -1616,8 +1616,14 @@
+ {
+ struct rt2x00_dev *rt2x00dev = hw->priv;
+ struct interface *intf = &rt2x00dev->interface;
++ unsigned int flags;
+ u16 reg;
+
++ if (changed_flags & FIF_RT2X00_USE_CURRENT) {
++ flags = *(volatile unsigned int *)&intf->filter;
++ goto configure;
++ }
++
+ /*
+ * Mask off any flags we are going to ignore from
+ * the total_flags field.
+@@ -1649,7 +1655,8 @@
+ */
+ if (intf->filter == *total_flags)
+ return;
+- intf->filter = *total_flags;
++ flags = *total_flags;
++ *(volatile unsigned int *)&intf->filter = flags;
+
+ /*
+ * When in atomic context, reschedule and let rt2x00lib
+@@ -1660,6 +1667,7 @@
+ return;
+ }
+
++configure:
+ /*
+ * Start configuration steps.
+ * Note that the version error will always be dropped
+@@ -1668,18 +1676,18 @@
+ */
+ rt2500usb_register_read(rt2x00dev, TXRX_CSR2, ®);
+ rt2x00_set_field16(®, TXRX_CSR2_DROP_CRC,
+- !(*total_flags & FIF_FCSFAIL));
++ !(flags & FIF_FCSFAIL));
+ rt2x00_set_field16(®, TXRX_CSR2_DROP_PHYSICAL,
+- !(*total_flags & FIF_PLCPFAIL));
++ !(flags & FIF_PLCPFAIL));
+ rt2x00_set_field16(®, TXRX_CSR2_DROP_CONTROL,
+- !(*total_flags & FIF_CONTROL));
++ !(flags & FIF_CONTROL));
+ rt2x00_set_field16(®, TXRX_CSR2_DROP_NOT_TO_ME,
+- !(*total_flags & FIF_PROMISC_IN_BSS));
++ !(flags & FIF_PROMISC_IN_BSS));
+ rt2x00_set_field16(®, TXRX_CSR2_DROP_TODS,
+- !(*total_flags & FIF_PROMISC_IN_BSS));
++ !(flags & FIF_PROMISC_IN_BSS));
+ rt2x00_set_field16(®, TXRX_CSR2_DROP_VERSION_ERROR, 1);
+ rt2x00_set_field16(®, TXRX_CSR2_DROP_MULTICAST,
+- !(*total_flags & FIF_ALLMULTI));
++ !(flags & FIF_ALLMULTI));
+ rt2x00_set_field16(®, TXRX_CSR2_DROP_BROADCAST, 0);
+ rt2500usb_register_write(rt2x00dev, TXRX_CSR2, reg);
+ }
+--- rt2x00.orig/drivers/net/wireless/rt2x00/rt73usb.c
++++ rt2x00/drivers/net/wireless/rt2x00/rt73usb.c
+@@ -1851,8 +1851,14 @@
+ {
+ struct rt2x00_dev *rt2x00dev = hw->priv;
+ struct interface *intf = &rt2x00dev->interface;
++ unsigned int flags;
+ u32 reg;
+
++ if (changed_flags & FIF_RT2X00_USE_CURRENT) {
++ flags = *(volatile unsigned int *)&intf->filter;
++ goto configure;
++ }
++
+ /*
+ * Mask off any flags we are going to ignore from
+ * the total_flags field.
+@@ -1884,7 +1890,8 @@
+ */
+ if (intf->filter == *total_flags)
+ return;
+- intf->filter = *total_flags;
++ flags = *total_flags;
++ *(volatile unsigned int *)&intf->filter = flags;
+
+ /*
+ * When in atomic context, reschedule and let rt2x00lib
+@@ -1895,6 +1902,7 @@
+ return;
+ }
+
++configure:
+ /*
+ * Start configuration steps.
+ * Note that the version error will always be dropped
+@@ -1903,18 +1911,18 @@
+ */
+ rt73usb_register_read(rt2x00dev, TXRX_CSR0, ®);
+ rt2x00_set_field32(®, TXRX_CSR0_DROP_CRC,
+- !(*total_flags & FIF_FCSFAIL));
++ !(flags & FIF_FCSFAIL));
+ rt2x00_set_field32(®, TXRX_CSR0_DROP_PHYSICAL,
+- !(*total_flags & FIF_PLCPFAIL));
++ !(flags & FIF_PLCPFAIL));
+ rt2x00_set_field32(®, TXRX_CSR0_DROP_CONTROL,
+- !(*total_flags & FIF_CONTROL));
++ !(flags & FIF_CONTROL));
+ rt2x00_set_field32(®, TXRX_CSR0_DROP_NOT_TO_ME,
+- !(*total_flags & FIF_PROMISC_IN_BSS));
++ !(flags & FIF_PROMISC_IN_BSS));
+ rt2x00_set_field32(®, TXRX_CSR0_DROP_TO_DS,
+- !(*total_flags & FIF_PROMISC_IN_BSS));
++ !(flags & FIF_PROMISC_IN_BSS));
+ rt2x00_set_field32(®, TXRX_CSR0_DROP_VERSION_ERROR, 1);
+ rt2x00_set_field32(®, TXRX_CSR0_DROP_MULTICAST,
+- !(*total_flags & FIF_ALLMULTI));
++ !(flags & FIF_ALLMULTI));
+ rt2x00_set_field32(®, TXRX_CSR0_DROP_BROADCAST, 0);
+ rt2x00_set_field32(®, TXRX_CSR0_DROP_ACK_CTS, 1);
+ rt73usb_register_write(rt2x00dev, TXRX_CSR0, reg);
+--- rt2x00.orig/drivers/net/wireless/rt2x00/rt2x00.h
++++ rt2x00/drivers/net/wireless/rt2x00/rt2x00.h
+@@ -393,6 +393,11 @@
+ unsigned int filter;
+ };
+
++/* Magic filter for configure_filter to apply existing filter */
++enum {
++ FIF_RT2X00_USE_CURRENT = 1<<30
++};
++
+ static inline int is_interface_present(struct interface *intf)
+ {
+ return !!intf->id;
+--- rt2x00.orig/drivers/net/wireless/rt2x00/rt2x00dev.c
++++ rt2x00/drivers/net/wireless/rt2x00/rt2x00dev.c
+@@ -421,18 +421,10 @@
+ {
+ struct rt2x00_dev *rt2x00dev =
+ container_of(work, struct rt2x00_dev, filter_work);
+- unsigned int filter = rt2x00dev->interface.filter;
+-
+- /*
+- * Since we had stored the filter inside interface.filter,
+- * we should now clear that field. Otherwise the driver will
+- * assume nothing has changed (*total_flags will be compared
+- * to interface.filter to determine if any action is required).
+- */
+- rt2x00dev->interface.filter = 0;
+
+ rt2x00dev->ops->hw->configure_filter(rt2x00dev->hw,
+- filter, &filter, 0, NULL);
++ FIF_RT2X00_USE_CURRENT, NULL,
++ 0, NULL);
+ }
+
+ static void rt2x00lib_configuration_scheduled(struct work_struct *work)
Deleted: tags/rt2x00-2.0.12+git20071103/debian/patches/005_fix_probe_148f_2573.diff
===================================================================
--- unstable/rt2x00/debian/patches/005_fix_probe_148f_2573.diff 2007-11-11 22:54:12 UTC (rev 79)
+++ tags/rt2x00-2.0.12+git20071103/debian/patches/005_fix_probe_148f_2573.diff 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,72 +0,0 @@
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt2500usb.c
-+++ rt2x00/drivers/net/wireless/rt2x00/rt2500usb.c
-@@ -1278,6 +1278,7 @@
- static int rt2500usb_init_eeprom(struct rt2x00_dev *rt2x00dev)
- {
- u16 reg;
-+ __le32 reg32;
- u16 value;
- u16 eeprom;
-
-@@ -1291,12 +1292,13 @@
- */
- value = rt2x00_get_field16(eeprom, EEPROM_ANTENNA_RF_TYPE);
- rt2500usb_register_read(rt2x00dev, MAC_CSR0, ®);
-- rt2x00_set_chip(rt2x00dev, RT2570, value, reg);
--
-- if (rt2x00_rev(&rt2x00dev->chip, 0xffff0)) {
-+ rt2500usb_register_multiread(rt2x00dev, MAC_RT73_CSR0,
-+ ®32, sizeof(reg32));
-+ if ((reg & 0xfff0) || (le32_to_cpu(reg32) & 0xffff0) == 0x25730) {
- ERROR(rt2x00dev, "Invalid RT chipset detected.\n");
- return -ENODEV;
- }
-+ rt2x00_set_chip(rt2x00dev, RT2570, value, reg);
-
- if (!rt2x00_rf(&rt2x00dev->chip, RF2522) &&
- !rt2x00_rf(&rt2x00dev->chip, RF2523) &&
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt2500usb.h
-+++ rt2x00/drivers/net/wireless/rt2x00/rt2500usb.h
-@@ -73,6 +73,11 @@
- #define MAC_CSR0 0x0400
-
- /*
-+ * MAC_RT73_CSR0: ASIC revision number in RT73, for use when probing.
-+ */
-+#define MAC_RT73_CSR0 0x3000
-+
-+/*
- * MAC_CSR1: System control.
- * SOFT_RESET: Software reset, 1: reset, 0: normal.
- * BBP_RESET: Hardware reset, 1: reset, 0, release.
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt2x00.h
-+++ rt2x00/drivers/net/wireless/rt2x00/rt2x00.h
-@@ -811,11 +811,6 @@
- return chipset->rev;
- }
-
--static inline u16 rt2x00_rev(const struct rt2x00_chip *chipset, const u32 mask)
--{
-- return chipset->rev & mask;
--}
--
- /*
- * Duration calculations
- * The rate variable passed is: 100kbs.
---- rt2x00.orig/drivers/net/wireless/rt2x00/rt73usb.c
-+++ rt2x00/drivers/net/wireless/rt2x00/rt73usb.c
-@@ -1530,12 +1530,11 @@
- */
- value = rt2x00_get_field16(eeprom, EEPROM_ANTENNA_RF_TYPE);
- rt73usb_register_read(rt2x00dev, MAC_CSR0, ®);
-- rt2x00_set_chip(rt2x00dev, RT2571, value, reg);
--
-- if (!rt2x00_rev(&rt2x00dev->chip, 0x25730)) {
-+ if ((reg & 0xffff0) != 0x25730) {
- ERROR(rt2x00dev, "Invalid RT chipset detected.\n");
- return -ENODEV;
- }
-+ rt2x00_set_chip(rt2x00dev, RT2571, value, reg);
-
- if (!rt2x00_rf(&rt2x00dev->chip, RF5226) &&
- !rt2x00_rf(&rt2x00dev->chip, RF2528) &&
Deleted: tags/rt2x00-2.0.12+git20071103/debian/patches/series
===================================================================
--- unstable/rt2x00/debian/patches/series 2007-11-11 22:54:12 UTC (rev 79)
+++ tags/rt2x00-2.0.12+git20071103/debian/patches/series 2007-11-12 00:30:15 UTC (rev 86)
@@ -1,4 +0,0 @@
-002_out_of_tree.diff
-004_fix_filter_flags.diff
-003_workaround_mac80211_changes.diff
-005_fix_probe_148f_2573.diff
Copied: tags/rt2x00-2.0.12+git20071103/debian/patches/series (from rev 85, unstable/rt2x00/debian/patches/series)
===================================================================
--- tags/rt2x00-2.0.12+git20071103/debian/patches/series (rev 0)
+++ tags/rt2x00-2.0.12+git20071103/debian/patches/series 2007-11-12 00:30:15 UTC (rev 86)
@@ -0,0 +1,3 @@
+002_out_of_tree.diff
+004_fix_filter_flags.diff
+003_workaround_mac80211_changes.diff
More information about the Pkg-ralink-commits
mailing list