9
0
Fork 0
barebox/arch/arm/cpu
Sascha Hauer a81ec0225f ARM: Add relocatable binary support
For making the same binary executable on different SoCs which have
different DRAM addresses we have to be independent of the compile
time link address.

This patch adds relocatable binary support for the ARM architecture.
With this two new functions are available. relocate_to_current_adr
will fixup the binary to continue executing from the current position.
relocate_to_adr will copy the binary to a given address, fixup the
binary and continue executing from there.

For the PBL and the real image relocatable support can be enabled
independently. This is done to (hopefully) better cope with setups
where the PBL runs from SRAM or ROM and the real binary does not.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2013-03-07 12:38:01 +01:00
..
Kconfig Cleanup Kconfig files 2012-12-08 12:22:12 +01:00
Makefile ARM: Add relocatable binary support 2013-03-07 12:38:01 +01:00
cache-armv4.S ARM: Support multiple ARM architectures 2012-10-13 11:19:13 +02:00
cache-armv5.S ARM: Support multiple ARM architectures 2012-10-13 11:19:13 +02:00
cache-armv6.S ARM: Support multiple ARM architectures 2012-10-13 11:19:13 +02:00
cache-armv7.S ARM v7: Fix register corruption in v7_mmu_cache_off 2013-01-23 20:37:56 +01:00
cache-l2x0.c arm: cache-l2x0 update sync define with Linux 3.5 2013-02-11 21:08:24 +01:00
cache.c ARM: add early mmu cache flush function and use it in setup_c 2013-03-04 12:02:10 +01:00
common.c ARM: Add relocatable binary support 2013-03-07 12:38:01 +01:00
cpu.c ARM: make cpu architecture detection available as static inline function 2013-03-04 12:02:10 +01:00
cpuinfo.c Treewide: remove address of the Free Software Foundation 2012-09-17 10:57:41 +02:00
exceptions.S ARN: fixup vector addresses for relocatable binaries 2013-03-07 12:38:01 +01:00
interrupts.c ARM: add rename PSR bits to match linux names 2012-10-15 09:18:34 +02:00
mmu-early.c ARM: Factor out early mmu code 2013-02-04 15:52:41 +01:00
mmu-early.h ARM: Factor out early mmu code 2013-02-04 15:52:41 +01:00
mmu.c ARN: fixup vector addresses for relocatable binaries 2013-03-07 12:38:01 +01:00
mmu.h arm: move outercase to cpu.c as some SoC as the ux500 always need to flush the l2x0 2013-02-11 21:08:24 +01:00
mmuinfo.c mmuinfo: add a command do display the result of virtual to physical translation 2012-06-30 22:06:21 +02:00
setupc.S ARM: Add relocatable binary support 2013-03-07 12:38:01 +01:00
start-pbl.c ARM: Add relocatable binary support 2013-03-07 12:38:01 +01:00
start.c ARM: Add relocatable binary support 2013-03-07 12:38:01 +01:00