[U-Boot-Users] U-Boot hang

Wolfgang Denk wd at denx.de
Wed Oct 29 16:52:55 CET 2003

Dear Leon,

in message <Pine.CYG.4.55.0310291622220.996 at sniper.ultra.si> you wrote:
> I'm in the process of writting PCMCIA support for WEPEP250 (boards/wepep250).
> Everything seems to be going smooth except one thing:
> When I add a debug function and then execute U-Boot command "pinit on" or
> "ide reset" U-boot hangs on me. I sometimes get "data abort",
> sometimes "invalid instruction" and sometimes nothing.
> Is there any limits with regards to U-Boot's size and by me putting too much
> inside U-boot's .text section and hitting some marker/border ?

There is no real limit on the size of the image's segments,  but  due
to  the  broken memory layout of the ARM you have to be careful where
you place your image in RAM, and for  other  memory  mapping  details
like stack size.

For example, we just fixed a problem  in  the  VFAT  filesystem  code
which  would  allocate  3  x  64 kB buffers on the stack - this works
perfectly fine on PowerPC, but causes a nasty stack overrun situation
on most ARM systems.

> 	byte order I wanted to write ident_swap_cpy, but as I wrote the
> 	function, re-compiled U-boot, downloaded it and issued "ide reset" I
> 	got a hang.
> 	I also tried to put just two printf's inside ident_copy() -
> 	a hang again.

Well - attach a debugger and check  where  it's  hanging.  And  check
where your stack pointer is pointing to.

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
Parkinson's Law:  Work expands to fill the time alloted it.

More information about the U-Boot mailing list