Run standalone application failed

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Run standalone application failed

2,436 Views
ningleliang
Contributor I

Hello All

Hoping somebody can help me out here.

When i tried to download and run the example standalone application 'hello_world' from u-boot, it failed.

I was using 'cutecom' under VMWare to communicate with the target board. I tried use 'loads', at time of '## Ready for S-Record download ...' appeared, i picked up 'hello_world.srec' to send. The console has shown the file transfer success. But no any reply from the board .

I also tried Hyper-terminal, using 'loadb 40000' to download the 'hello_world.bin' to address 0x40000, same thing. But i found out, 'loadb' works when target address set to higher address, such as 0x40000000. But the hello-world application cannot be executed there.

What i did wrong?

http://www.denx.de/wiki/DULG/UBootStandalone

Labels (1)
0 Kudos
Reply
7 Replies

1,711 Views
强王
Contributor IV

修改点如下:

具体是哪个没有确认


===================================================================
--- arch/arm/config.mk    (版本 1422)
+++ arch/arm/config.mk    (工作副本)
@@ -9,7 +9,8 @@
ifneq ($(CONFIG_OMAP_COMMON),)
CONFIG_STANDALONE_LOAD_ADDR = 0x80300000
else
-CONFIG_STANDALONE_LOAD_ADDR = 0xc100000
+#CONFIG_STANDALONE_LOAD_ADDR = 0xc100000
+CONFIG_STANDALONE_LOAD_ADDR = 0x17800000
endif
endif

Index: examples/api/Makefile
===================================================================
--- examples/api/Makefile    (版本 1422)
+++ examples/api/Makefile    (工作副本)
@@ -8,7 +8,8 @@
LOAD_ADDR = 0x40000
endif
ifeq ($(ARCH),arm)
-LOAD_ADDR = 0x1000000
+#LOAD_ADDR = 0x1000000
+LOAD_ADDR = 0x17800000
endif

# Resulting ELF and binary exectuables will be named demo and demo.bin
Index: include/configs/mx6sabresd.h
===================================================================
--- include/configs/mx6sabresd.h    (版本 1422)
+++ include/configs/mx6sabresd.h    (工作副本)
@@ -59,7 +59,7 @@
#define CONFIG_PCIE_IMX_PERST_GPIO    IMX_GPIO_NR(7, 12)
#define CONFIG_PCIE_IMX_POWER_GPIO    IMX_GPIO_NR(3, 19)
#endif
-
+#define CONFIG_STANDALONE_LOAD_ADDR  0x17800000
/*#define CONFIG_SPLASH_SCREEN*/
/*#define CONFIG_MXC_EPDC*/

then,you could run again

0 Kudos
Reply

1,711 Views
BiyongSUN
NXP Employee
NXP Employee

please refer to

hello word in u-boot

0 Kudos
Reply

1,711 Views
YixingKong
Senior Contributor IV

Ningle

This discussion is closed since no activity. If you still need help, please feel free to reply with an update to this

discussion, or create another discussion.
Thanks,
Yixing

0 Kudos
Reply

1,711 Views
Yuri
NXP Employee
NXP Employee

Perhaps address area, used for application load is not suitable / correct. Please look at U-boot environment to define
where (Linux ) kernel is intended to be loaded - in order to define addresses for applications. 

0 Kudos
Reply

1,711 Views
ningleliang
Contributor I

Hi, Nuhin:

When I tried load to offset 80000000, like this,

loads 80000000

## Ready for S-Record download ...

## First Load Addr = 0x8C100000

## Last  Load Addr = 0x8C100251

## Total Size      = 0x00000252 = 594 Bytes

## Start Addr      = 0x0C100000

it shows the appllication loaded to 0x8c100000. when i run it by command.

## go 8c100000 test run

the uboot die. no response any more, i have to do a hardware reset.

Any clue?

Thanks!

0 Kudos
Reply

1,711 Views
YixingKong
Senior Contributor IV

Ningle

Had your issue got resolved? If yes, we are going to close the discussion in 3 days. If you still need help please feel

free to contact Freescale.

Thanks,
Yixing

0 Kudos
Reply

1,711 Views
Yuri
NXP Employee
NXP Employee

Sorry for delay.
To define kernel boot address in U-boot, please let me know U-boot environment ("pri" command).

0 Kudos
Reply