Package: rt2500-source
Followup-For: Bug #406825

Heres the patch file with test for kernel-versions.

I did not test 2.6.19 because of #390924



-- System Information:
Debian Release: 4.0
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.20-rc5
Locale: LANG=en_US, LC_CTYPE=en_US (charmap=ISO-8859-1)

Versions of packages rt2500-source depends on:
ii  debhelper                     5.0.42     helper programs for debian/rules
ii  module-assistant              0.10.9     tool to make module package creati

rt2500-source recommends no packages.

-- no debconf information
Only in rt2500-new/debian: control.backup
Only in rt2500-new/debian: README.Debian.backup
Only in rt2500-old/debian: rt2500-modules-2.6.20-rc5
diff -pur rt2500-old/mlme.c rt2500-new/mlme.c
--- rt2500-old/mlme.c	2006-11-28 08:00:02.000000000 +0000
+++ rt2500-new/mlme.c	2007-01-14 14:38:20.000000000 +0000
@@ -357,9 +357,15 @@ VOID MlmeHandler(
     schedule_work(&pAd->mlme_work);
 }
 
+# if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20))
+VOID MlmeWork(struct work_struct *work)
+{
+    PRTMP_ADAPTER pAd = container_of(work, struct _RTMP_ADAPTER ,mlme_work);
+# else /* 2.6.20 patch "older kernels" */
 VOID MlmeWork(void *vpAd)
 {
-    PRTMP_ADAPTER pAd = vpAd;
+      PRTMP_ADAPTER pAd = vpAd;
+#endif /* 2.6.20 patch */
 #endif
     MLME_QUEUE_ELEM        *Elem = NULL;
     unsigned long flags;
Only in rt2500-new: rt2500
diff -pur rt2500-old/rtmp_init.c rt2500-new/rtmp_init.c
--- rt2500-old/rtmp_init.c	2006-06-16 07:07:25.000000000 +0000
+++ rt2500-new/rtmp_init.c	2007-01-14 14:31:26.000000000 +0000
@@ -916,7 +916,13 @@ VOID    NICInitAsicFromEEPROM(
 	DBGPRINT(RT_DEBUG_TRACE, "<-- NICInitAsicFromEEPROM\n");
 }
 
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20))
+extern VOID MlmeWork(struct work_struct *work);
+#else 
 extern VOID MlmeWork(void *vpAd);
+#endif
+    
+extern VOID MlmeWork(struct work_struct *work);
 
 void NICInitializeAdapter(IN    PRTMP_ADAPTER   pAdapter)
 {
@@ -974,7 +980,9 @@ void NICInitializeAdapter(IN    PRTMP_AD
     // Initialze ASIC for TX & Rx operation
     NICInitializeAsic(pAdapter);
 
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0))
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20))
+    INIT_WORK(&pAdapter->mlme_work, MlmeWork);
+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0))
     INIT_WORK(&pAdapter->mlme_work, MlmeWork, (void*)pAdapter);
 #endif
     DBGPRINT(RT_DEBUG_TRACE, "<-- NICInitializeAdapter\n");
Only in rt2500-old: .rtmp_init.o.d

Reply via email to