
For uClinux, there is a precious introduction written by David McCullough. (http://www.linuxjournal.com/article/7221) This article mentioned that the guaranteed (root) filesystem format subject to uClinux constraints is romfs.
Of course, the romfs can be programmed into flash and be mounted by Linux kernel MTD driver. On the other hand, romfs can be mounted in ramdisk way.
For the memory consumption comparison issue, your conclusion is right. We also can find the explanation in section 8.1.2 of "Building Embedded Linux Systems".
Thanks. Wayne
-----Original Message----- From: u-boot-users-admin@lists.sourceforge.net [mailto:u-boot-users-admin@lists.sourceforge.net] On Behalf Of Wolfgang Denk Sent: Friday, May 06, 2005 5:59 PM To: Wayne Lee Cc: 'u-boot-users' Subject: Re: [U-Boot-Users] mkimage parameters for cramfs.img
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