[U-Boot] sram overflowed

When I try to boot the 3.6 kernel on my Beaglebone it hangs at "Starting kernel". I read that I should try the latest version of u-boot:
git clone git://arago-project.org/git/projects/u-boot-am33x.git
But I get this when I try to make:
ld: u-boot-spl section `.data' will not fit in region `.sram' ld: region `.sram' overflowed by 163 bytes make[1]: *** [/root/u-boot-am33x/spl/u-boot-spl] Error 1 make[1]: Leaving directory `/root/u-boot-am33x/spl' make: *** [spl/u-boot-spl.bin] Error 2
I read here that I should try removing config options like CONFIG_SPL_YMODEM_SUPPORT:
https://github.com/kientzle/freebsd-beaglebone/issues/1#issuecomment-5953658
Can anyone tell me how to do that?
- Grant

Dear Grant,
In message CAN0CFw1fn3=P8N6qxSPDqxbCAUDdVJbZ4w+JxVX1_aZxa4dS2A@mail.gmail.com you wrote:
When I try to boot the 3.6 kernel on my Beaglebone it hangs at "Starting kernel". I read that I should try the latest version of u-boot:
git clone git://arago-project.org/git/projects/u-boot-am33x.git
This is definitely NOT what you want to use when somebody mentions "latest version". This term always refers to top of tree in mainline U-Boot, see http://git.denx.de/?p=u-boot.git;a=summary resp. git://git.denx.de/u-boot.git
Best regards,
Wolfgang Denk

git clone git://arago-project.org/git/projects/u-boot-am33x.git
This is definitely NOT what you want to use when somebody mentions "latest version". This term always refers to top of tree in mainline U-Boot, see http://git.denx.de/?p=u-boot.git;a=summary resp. git://git.denx.de/u-boot.git
Thank you for that. There is some outdated info here:
"Upstream U-Boot(the one you can download from www.denx.de)'s SPL support doesn't include the AM33XX chip, which is the one used in the Beaglebone. Progress is being done as of December 2011 to get it included. For this reason, we'll use a patched U-Boot provided from TI."
http://dev.gentoo.org/~armin76/arm/beaglebone/install.xml
I did:
git clone git://git.denx.de/u-boot.git cd u-boot make am335x_evm_config make cp MLO /boot cp u-boot.img /boot
but I get the following at boot followed by the u-boot command line prompt:
Loaded environment from uEnv.txt Importing environment from mmc ... Loading file "/boot/uImage" from mmc device 0:2 ** File not found /boot/uImage ext2load - load binary file from a Ext2 filesystem
It seems like u-boot is missing the kernel commandline:
# cat /proc/cmdline console=ttyO0,115200n8 ip=none root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait
I tried adding the following to uEnv.txt with no luck:
bootargs="console=ttyO0,115200n8 ip=none root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait"
Can you see what I'm doing wrong?
- Grant

On Mon, Oct 08, 2012 at 12:58:26AM -0700, Grant wrote:
git clone git://arago-project.org/git/projects/u-boot-am33x.git
This is definitely NOT what you want to use when somebody mentions "latest version". This term always refers to top of tree in mainline U-Boot, see http://git.denx.de/?p=u-boot.git;a=summary resp. git://git.denx.de/u-boot.git
Thank you for that. There is some outdated info here:
"Upstream U-Boot(the one you can download from www.denx.de)'s SPL support doesn't include the AM33XX chip, which is the one used in the Beaglebone. Progress is being done as of December 2011 to get it included. For this reason, we'll use a patched U-Boot provided from TI."
Well, December 2011 is a long time ago. As of v2012.10-rc1 am335x platforms are rather well supported in mainline, especially the beaglebone (which doesn't have NAND, the biggest gap between mainline and the u-boot-am33x.git tree, at least as of Dec 2011). Using mainline and the toolchain you likely have from TI, or from Linaro (if you use v2012.10-rc3) or from ELDK 5.2 will produce functional binaries for your platform.

git clone git://arago-project.org/git/projects/u-boot-am33x.git
This is definitely NOT what you want to use when somebody mentions "latest version". This term always refers to top of tree in mainline U-Boot, see http://git.denx.de/?p=u-boot.git;a=summary resp. git://git.denx.de/u-boot.git
Thank you for that. There is some outdated info here:
"Upstream U-Boot(the one you can download from www.denx.de)'s SPL support doesn't include the AM33XX chip, which is the one used in the Beaglebone. Progress is being done as of December 2011 to get it included. For this reason, we'll use a patched U-Boot provided from TI."
Well, December 2011 is a long time ago. As of v2012.10-rc1 am335x platforms are rather well supported in mainline, especially the beaglebone (which doesn't have NAND, the biggest gap between mainline and the u-boot-am33x.git tree, at least as of Dec 2011). Using mainline and the toolchain you likely have from TI, or from Linaro (if you use v2012.10-rc3) or from ELDK 5.2 will produce functional binaries for your platform.
Thank you, I was able to boot the Beaglebone with mainline u-boot by moving uImage to / and adding this to uEnv.txt:
bootfile="/uImage"
As an aside, I noticed omap3_beagle in board.cfg, so I tried 'make omap3_beagle_config && make' but the resultant MLO and u-boot.img did not work at all. am335x_evm_config works fine, but I'm curious what omap3_beagle_config is for if anyone knows.
- Grant

On Mon, Oct 08, 2012 at 11:23:20PM -0700, Grant wrote:
git clone git://arago-project.org/git/projects/u-boot-am33x.git
This is definitely NOT what you want to use when somebody mentions "latest version". This term always refers to top of tree in mainline U-Boot, see http://git.denx.de/?p=u-boot.git;a=summary resp. git://git.denx.de/u-boot.git
Thank you for that. There is some outdated info here:
"Upstream U-Boot(the one you can download from www.denx.de)'s SPL support doesn't include the AM33XX chip, which is the one used in the Beaglebone. Progress is being done as of December 2011 to get it included. For this reason, we'll use a patched U-Boot provided from TI."
Well, December 2011 is a long time ago. As of v2012.10-rc1 am335x platforms are rather well supported in mainline, especially the beaglebone (which doesn't have NAND, the biggest gap between mainline and the u-boot-am33x.git tree, at least as of Dec 2011). Using mainline and the toolchain you likely have from TI, or from Linaro (if you use v2012.10-rc3) or from ELDK 5.2 will produce functional binaries for your platform.
Thank you, I was able to boot the Beaglebone with mainline u-boot by moving uImage to / and adding this to uEnv.txt:
bootfile="/uImage"
As an aside, I noticed omap3_beagle in board.cfg, so I tried 'make omap3_beagle_config && make' but the resultant MLO and u-boot.img did not work at all. am335x_evm_config works fine, but I'm curious what omap3_beagle_config is for if anyone knows.
omap3_beagle is for the beagleboard and beagleboard xM boards. am335x_evm as you noticed is for the beaglebone (And am335x GP EVM and am335x EVM SK).

As an aside, I noticed omap3_beagle in board.cfg, so I tried 'make omap3_beagle_config && make' but the resultant MLO and u-boot.img did not work at all. am335x_evm_config works fine, but I'm curious what omap3_beagle_config is for if anyone knows.
omap3_beagle is for the beagleboard and beagleboard xM boards. am335x_evm as you noticed is for the beaglebone (And am335x GP EVM and am335x EVM SK).
Got it, thank you Tom.
- Grant
participants (3)
-
Grant
-
Tom Rini
-
Wolfgang Denk