[U-Boot-Users] -- fix the ARM memory layout -- couple errors.

Anders Larsen alarsen at rea.de
Tue Jan 20 16:45:47 CET 2004


"Woodruff, Richard" <r-woodruff2 at ti.com> schreibt:
>After tracing though the code I found a couple bugs in the patch.  I
>think I
>corrected them and included the version of start.S for the ARM925 which I
>am
>using.  I now get the expected register dump (or alternative function I've
>defined).

Hi Richard,

the power of peer review simply cannot be overestimated  :-)
I'll copy your changes from arm925 to the other ARMs and submit a patch.
>
>-- The 3 reserved words for abort info is carved out at the top of the
>stack
>(high addr).  The converted macro's treated this info as if it were at the
>"bottom" of the stack by subtracting off CONFIG_STACKSIZE.

Duh. I'll fix that, too.
>
>-- I noticed that get_bad_stack() actually was not correct for SWI's and
>would crash my board in an unexpected way.  The reason is that the SWI
>enters the system in SVC mode and the get_bad_stack() macro assumes a
>banked
>SP (R13)...ie it destroys the SVC mode SP, then switches to SVC mode (its
>already there) and there it tries to write on the bad stack.  I added a
>new
>macro to my build which I think fixed the problem (assuming the svc stack
>is
>good).

This is probably true for all ARMs...
>
>-- the introduction of CFG_GBL_DATA_SIZE is sort of a hollow gesture.

Seems you're right about that, too.
I'll look back into my pool of changes to find out why I did it that way.
>
>Other than those few bits everything else seems to be working.  Thanks for
>the effort.  Your work is forcing me to switch to the preferred memory
>setup.

Thanks for taking the time to dig through the mess I created  ;-)
>
Cheers
 Anders





More information about the U-Boot mailing list