From 5e7b8caca19c9c4d283977f139b7ca1f86a0ebc6 Mon Sep 17 00:00:00 2001
From: nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Date: Fri, 13 Jul 2007 08:23:22 +0000
Subject: [PATCH] fix madwifi unload/reload on SoC

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7958 3c298f89-4303-0410-b956-a3cf2f4a3e73
---
 package/madwifi/patches/120-soc_fix.patch | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/package/madwifi/patches/120-soc_fix.patch b/package/madwifi/patches/120-soc_fix.patch
index 2b06e1db5..0230b2db4 100644
--- a/package/madwifi/patches/120-soc_fix.patch
+++ b/package/madwifi/patches/120-soc_fix.patch
@@ -1,7 +1,7 @@
 Index: madwifi-ng-r2568-20070710/ath/if_ath_ahb.c
 ===================================================================
---- madwifi-ng-r2568-20070710.orig/ath/if_ath_ahb.c	2007-07-11 22:59:38.860063056 +0200
-+++ madwifi-ng-r2568-20070710/ath/if_ath_ahb.c	2007-07-11 22:59:42.668280075 +0200
+--- madwifi-ng-r2568-20070710.orig/ath/if_ath_ahb.c	2007-07-13 10:20:14.978836242 +0200
++++ madwifi-ng-r2568-20070710/ath/if_ath_ahb.c	2007-07-13 10:21:25.106832611 +0200
 @@ -275,11 +275,10 @@
  
  
@@ -15,14 +15,15 @@ Index: madwifi-ng-r2568-20070710/ath/if_ath_ahb.c
  	u_int16_t devid;
  
  	if (sc == NULL)
-@@ -289,13 +288,16 @@
+@@ -289,13 +288,17 @@
  	ath_detach(dev);
  	if (dev->irq)
  		free_irq(dev->irq, dev);
 -	sysType = get_system_type();
 -	if (!strcmp(sysType, "Atheros AR5315"))
 +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,19)
-+	devid = (u32) config->tag;
++	devid = sc->aps_sc.devid;
++	config->tag = (unsigned long) devid;
 +#else
 +	if (!strcmp(get_system_type(), "Atheros AR5315"))
  		devid = (u_int16_t) (sysRegRead(AR5315_SREV) &
@@ -34,7 +35,7 @@ Index: madwifi-ng-r2568-20070710/ath/if_ath_ahb.c
  
  	ahb_disable_wmac(devid, wlanNum);
  	free_netdev(dev);
-@@ -401,7 +403,7 @@
+@@ -401,7 +404,7 @@
  
  static int ahb_wmac_remove(struct platform_device *pdev)
  {
-- 
2.20.1