Move all the C runtime setup code from every start.S in arch/arm into arch/arm/lib/crt0.S. This covers the code sequence from setting up the initial stack to calling into board_init_r(). Also, rewrite the C runtime setup and make functions board_init_*() and relocate_code() behave according to normal C semantics (no jumping across the C stack any more, etc). Some SPL targets had to be touched because they use start.S explicitly or for some reason; the relevant maintainers and custodians are cc:ed. Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net> |
||
|---|---|---|
| .. | ||
| Makefile | ||
| _ashldi3.S | ||
| _ashrdi3.S | ||
| _divsi3.S | ||
| _lshrdi3.S | ||
| _modsi3.S | ||
| _udivsi3.S | ||
| _umodsi3.S | ||
| board.c | ||
| bootm.c | ||
| cache-cp15.c | ||
| cache-pl310.c | ||
| cache.c | ||
| crt0.S | ||
| div0.c | ||
| eabi_compat.c | ||
| interrupts.c | ||
| memcpy.S | ||
| memset.S | ||
| reset.c | ||
| spl.c | ||