Booting from SD Card using FreeRunner (as shipped)?
Simon Moore
simon at snmoore.net
Sat Jul 5 19:30:23 CEST 2008
jluis at escomposlinux.org wrote:
> Simon,
>
>> I'm generally running into two problems:
>>
>> 1. Nothing I've tried allows it to successfully mount the rootfs e.g.
>> from /dev/mmcblk0p2 (using FAT+ext2 partitions on the SD Card)
>>
>
> That is easy change the format of the ext2 partition to ext3, the kernels
> have ext2 in a module and ext3 is built in.
>
>
>> 2. 'savenv' appears to fail - it does an Erase, then drops back to the
>> uBoot prompt; I've only ever had it once do an Erase...Write cycle
>>
>>
>>
>
> That as Tony tu says may be caused from using the NOR u-boot
>
>
>
Thanks to all for the information and advice - I've now got a successful
SD card boot.
Observations
=========
1a. The default boot environment settings do not work e.g. a boot from
NOR (or NAND with the default settings) results in:
VFS: Cannot open root device "mmcblk0p2" or unknown-block(179,2)
Please append a correct "root=" boot option; here are the available
partitions:
<snip>
Kernel panic - not syncing: VFS: Unable to mount root fs on
unknown-block(179,2)
This can be fixed by applying Tony's 'env.new' fix, which does work ok!
1a. FAT + ext2 does not work, but FAT + ext3 does work e.g. booting from
NAND after applying Tony's 'env.new' fix using FAT + ext2 results in:
No filesystem could mount root, tried: ext3, cramfs, msdos, vfat, ramfs
Kernel panic - not syncing: VFS: Unable to mount root fs on
unknown-block(179,2)
2. The 'saveenv' problem was due to me being stupid and mixing NOR and
NAND boots - it works quite correctly from a NAND boot
Conclusions
=========
To achieve a successful boot from SD Card using a FreeRunner as shipped:
A. Format the SD Card as FAT + ext3, not FAT + ext2
B. Adjust the NAND boot environment settings (e.g. by applying Tony's
suggested 'env.new' fix) and boot from NAND
Which is going to make life challenging for non-Linux users (e.g. OS X
and Windows), as the above is only really practical on a Linux machine
with a working dfu-util and ext3 support. One (slightly difficult) way
might be to set-up the USB networking first, perform the SD Card
formatting on the FreeRunner itself via SSH, then use 'screen' etc to
hand edit the NAND boot environment settings.
Cheers,
Simon
--
Simon Moore
User:SNMoore on the wiki
More information about the device-owners
mailing list