Changeset de1b8b1 in mainline
- Timestamp:
- 2006-05-18T22:07:21Z (19 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- c3b5cdf
- Parents:
- 3eee37d
- Location:
- arch/ppc32/loader
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
arch/ppc32/loader/asm.S
r3eee37d rde1b8b1 107 107 # r4 = bootinfo_size 108 108 # r5 = trans (pa) 109 # r6 = kernel size 110 # r7 = framebuffer (pa) 111 # r8 = real_mode (pa) 109 # r6 = bytes to copy 110 # r7 = real_mode (pa) 112 111 113 112 # disable interrupts … … 119 118 # set real_mode meeting point address 120 119 121 mtspr srr0, r 8120 mtspr srr0, r7 122 121 123 122 # jumps to real_mode … … 142 141 # 143 142 # r5 = trans (pa) 144 # r6 = kernel size 145 # r7 = framebuffer (pa) 143 # r6 = bytes to copy 146 144 147 145 li r31, PAGE_SIZE >> 2 … … 234 232 mtspr dbat0l, r30 235 233 236 # FIXME: temporal framebuffer mapping237 238 lis r31, 0xf000239 ori r31, r31, 0x0ffe240 241 mr r30, r7242 ori r30, r30, 0x0002243 244 mtspr dbat1u, r31245 mtspr dbat1l, r30246 247 234 tlbia 248 235 -
arch/ppc32/loader/asm.h
r3eee37d rde1b8b1 45 45 46 46 extern void halt(); 47 extern void jump_to_kernel(void *bootinfo, unsigned int bootinfo_size, void *trans, unsigned int kernel_size, void * framebuffer, void *real_mode) __attribute__((noreturn));47 extern void jump_to_kernel(void *bootinfo, unsigned int bootinfo_size, void *trans, unsigned int kernel_size, void *real_mode) __attribute__((noreturn)); 48 48 extern void real_mode(); 49 49 -
arch/ppc32/loader/main.c
r3eee37d rde1b8b1 107 107 void *trans_pa = ofw_translate(&trans); 108 108 void *bootinfo_pa = ofw_translate(&bootinfo); 109 void *fb = (void *) (((unsigned int) bootinfo.screen.addr) & ((unsigned int) ~0 << 17));110 109 111 110 printf("\nMemory statistics (total %d MB)\n", bootinfo.memmap.total >> 20); … … 152 151 153 152 printf("\nBooting the kernel...\n"); 154 jump_to_kernel(bootinfo_pa, sizeof(bootinfo), trans_pa, pages << PAGE_WIDTH, fb,real_mode_pa);153 jump_to_kernel(bootinfo_pa, sizeof(bootinfo), trans_pa, pages << PAGE_WIDTH, real_mode_pa); 155 154 }
Note:
See TracChangeset
for help on using the changeset viewer.