Re: pcmcia-cs.20-Mar-98

Theodore Y. Ts'o (tytso@MIT.EDU)
Mon, 23 Mar 1998 14:54:15 -0500


Date: Sat, 21 Mar 1998 10:59:42 -0800 (PST)
From: Bob Lorenzini <hwm@netcom.com>

I see that /New/pcmcia-cs.20-Mar-98.tar.gz is out but it still needs:

/pcmcia/include/linux/config.h
#define CONFIG_MAX_MEMSIZE 1024

This is for the latest 2.1.x. I don't know if this addition breaks the
compile for earlier kernels but is necessary for 2.1.90.

This is a configurable option; your workaround works as long as the
kernel was configured with the default value for CONFIG_MAX_MEMSIZE.

Here's a patch to pcmcia's Configure script which *mostly* works. It
reads CONFIG_MAX_MEMSIZE either from a kernel source tree, or manually
from the keyboard. So as long as you pick one of those two options when
you run "make config" in the pcmcia directory, you'll be OK.

I haven't figured out a way to read CONFIG_MAX_MEMSIZE out of a running
kernel, though. I don't think it's currently possible; we'd probably
have to make a /proc interface to make this possible.

- Ted

--- Configure 1998/03/19 20:57:34 1.1
+++ Configure 1998/03/19 21:42:05
@@ -82,13 +82,17 @@
echo "#define $1 \"$value\"" >> $CONFIG_H
}

-prompt () {
+prompt_no_write () {
export $2
default=`eval echo '$'$2`
/bin/echo "$1 [$default]: \c"
read answer
if [ -z "$answer" ] ; then answer="$default" ; fi
eval "$2"=\"$answer\"
+}
+
+prompt () {
+ prompt_no_write "$1" "$2"
write_value $2
}

@@ -124,6 +128,9 @@

#=======================================================================

+# Default CONFIG_MAX_MEMSIZE to 1024
+CONFIG_MAX_MEMSIZE=1024
+
echo ""
echo "The PCMCIA drivers need to be compiled to match the kernel they"
echo "will be used with, or some or all of the modules may fail to load."
@@ -176,6 +183,14 @@
fi
}

+config_get_value() {
+ get_tmp=`grep "^$1=" $AUTOCONF`
+ if [ x$get_tmp != x ]; then
+ echo "Getting value: $get_tmp"
+ eval $get_tmp
+ fi
+}
+
printflag() {
value=`eval echo '$'$2`
/bin/echo " $1 is \c"
@@ -200,6 +215,7 @@
printflag "Module version checking" CONFIG_MODVERSIONS
printflag "PCMCIA IDE device support" CONFIG_BLK_DEV_IDE_PCMCIA
printflag "DEC Alpha UDB target platform" CONFIG_ALPHA_LCA
+ echo " Maximum physical memory" $CONFIG_MAX_MEMSIZE
}

case $src in
@@ -274,6 +290,7 @@
configcheck CONFIG_BLK_DEV_IDE_PCMCIA
configcheck CONFIG_TR
configcheck CONFIG_ALPHA_LCA
+ config_get_value CONFIG_MAX_MEMSIZE
printconfig
;;
3)
@@ -291,6 +308,7 @@
bool "Set version information for module symbols" CONFIG_MODVERSIONS
bool "Include PCMCIA IDE device support" CONFIG_BLK_DEV_IDE_PCMCIA
bool "DEC Alpha UDB target platform" CONFIG_ALPHA_LCA
+ prompt_no_write "Max physical memory" CONFIG_MAX_MEMSIZE
;;
esac

@@ -610,6 +628,12 @@
HAS_FORMS=n
fi
write_bool HAS_FORMS
+
+#=======================================================================
+
+# Set the memory size
+
+echo "#define CONFIG_MAX_MEMSIZE $CONFIG_MAX_MEMSIZE" >> $CONFIG_H

#=======================================================================

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu