Rev 1130 | Rev 1146 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1130 | Rev 1131 | ||
---|---|---|---|
Line 34... | Line 34... | ||
34 | #define KERNEL_END ((void *) &_binary_____________kernel_kernel_bin_end) |
34 | #define KERNEL_END ((void *) &_binary_____________kernel_kernel_bin_end) |
35 | #define KERNEL_SIZE ((unsigned int) KERNEL_END - (unsigned int) KERNEL_START) |
35 | #define KERNEL_SIZE ((unsigned int) KERNEL_END - (unsigned int) KERNEL_START) |
36 | 36 | ||
37 | #define HEAP_GAP 1024000 |
37 | #define HEAP_GAP 1024000 |
38 | 38 | ||
39 | typedef struct { |
- | |
40 | memmap_t memmap; |
- | |
41 | screen_t screen; |
- | |
42 | } bootinfo_t; |
- | |
43 | - | ||
44 | bootinfo_t bootinfo; |
39 | bootinfo_t bootinfo; |
45 | 40 | ||
46 | 41 | ||
47 | static void check_align(const void *addr, const char *desc) |
42 | static void check_align(const void *addr, const char *desc) |
48 | { |
43 | { |
Line 121... | Line 116... | ||
121 | fix_overlap(&real_mode, &real_mode_pa, "Bootstrap trampoline", &top); |
116 | fix_overlap(&real_mode, &real_mode_pa, "Bootstrap trampoline", &top); |
122 | fix_overlap(&trans, &trans_pa, "Translation table", &top); |
117 | fix_overlap(&trans, &trans_pa, "Translation table", &top); |
123 | fix_overlap(&bootinfo, &bootinfo_pa, "Boot info", &top); |
118 | fix_overlap(&bootinfo, &bootinfo_pa, "Boot info", &top); |
124 | 119 | ||
125 | printf("\nBooting the kernel...\n"); |
120 | printf("\nBooting the kernel...\n"); |
126 | jump_to_kernel(bootinfo_pa, trans_pa, KERNEL_SIZE, real_mode_pa); |
121 | jump_to_kernel(bootinfo_pa, sizeof(bootinfo), trans_pa, KERNEL_SIZE, real_mode_pa); |
127 | } |
122 | } |