Run standalone application failed

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

Run standalone application failed

1,982 次查看
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

标签 (1)
0 项奖励
7 回复数

1,257 次查看
强王
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 项奖励

1,257 次查看
BiyongSUN
NXP Employee
NXP Employee

please refer to

hello word in u-boot

0 项奖励

1,257 次查看
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 项奖励

1,257 次查看
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 项奖励

1,257 次查看
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 项奖励

1,257 次查看
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 项奖励

1,257 次查看
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 项奖励