
I am have not been able to run any application.
I had the same problem, but my board had 8343 powerpc processor, so my load address was 40000 and to run the application, I had to do
=> tftp 0x40000 /home/bil/hello_world.bin => go 0x40004
The start code was at at an offset 4 from my load address. You may have to consider this. I used nm utility (powepc-linux-nm ) that was in my cross compiler's bin directory to look into the hello_world.obj and saw that the symbol hello_world was at 40004 (I think even a common non cross compiler nm utility will work too and you should be able to see the addresses, symbols in your obj file). So use nm to explore the hello_world.obj and know more about symbols and the locations of hello_world program.
Using example code Hello_world.c and further
simplifying it to .....
printf("hello world" line only.
As written in other reply by wolgang Denk, you may have simplified the code too much. app_start() is necessary as it zero's out BSS ( necessary for things to work poperly, I remeber hello_world working properly even without app_start() but forget about it, I think you may just leave it there).
results in. It seems to me I have not gotten an interface to Uboot stdio correct.
To cross check wether you have interface to u-boot provided printf, do this :
The u-boot exports the interface in a export list present in /u-boot-install-dir/include/exports.h.
Also look in /u-boot-install-dir/include/_exports.h
Most probably you should find a line EXPORT_FUNC(printf)here too, if you find these, it means that you have access to the u-boot printf functionality.
Bilahari