Talk:Booting the Neo FreeRunner from SD via U-Boot

From Openmoko

(Difference between revisions)
Jump to: navigation, search
(Formatting for VFAT--uBoot now supports ext2)
m (Talk:Booting from SD moved to Talk:Booting the Neo FreeRunner from SD via U-Boot: clarifying what this page is about)
 
(5 intermediate revisions by 5 users not shown)
Line 1: Line 1:
== Booting the Freerunner from a SD card ==
+
== Updating U-Boot ==
My Freerunner came with a "boot from SD card" option already installed in uBoot. I just needed a SD (Not HDMC) card with the following layout:
+
Can you link to instructions on updating the u-boot.  I think this is it [[Flashing_the_Neo_FreeRunner#Flashing_the_boot_loader_to_the_NAND|here]].
* Partition 1 is a primary partition with a FAT filesystem containing the uImage - which has to be named uImage.bin
+
* Partiton 2 is a Filesystem containing the root partition. According to the uBoot environment it should be an ext2 partiton, - but it seems like the standrd kernels from the buildhost don't support this. Will try to change the uBoot environemt variable so I can boot from ext3 - which should be supported by the kernel one day.  
+
My hardware setup is:
+
* Latest uBoot (July 12, 2008)
+
* Freerunner (GTA02V5, 1st batch that could be regularily ordered from the openmoko online shop.)
+
The uBoot environment variable that should allow booting from my card reads:
+
  menu_1=Boot from microSD (FAT+ext2): setenv bootargs ${bootargs_base} rootfstype=ext2 root=/dev/mmcblk0p2 rootdelay=5 ${mtdparts} ro; mmcinit; fatload mmc 1 0x32000000 ${sd_image_name}; bootm 0x32000000
+
As far as I know it should be changed after logging into uBoot by
+
setenv menu_1 Boot from microSD (FAT+ext3): setenv bootargs ${bootargs_base} root=/dev/mmcblk0p2 rootdelay=5 ${mtdparts}ro\; mmcinit\; fatload mmc 1 0x32000000 ${sd_image_name}\; bootm 0x32000000
+
if we want to boot a stock kernel from sd card.
+
  
But I have not been able to test it until now, though.
+
== sync after umount? ==
 +
Using a sync after the umount is completely redundant right? After umount there is no block part in the kernel doing any caching, so there is nothing to actually sync anymore. So I think the sync should be removed.
 +
[[User:Bram|Bram]]
  
== Formatting for VFAT--uBoot now supports ext2 ==
+
== Benefits ==
 +
What are the benefits of booting from SD? Does it improve the performance in terms of speed and/or non-SD RAM/ROM memory usage of the device? [[User:Pander|Pander]] 11:05, 20 July 2009 (UTC)
  
All the stuff that was put in there to work around uBoot's limitation of not supporting ext2fs, and instead, using VFAT should be changed.  I'm still playing around with this stuff, so I wasn't sure that what I'd put in there would be accurate. [[User:Supercheetah|Supercheetah]] 02:58, 26 July 2008 (UTC)
+
== Take care with inode size when formatting ext2 partitions ==
  
agreed -- need the newer uboot, but it can be changed.  I have not tested it yet because I came across the SDHC problems I indicated at the top. [[User:Thewtex|thewtex]] 02:14, 27 July 2008 (UTC)
+
I noticed uboot was having difficulty reading the cards I had formatted using my linux box.  Google to the rescue, I found the following discussion:
 +
[http://www.nabble.com/Problems-with-ext2ls---SD-ts22728281.html#a22756563 Uboot Discussion]
 +
 
 +
So apparently uboot is currently only reading ext2 partitions with an inode size of 128.  Recent default is 256.  I wonder if the mkfs with our distros defaults to 128?
 +
 
 +
Workaround:  mke2fs -I 128 /dev/sd*
 +
 
 +
Hopefully uboot will be updated to allow default inodes to be recognized.
 +
 
 +
--[[User:Undrwater|Undrwater]] 06:11, 14 August 2009 (UTC)Russell Dwiggins

Latest revision as of 10:29, 31 March 2010

Contents

[edit] Updating U-Boot

Can you link to instructions on updating the u-boot. I think this is it here.

[edit] sync after umount?

Using a sync after the umount is completely redundant right? After umount there is no block part in the kernel doing any caching, so there is nothing to actually sync anymore. So I think the sync should be removed. Bram

[edit] Benefits

What are the benefits of booting from SD? Does it improve the performance in terms of speed and/or non-SD RAM/ROM memory usage of the device? Pander 11:05, 20 July 2009 (UTC)

[edit] Take care with inode size when formatting ext2 partitions

I noticed uboot was having difficulty reading the cards I had formatted using my linux box. Google to the rescue, I found the following discussion: Uboot Discussion

So apparently uboot is currently only reading ext2 partitions with an inode size of 128. Recent default is 256. I wonder if the mkfs with our distros defaults to 128?

Workaround: mke2fs -I 128 /dev/sd*

Hopefully uboot will be updated to allow default inodes to be recognized.

--Undrwater 06:11, 14 August 2009 (UTC)Russell Dwiggins

Personal tools

Booting the Freerunner from a SD card

My Freerunner came with a "boot from SD card" option already installed in uBoot. I just needed a SD (Not HDMC) card with the following layout:

  • Partition 1 is a primary partition with a FAT filesystem containing the uImage - which has to be named uImage.bin
  • Partiton 2 is a Filesystem containing the root partition. According to the uBoot environment it should be an ext2 partiton, - but it seems like the standrd kernels from the buildhost don't support this. Will try to change the uBoot environemt variable so I can boot from ext3 - which should be supported by the kernel one day.

My hardware setup is:

  • Latest uBoot (July 12, 2008)
  • Freerunner (GTA02V5, 1st batch that could be regularily ordered from the openmoko online shop.)

The uBoot environment variable that should allow booting from my card reads:

menu_1=Boot from microSD (FAT+ext2): setenv bootargs ${bootargs_base} rootfstype=ext2 root=/dev/mmcblk0p2 rootdelay=5 ${mtdparts} ro; mmcinit; fatload mmc 1 0x32000000 ${sd_image_name}; bootm 0x32000000

As far as I know it should be changed after logging into uBoot by

setenv menu_1 Boot from microSD (FAT+ext3): setenv bootargs ${bootargs_base} root=/dev/mmcblk0p2 rootdelay=5 ${mtdparts}ro\; mmcinit\; fatload mmc 1 0x32000000 ${sd_image_name}\; bootm 0x32000000

if we want to boot a stock kernel from sd card.

But I have not been able to test it until now, though.

Formatting for VFAT--uBoot now supports ext2

All the stuff that was put in there to work around uBoot's limitation of not supporting ext2fs, and instead, using VFAT should be changed. I'm still playing around with this stuff, so I wasn't sure that what I'd put in there would be accurate. Supercheetah 02:58, 26 July 2008 (UTC)

agreed -- need the newer uboot, but it can be changed. I have not tested it yet because I came across the SDHC problems I indicated at the top. thewtex 02:14, 27 July 2008 (UTC)