/branches/dynload/boot/arch/ppc64/loader/asm.S |
---|
28,7 → 28,6 |
#include "asm.h" |
#include "regname.h" |
#include "debug.inc" |
.text |
140,9 → 139,6 |
real_mode: |
DEBUG_INIT |
DEBUG_real_mode |
# copy kernel to proper location |
# |
# r5 = trans (pa) |
163,9 → 159,6 |
mtctr r31 |
lwz r29, 0(r5) |
DEBUG_INIT |
DEBUG_copy_loop |
copy_loop: |
lwz r28, 0(r29) |
180,15 → 173,11 |
bdnz copy_loop |
DEBUG_end_copy_loop |
addi r5, r5, 4 |
b page_copy |
copy_end: |
DEBUG_segments |
# initially fill segment registers |
li r31, 0 |
221,8 → 210,6 |
# create empty Page Hash Table |
# on top of memory, size 64 KB |
DEBUG_pht |
lwz r31, 0(r3) # r31 = memory size |
lis r30, 65536@h |
252,18 → 239,11 |
beq clear_end |
bdnz pht_clear |
DEBUG_end_pht_clear |
clear_end: |
DEBUG_tlb |
tlbia |
tlbsync |
DEBUG_prepare |
# start the kernel |
# |
# pc = KERNEL_START_ADDR |
291,8 → 271,6 |
sync |
isync |
DEBUG_rfi |
rfid |
.align PAGE_WIDTH |