From: Luis R. Rodriguez Date: Fri, 11 Dec 2009 07:36:16 +0000 (-0800) Subject: Disable libertas and few compat fixes X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=5fea61640442d989b9dc4e51814cc5b851fac9d3;p=openwrt%2Fstaging%2Fblogic.git Disable libertas and few compat fixes Signed-off-by: Luis R. Rodriguez --- diff --git a/patches/17-netdev-queue.patch b/patches/17-netdev-queue.patch new file mode 100644 index 000000000000..1fa304f5d0ec --- /dev/null +++ b/patches/17-netdev-queue.patch @@ -0,0 +1,47 @@ +This patch addresses changes made by usage of new symbols +like unregister_netdevice_queue() which are not possible to backport +due to their reliance on internal symbols on net/core/dev.c + +The patch that introduced this on mac80211 was: + + mac80211: Speedup ieee80211_remove_interfaces() + + Speedup ieee80211_remove_interfaces() by factorizing synchronize_rcu() calls + + Signed-off-by: Eric Dumazet + Reviewed-by: Johannes Berg + Signed-off-by: John W. Linville + +--- a/net/mac80211/iface.c 2009-12-10 23:06:21.000000000 -0800 ++++ b/net/mac80211/iface.c 2009-12-10 23:09:50.000000000 -0800 +@@ -884,6 +884,7 @@ void ieee80211_if_remove(struct ieee8021 + * Remove all interfaces, may only be called at hardware unregistration + * time because it doesn't do RCU-safe list removals. + */ ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33)) + void ieee80211_remove_interfaces(struct ieee80211_local *local) + { + struct ieee80211_sub_if_data *sdata, *tmp; +@@ -900,6 +901,22 @@ void ieee80211_remove_interfaces(struct + mutex_unlock(&local->iflist_mtx); + unregister_netdevice_many(&unreg_list); + } ++#else ++void ieee80211_remove_interfaces(struct ieee80211_local *local) ++{ ++ struct ieee80211_sub_if_data *sdata, *tmp; ++ ++ ASSERT_RTNL(); ++ ++ list_for_each_entry_safe(sdata, tmp, &local->interfaces, list) { ++ mutex_lock(&local->iflist_mtx); ++ list_del(&sdata->list); ++ mutex_unlock(&local->iflist_mtx); ++ ++ unregister_netdevice(sdata->dev); ++ } ++} ++#endif + + static u32 ieee80211_idle_off(struct ieee80211_local *local, + const char *reason) diff --git a/patches/99-change-makefiles.patch b/patches/99-change-makefiles.patch index a8347ab2b886..35beaa87a9a7 100644 --- a/patches/99-change-makefiles.patch +++ b/patches/99-change-makefiles.patch @@ -38,9 +38,9 @@ only the wireless stuff. -obj-$(CONFIG_USB_NET_INT51X1) += int51x1.o -obj-$(CONFIG_USB_CDC_PHONET) += cdc-phonet.o ---- a/drivers/net/wireless/Makefile 2009-11-01 12:53:07.479194884 -0700 -+++ b/drivers/net/wireless/Makefile 2009-11-01 12:54:42.026195576 -0700 -@@ -5,33 +5,14 @@ +--- a/drivers/net/wireless/Makefile 2009-12-10 22:57:15.000000000 -0800 ++++ b/drivers/net/wireless/Makefile 2009-12-10 22:57:16.000000000 -0800 +@@ -5,36 +5,14 @@ obj-$(CONFIG_IPW2100) += ipw2x00/ obj-$(CONFIG_IPW2200) += ipw2x00/ @@ -71,9 +71,12 @@ only the wireless stuff. obj-$(CONFIG_USB_NET_RNDIS_WLAN) += rndis_wlan.o -obj-$(CONFIG_USB_ZD1201) += zd1201.o - obj-$(CONFIG_LIBERTAS) += libertas/ +-obj-$(CONFIG_LIBERTAS) += libertas/ +- +-obj-$(CONFIG_LIBERTAS_THINFIRM) += libertas_tf/ + + obj-$(CONFIG_ADM8211) += adm8211.o - obj-$(CONFIG_LIBERTAS_THINFIRM) += libertas_tf/ --- a/net/wireless/Makefile 2009-10-06 13:00:59.000000000 -0400 +++ b/net/wireless/Makefile 2009-10-06 13:00:59.000000000 -0400 @@ -4,11 +4,6 @@