Mike Cohler wrote:
Andy Green <andy <at> warmcat.com> writes:
IEEE80211_API := $(shell sed -ne
"s:\#define.*IEEE80211_API_VERSION[^0-9]*\([0-9]*\).*:\1:p"
$(IEEE80211_PATH)net/ieee80211.h)
destroying its wrongly computed version by adding this:
IEEE80211_API := 2
Hi Andy
I have been following this with considerable interest.
Can you confirm that you did not touch the ieee80211 subsystem at all in the new
kernel and left it as git-1.1.13 , and the ONLY change that you made was to add
this one line
IEEE80211_API := 2
in the Makefile, with no other changes at all for the 1.1.0 driver and it
compiled OK????
Well that was the immediate problem that gave the symptom that the OP
reported. But it wasn't everything that had to be done.
If you made any other changes eg to the .h or .c files could you tell us exactly
what was changed as I am very keen to get ipw3945 running again - it has been
unusable so far since I installed FC6 !
Note I am currently on 2798 kernel.
--- ipw3945-1.1.0/Makefile 2006-07-14 16:34:55.000000000 +0100
+++ ipw3945-1.1.0-good/Makefile 2006-10-05 19:22:10.000000000 +0100
@@ -89,8 +89,12 @@
IEEE80211_VER := $(shell $(DIR)/snapshot/check_ieee80211_compat
$(IEEE80211_PATH))
IEEE80211_API := $(shell sed -ne
"s:\#define.*IEEE80211_API_VERSION[^0-9]*\([0-9]*\).*:\1:p"
$(IEEE80211_PATH)net/ieee80211.h)
+
+IEEE80211_API := 2
+EXTRA_CFLAGS += -DIEEE80211_API_VERSION=2
+
ifeq ($(IEEE80211_API),)
- IEEE80211_API := $(shell [[ "$(IEEE80211_VER)" == 1.1.14* ]] && \
+ IEEE80211_API := $(shell [[ "$(IEEE80211_VER)" == 1.1.13* ]] && \
{ echo "2" ; } || \
{ ver=$(IEEE80211_VER); ver=$${ver\#*.} ; echo
$${ver%.*} ; })
EXTRA_CFLAGS += -DIEEE80211_API_VERSION=$(IEEE80211_API)
--- ipw3945-1.1.0/ipw3945.h 2006-11-14 08:12:02.000000000 +0000
+++ ipw3945-1.1.0-good/ipw3945.h 2006-10-25 13:39:21.000000000 +0100
@@ -29,7 +29,7 @@
#include <linux/module.h>
#include <linux/moduleparam.h>
-#include <linux/config.h>
+//#include <linux/config.h>
#include <linux/init.h>
#include <linux/version.h>
I also seem to recall having to
# ln -s /usr/src/kernels/2.6.18-1.2798.fc6
/lib/modules/2.6.18-1.2798.fc6/build
But maybe that was for something else. Anyway I think that was it, no
messing in ieee80211 stuff IIRC (as was necessary for earlier kernels).
On stability, it is generally good and because I hibernate a lot I don't
know if that provokes it, but sometimes I get a firmware error and
complaints about an Rx DMA error that cannot be stopped. Using the RF
killing Fn-F8 sequence seems to help with that.
In addition, I bring up wpa_supplicant by hand, I noticed that for some
reason the effect of
service wpa_supplicant restart
is not the same (does not seem to provoke resynchronization of the WPA
crypto) as
service wpa_supplicant stop
sleep 5
service wpa_supplicant start
hard to say how much that is specific to my AP, or laptop.
One last funny I see is that even after it is fully up and done dhcp,
there is no default route, so I add that in semi-manually as well.
Again it can be my specific dhcp server setup but I don't think it is.
-Andy