[U-Boot-Users] application program

Wolfgang Denk wd at denx.de
Thu Nov 6 00:42:46 CET 2003


Dear Queenie Chan,

in message <239A78AC110CD711A1A500D0B7828CD806AD83D7 at zhk08exm01.sps.mot.com> you wrote:
> 
> Now, I encounter another problem.  When my program is too large, there is certain part in my program I cannot run, ie. I cannot run certain functions when I call them, and the board hangs.  I know I have run out of memory space, so I moved my loadaddr t
> o somewhere else, say 0x00300000.  Then I do "go 300004".  Although I can run at this new location, I still have the same problem: the board hangs when I call the same function.  If I shorten my program a bit, I can run it.
>  
> So my question is, how can I enlarge the program space?  I've been searching through the codes but no luck.

I am not aware of any inherent linit on  the  size  of  a  standalone
application.   Of   course   I   assume   that  your  application  is
well-behaviong, i. e. you do check the return codes of all  functions
that might return error codes (like malloc()), you don't overflow the
stack  by  allocating  vast  amounts  of dynamic data or running into
deeply recursive routines, etc.

> And one more question, I realize the entry point is always loadaddr + 0x04.  Can I change that?  If yes, please tell me where to change it.

You will have to modify the link command and/or use a  custom  linker
script.

Best regards,

Wolfgang Denk

-- 
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-4596-87  Fax: (+49)-8142-4596-88  Email: wd at denx.de
The price of curiosity is a terminal experience.
                         - Terry Pratchett, _The Dark Side of the Sun_




More information about the U-Boot mailing list