Rev 981 | Rev 1022 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 981 | Rev 986 | ||
|---|---|---|---|
| Line 28... | Line 28... | ||
| 28 | 28 | ||
| 29 | #include "main.h" |
29 | #include "main.h" |
| 30 | #include "printf.h" |
30 | #include "printf.h" |
| 31 | #include "asm.h" |
31 | #include "asm.h" |
| 32 | 32 | ||
| 33 | #define KERNEL_PHYSICAL_ADDRESS 0x2000 |
33 | #define KERNEL_PHYSICAL_ADDRESS 0x0000 |
| 34 | #define KERNEL_VIRTUAL_ADDRESS 0x80002000 |
34 | #define KERNEL_VIRTUAL_ADDRESS 0x80000000 |
| - | 35 | #define KERNEL_BOOT_OFFSET 0x2000 |
|
| 35 | #define KERNEL_START &_binary_____________kernel_kernel_bin_start |
36 | #define KERNEL_START &_binary_____________kernel_kernel_bin_start |
| 36 | #define KERNEL_END &_binary_____________kernel_kernel_bin_end |
37 | #define KERNEL_END &_binary_____________kernel_kernel_bin_end |
| 37 | #define KERNEL_SIZE ((unsigned int) KERNEL_END - (unsigned int) KERNEL_START) |
38 | #define KERNEL_SIZE ((unsigned int) KERNEL_END - (unsigned int) KERNEL_START) |
| 38 | 39 | ||
| 39 | memmap_t memmap; |
40 | memmap_t memmap; |
| Line 65... | Line 66... | ||
| 65 | ofw_map((void *) 0x80816000, (void *) 0xf2000000, 0x00018000, 0); |
66 | ofw_map((void *) 0x80816000, (void *) 0xf2000000, 0x00018000, 0); |
| 66 | 67 | ||
| 67 | printf("Booting the kernel...\n"); |
68 | printf("Booting the kernel...\n"); |
| 68 | 69 | ||
| 69 | flush_instruction_cache(); |
70 | flush_instruction_cache(); |
| 70 | jump_to_kernel((void *) KERNEL_VIRTUAL_ADDRESS, ofw_translate(&memmap)); |
71 | jump_to_kernel((void *) KERNEL_VIRTUAL_ADDRESS + KERNEL_BOOT_OFFSET, ofw_translate(&memmap)); |
| 71 | } |
72 | } |