Download your favorite Linux distribution at LQ ISO.
Go Back > Forums > Non-*NIX Forums > Programming
User Name
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.


  Search this Thread
Old 02-28-2014, 05:22 AM   #1
Registered: Jul 2007
Posts: 120

Rep: Reputation: 15
Loading uboot

Hi all
I am working on pxa300 where my requirement is I am loading uImage & filesystem through tftp server (from other host) on RAM , if uImage or filesystem
is not there then it can directly load kernel & filesystem from flash with typing command or doing cltrl +c on hyper terminal .
Currently in uboot if it does not able to find uIamge & file system it retry again ,I want it should start loading from flash .
my CONFIG_BOOTCOMMAND is like that
#define CONFIG_BOOTCOMMAND "tftp 0x80600000; tftp 0x80008000; bootm" // FOR RAM
#define CONFIG_BOOTCOMMAND "cp.l 0x10600000 0x80600000 200000;cp.l 0x10400000 0x80200000 60000; bootm 0x80200000" //FOR FLASH

One more thing I am able to find out in uboot its calling do_tftpb function for tftp & do_bootm function for flash

Here it's console print

U-Boot code: 81000000 -> 81021AB0
BSS: -> 81026EC8
IRQ Stack: 80fdaf80
FIQ Stack: 80fd9f80
DRAM:  512 MB
Using default environment

In:    serial
Out:   serial
Err:   serial
Linux Booting........
Hit any key to stop autoboot:  0
Enabling external transiver signal for LAN
LAN9x18 (0x118a0000) detected.
start Auto negotiation... (take ~2sec)
Auto negotiation failed
TFTP from server; our IP address is
Filename 'initrd.gz'.
Load address: 0x80600000
Loading: T T T T T T T T T T
Retry count exceeded; starting again
TFTP from server; our IP address is
Filename 'initrd.gz'.
Load address: 0x80600000
Loading: T T T
Old 03-18-2014, 06:13 PM   #2
LQ Newbie
Registered: Apr 2013
Posts: 4

Rep: Reputation: Disabled
what looks very suspicious is that auto-negotiation failed.

Only a few questions/hints, which might be helpful:

Does your pxa300 have more than one ethernet device ?
If yes, are you sure that the right one is adressed ?
Stop autoboot to enter uboot command line.
Call "printenv" and check for variables defining the currently
used eth device (most probably with "eth" in the name).
Check with "ping" if your tftp server is reachable.
Check the netmask.

Best regards.
Old 03-18-2014, 06:22 PM   #3
LQ Newbie
Registered: Apr 2013
Posts: 4

Rep: Reputation: Disabled
just reading more carefully what you wanted.
It might be recommendable to set up two environment variables
setenv do_tftpb "tftp 0x80600000 && tftp 0x80008000 && bootm"
setenv do_flashb "cp.l 0x10600000 0x80600000 200000 && cp.l 0x10400000 0x80200000 60000 && bootm 0x80200000"
and the define the bootcmd to "run do_tftpb || run do_flashb",
so if the first one fails, the second one should be executed.


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
loading uboot on RAM answerme Programming 0 01-24-2014 04:44 PM
debugging uboot answerme Programming 1 01-04-2013 01:03 AM
[SOLVED] some problems with uboot revil Linux - Embedded & Single-board computer 1 02-28-2012 08:56 PM
uboot is not comin Linux - Embedded & Single-board computer 0 07-01-2010 02:17 AM
UBoot Vs RedBoot ramalingampc2008 Linux - Software 0 10-20-2009 07:04 AM

All times are GMT -5. The time now is 09:47 PM.

Main Menu
Write for LQ is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration