
In message 200505060859.j468wv8R013906@ismp.csie.ncku.edu.tw you wrote:
After u-boot places the cramfs image to the expected location without wrapped by mkimage, the filesystem is mounted.
Then you know now that you have been passing bad addresses.
(My uClinux port does not use MTD driver. Instead, it uses ramdisk driver to load cramfs image to ram. Hence, I now use u-boot cp command to copy cramfs image from flash to ram directly.)
Did you compare the memory consumption of this solution against using a standard ramdisk? IMHO cramfs makes only sense when used in a MTD flash partition (so that you only load the needed components to RAM); when you load the whole image anyway your're usually more efficient with a plain ramdisk.
Originally, I hope to use mkimage to add header to cramfs image to gain crc32 check protection.
You can do that, with a ramdisk image. Seems that in your case the address passed to the Linux kernel was wrong, though.
Best regards,
Wolfgang Denk