###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2011 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2012 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
VERSUFIX=ipfire$(KCFG)
-VER = 3.0-2
+VER = 3.2.5-1
THISAPP = compat-wireless-$(VER)
DL_FILE = compat-wireless-$(VER).tar.bz2
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
asix-3.5.0a.tar.bz2 = $(DL_FROM)/asix-3.5.0a.tar.bz2
-$(DL_FILE)_MD5 = 7f2d0de30bf9c3e9a941d9e67971e9b3
+$(DL_FILE)_MD5 = 19670520d7f0289a5b4c6fb28520b2ac
asix-3.5.0a.tar.bz2_MD5=cc57513505d3ad1a43b58add91d2bba7
install : $(TARGET)
# Build Updated asix usb-lan driver
cd $(DIR_APP)/drivers/net/usb && tar xvf $(DIR_DL)/asix-3.5.0a.tar.bz2
-ifeq "$(MACHINE_TYPE)" "arm"
- # B43+B44 driver doesn't build on arm
-# cd $(DIR_APP) && sed -i -e "s|CONFIG_B43=m||g" config.mk
-# cd $(DIR_APP) && sed -i -e "s|CONFIG_B44=m||g" config.mk
# Add libartas uAP driver
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/compat-wireless-3.0-libertas_uap.patch
cd $(DIR_APP)&& echo CONFIG_LIBERTAS_UAP=m >> config.mk
+
+ifeq "$(MACHINE_TYPE)" "arm"
+ # fix atomic64 functions
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/compat-wireless-3.2.5-1-fix_atomic64_t_on_arm.patch
endif
cd $(DIR_APP) && make KLIB=/lib/modules/$(KVER)-$(VERSUFIX) \
--- /dev/null
+diff -Naur compat-wireless-3.2.5-1.org/compat/compat_atomic.c compat-wireless-3.2.5-1/compat/compat_atomic.c
+--- compat-wireless-3.2.5-1.org/compat/compat_atomic.c 2012-02-07 04:45:51.000000000 +0100
++++ compat-wireless-3.2.5-1/compat/compat_atomic.c 2012-02-18 15:39:42.000000000 +0100
+@@ -3,6 +3,8 @@
+
+ #if !((LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,31)) && (defined(CONFIG_UML) || defined(CONFIG_X86))) && !((LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33)) && defined(CONFIG_ARM) && !defined(CONFIG_GENERIC_ATOMIC64))
+
++#include <asm-generic/atomic64.h>
++
+ static DEFINE_SPINLOCK(lock);
+
+ long long atomic64_read(const atomic64_t *v)
+diff -Naur compat-wireless-3.2.5-1.org/compat/Makefile compat-wireless-3.2.5-1/compat/Makefile
+--- compat-wireless-3.2.5-1.org/compat/Makefile 2012-02-07 05:25:54.000000000 +0100
++++ compat-wireless-3.2.5-1/compat/Makefile 2012-02-18 13:35:18.000000000 +0100
+@@ -38,3 +38,9 @@
+ cordic.o \
+ crc8.o
+
++
++ifndef CONFIG_64BIT
++ifndef CONFIG_GENERIC_ATOMIC64
++ compat-y += compat_atomic.o
++endif
++endif
+diff -Naur compat-wireless-3.2.5-1.org/net/mac80211/key.h compat-wireless-3.2.5-1/net/mac80211/key.h
+--- compat-wireless-3.2.5-1.org/net/mac80211/key.h 2012-02-07 05:25:53.000000000 +0100
++++ compat-wireless-3.2.5-1/net/mac80211/key.h 2012-02-18 15:40:44.000000000 +0100
+@@ -32,6 +32,8 @@
+
+ #define NUM_RX_DATA_QUEUES 16
+
++#include <asm-generic/atomic64.h>
++
+ struct ieee80211_local;
+ struct ieee80211_sub_if_data;
+ struct sta_info;