sync pcmcia-cs in trunk with whiterussian, add fix for memory ranges
authorFelix Fietkau <nbd@openwrt.org>
Tue, 5 Dec 2006 21:34:56 +0000 (21:34 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Tue, 5 Dec 2006 21:34:56 +0000 (21:34 +0000)
SVN-Revision: 5693

package/pcmcia-cs/patches/002-serial-cardctl_path.patch [new file with mode: 0644]
package/pcmcia-cs/patches/003-cardmgr_c.patch [new file with mode: 0644]
package/pcmcia-cs/patches/004-pcmcia_resources.patch [new file with mode: 0644]

diff --git a/package/pcmcia-cs/patches/002-serial-cardctl_path.patch b/package/pcmcia-cs/patches/002-serial-cardctl_path.patch
new file mode 100644 (file)
index 0000000..a66069b
--- /dev/null
@@ -0,0 +1,12 @@
+diff -urN pcmcia-cs-3.2.8-old/etc/shared pcmcia-cs-3.2.8-new/etc/shared
+--- pcmcia-cs-3.2.8-old/etc/shared     2004-02-28 17:49:45.000000000 +0100
++++ pcmcia-cs-3.2.8-new/etc/shared     2006-03-29 18:49:07.000000000 +0200
+@@ -167,7 +167,7 @@
+           STAB=/var/run/stab
+       fi
+       grep_stab $1 < $STAB || usage
+-      eval `/sbin/cardctl info $SOCKET`
++      eval `/usr/sbin/cardctl info $SOCKET`
+     fi
+ }
diff --git a/package/pcmcia-cs/patches/003-cardmgr_c.patch b/package/pcmcia-cs/patches/003-cardmgr_c.patch
new file mode 100644 (file)
index 0000000..7078db7
--- /dev/null
@@ -0,0 +1,42 @@
+diff -urN pcmcia-cs-3.2.8-old/cardmgr/cardmgr.c pcmcia-cs-3.2.8-new/cardmgr/cardmgr.c
+--- pcmcia-cs-3.2.8-old/cardmgr/cardmgr.c      2004-05-21 08:39:36.000000000 +0200
++++ pcmcia-cs-3.2.8-new/cardmgr/cardmgr.c      2006-03-29 20:27:03.000000000 +0200
+@@ -739,10 +739,7 @@
+     int ret;
+     strcpy(cmd, "insmod ");
+-    if (strchr(mod, '/') != NULL)
+-      sprintf(cmd+7, "%s/%s.o", modpath, mod);
+-    else
+-      sprintf(cmd+7, "%s/pcmcia/%s.o", modpath, mod);
++    sprintf(cmd+7, "%s/%s.o", modpath, mod);
+     if (access(cmd+7, R_OK) != 0) {
+       syslog(LOG_NOTICE, "module %s not available", cmd+7);
+       free(cmd);
+@@ -808,11 +805,13 @@
+     }
+     if (do_modprobe) {
+-      if (try_modprobe(mod, opts) != 0)
++      if (try_modprobe(mod, opts) != 0) {
+           try_insmod(mod, opts);
++      }
+     } else {
+-      if (try_insmod(mod, opts) != 0)
++      if (try_insmod(mod, opts) != 0) {
+           try_modprobe(mod, opts);
++      }
+     }
+ }
+@@ -1113,8 +1112,9 @@
+     /* remove kernel modules in inverse order */
+     for (i = 0; i < card->bindings; i++) {
+-      for (j = dev[i]->modules-1; j >= 0; j--)
++      for (j = dev[i]->modules-1; j >= 0; j--) {
+           remove_module(dev[i]->module[j]);
++      }
+       free_device(dev[i]);
+     }
+     /* Remove any MTD's bound to this socket */
diff --git a/package/pcmcia-cs/patches/004-pcmcia_resources.patch b/package/pcmcia-cs/patches/004-pcmcia_resources.patch
new file mode 100644 (file)
index 0000000..3be664b
--- /dev/null
@@ -0,0 +1,20 @@
+diff -ur pcmcia.old/etc/config.opts pcmcia.dev/etc/config.opts
+--- pcmcia.old/etc/config.opts 2003-12-06 07:09:24.000000000 +0100
++++ pcmcia.dev/etc/config.opts 2006-12-01 01:01:36.000000000 +0100
+@@ -17,14 +17,13 @@
+ #
+ include port 0x100-0x4ff, port 0x800-0x8ff, port 0xc00-0xcff
+-include memory 0xc0000-0xfffff
+-include memory 0xa0000000-0xa0ffffff, memory 0x60000000-0x60ffffff
++include memory 0x40004000-0x40007fff
+ # High port numbers do not always work...
+ # include port 0x1000-0x17ff
+ # Extra port range for IBM Token Ring
+-include port 0xa00-0xaff
++# include port 0xa00-0xaff
+ # Resources we should not use, even if they appear to be available