Can't Mount CF-Card on boot of 2.6.15 Kernel on EPIA motherboard

Markus Biermaier mbier at office-m.at
Sun Jun 4 14:38:09 EDT 2006


Thank you,

problem paritally solved:

- Reason 1:
   Resource database for Kernel 2.4.25 was:
   /etc/config
   /etc/config.opts

   Resource database for Kernel 2.6.15 is:
   /etc/pcmcia/config
   /etc/pcmcia/config.opts

- Reason 2:
   my "linuxrc" looks now like this:
------------------------- [ BEGIN linuxrc ] -------------------------
PCIC="ide_cs yenta_socket pcmcia_core pcmcia rsrc_nonstatic"
PCIC_OPTS=
CORE_OPTS=
DEBUG=1
mount -t proc /proc /proc
mount /sys
echo "/sbin/udev" > /proc/sys/kernel/hotplug
/sbin/udevstart
echo "==== initrd: starting PCMCIA services ===="
CreateCF-Node
for Module in $PCIC
do
         modprobe $Module
done
pcmcia-socket-startup
echo -n "42" > /sys/bus/pcmcia/devices/1.0/allow_func_id_match
sleep 5
umount /proc
umount /dev/ram
if [ "$DEBUG" != "" ] ; then
     /bin/sh < /dev/console
fi
------------------------- [ END   linuxrc ] -------------------------

It seems to work but I've not tried to find out unneccessary steps.

The next problem is:
At this point I can interactive do a "mnt /dev/hde1" and can inspect  
the file-system of the CF.
Looks ok.
On exit of the interactive shell the kernel should mount root and  
boot but the messages are:

   VFS: Cannot open root device "hde1" or unknown-block(0,0)
   Please append a correct "root=" boot option
   Kernel panic - not syncinc: VFS: Unable to mount root fs on  
unknown-block(0,0)

I think the kernel 2.6.x is looking for some file "/init" (googled a  
long time). But I'm not sure what this is (the famous "init"- 
process???)?


With Kernel 2.4.25 a similar "linuxrc" worked:
------------------------- [ BEGIN linuxrc-2.4.25 ]  
-------------------------
PCIC=yenta_socket
PCIC_OPTS=
CORE_OPTS=
mount -t proc /proc /proc
echo "==== initrd: starting PCMCIA services ===="
CreateCF-Node
modprobe $PCIC
modprobe ds
if [ "$DEBUG" != "" ] ; then V=-v ; fi
cardmgr $V -q -o -c /etc -m /lib -s /tmp/stab -p /tmp/pid
umount /proc
umount /dev/ram
if [ "$DEBUG" != "" ] ; then
     /bin/sh < /dev/console
fi
------------------------- [ END   linuxrc-2.4.25 ]  
-------------------------
The boot-process of the 2.4.25 Kernel continous with:

VFS: Mounted root (ext2 filesystem) readonly.
Trying to move old root to /initrd ... okay
Freeing unused kernel memory: 128k freed
...

Perhaps this list knows a solution?

Many thanks for your help.

Markus



Am 04.06.2006 um 19:27 schrieb Dominik Brodowski:

> Hi,
>
> Irgendwie scheint mir, dass die Ressourcen nicht an das PCMCIA- 
> Subsystem des
> Kernels weitergegeben werden... Funktioniert es zufälligerweise mit  
> einem
> oder zwei
> 	sleep 1;
> dazwischen? Ggf. brauchen manche Module nach dem Laden erst ein  
> klein wenig
> zum Propagieren aller Änderungen. Zusätzlich könnte man auch  
> versuchen, die
> Resource Database hart zu kodieren, also im folgenden Stil:
>
> #!/bin/sh
> echo "0x00000100-0x000004ff" > /sys/class/pcmcia_socket/ 
> pcmcia_socket0/available_resources_io
> echo "0x00000800-0x000008ff" > /sys/class/pcmcia_socket/ 
> pcmcia_socket0/available_resources_io
> echo "0x00000c00-0x00000cff" > /sys/class/pcmcia_socket/ 
> pcmcia_socket0/available_resources_io
> echo "0x00001000-0x000017ff" > /sys/class/pcmcia_socket/ 
> pcmcia_socket0/available_resources_io
>
> echo "0xa0000000-0xa0ffffff" > /sys/class/pcmcia_socket/ 
> pcmcia_socket0/available_resources_mem
> echo "0x60000000-0x60ffffff" > /sys/class/pcmcia_socket/ 
> pcmcia_socket0/available_resources_mem
>
> echo "1" > /sys/class/pcmcia_socket/pcmcia_socket0/ 
> available_resources_setup_done




More information about the linux-pcmcia mailing list