summaryrefslogtreecommitdiff
path: root/cpu/mpc5xx
diff options
context:
space:
mode:
authorWolfgang Denk <wd@denx.de>2009-10-09 00:03:18 +0200
committerWolfgang Denk <wd@denx.de>2009-10-09 00:03:18 +0200
commitcd77dd109c4a439519a78c32eddc42bdebc7a61f (patch)
treec5534647cb1786044ef0f7e4ad4067725eddf11d /cpu/mpc5xx
parent95c44ec485b46ffb43dbdaa299f1491a500fdadf (diff)
parentafc3ba0fc4195624e79e21244380ed7cc2fd6969 (diff)
Merge branch 'reloc'
Diffstat (limited to 'cpu/mpc5xx')
-rw-r--r--cpu/mpc5xx/start.S6
-rw-r--r--cpu/mpc5xx/u-boot.lds1
2 files changed, 4 insertions, 3 deletions
diff --git a/cpu/mpc5xx/start.S b/cpu/mpc5xx/start.S
index 106935cb63..85ea7a8827 100644
--- a/cpu/mpc5xx/start.S
+++ b/cpu/mpc5xx/start.S
@@ -458,15 +458,17 @@ in_ram:
sub r11,r3,r11
addi r3,r3,-4
1: lwzu r0,4(r3)
+ cmpwi r0,0
+ beq- 2f
add r0,r0,r11
stw r0,0(r3)
- bdnz 1b
+2: bdnz 1b
/*
* Now adjust the fixups and the pointers to the fixups
* in case we need to move ourselves again.
*/
-2: li r0,__fixup_entries@sectoff@l
+ li r0,__fixup_entries@sectoff@l
lwz r3,GOT(_FIXUP_TABLE_)
cmpwi r0,0
mtctr r0
diff --git a/cpu/mpc5xx/u-boot.lds b/cpu/mpc5xx/u-boot.lds
index cb17ca5d74..deeb06ae26 100644
--- a/cpu/mpc5xx/u-boot.lds
+++ b/cpu/mpc5xx/u-boot.lds
@@ -58,7 +58,6 @@ SECTIONS
cpu/mpc5xx/start.o (.text)
*(.text)
- *(.fixup)
*(.got1)
}
_etext = .;