Rev 2250 | Rev 3399 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 2250 | Rev 3388 | ||
|---|---|---|---|
| Line 55... | Line 55... | ||
| 55 | #endif |
55 | #endif |
| 56 | 56 | ||
| 57 | /** Print version information. */ |
57 | /** Print version information. */ |
| 58 | static void version_print(void) |
58 | static void version_print(void) |
| 59 | { |
59 | { |
| 60 | printf("HelenOS SPARC64 Bootloader\nRelease %s%s%s\nCopyright (c) 2006 HelenOS project\n", release, revision, timestamp); |
60 | printf("HelenOS SPARC64 Bootloader\nRelease %s%s%s\n" |
| - | 61 | "Copyright (c) 2006 HelenOS project\n", |
|
| - | 62 | release, revision, timestamp); |
|
| 61 | } |
63 | } |
| 62 | 64 | ||
| 63 | void bootstrap(void) |
65 | void bootstrap(void) |
| 64 | { |
66 | { |
| 65 | version_print(); |
67 | version_print(); |
| Line 78... | Line 80... | ||
| 78 | 80 | ||
| 79 | if (bootinfo.memmap.total == 0) { |
81 | if (bootinfo.memmap.total == 0) { |
| 80 | printf("Error: no memory detected, halting.\n"); |
82 | printf("Error: no memory detected, halting.\n"); |
| 81 | halt(); |
83 | halt(); |
| 82 | } |
84 | } |
| - | 85 | ||
| - | 86 | /* |
|
| - | 87 | * SILO for some reason adds 0x400000 and subtracts |
|
| - | 88 | * bootinfo.physmem_start to/from silo_ramdisk_image. |
|
| - | 89 | * We just need plain physical address so we fix it up. |
|
| - | 90 | */ |
|
| - | 91 | if (silo_ramdisk_image) { |
|
| - | 92 | silo_ramdisk_image += bootinfo.physmem_start; |
|
| - | 93 | silo_ramdisk_image -= 0x400000; |
|
| - | 94 | } |
|
| 83 | 95 | ||
| 84 | printf("\nSystem info\n"); |
96 | printf("\nSystem info\n"); |
| 85 | printf(" memory: %dM starting at %P\n", |
97 | printf(" memory: %dM starting at %P\n", |
| 86 | bootinfo.memmap.total >> 20, bootinfo.physmem_start); |
98 | bootinfo.memmap.total >> 20, bootinfo.physmem_start); |
| 87 | 99 | ||
| 88 | printf("\nMemory statistics\n"); |
100 | printf("\nMemory statistics\n"); |
| 89 | printf(" kernel entry point at %P\n", KERNEL_VIRTUAL_ADDRESS); |
101 | printf(" kernel entry point at %P\n", KERNEL_VIRTUAL_ADDRESS); |
| 90 | printf(" %P: boot info structure\n", &bootinfo); |
102 | printf(" %P: boot info structure\n", &bootinfo); |
| 91 | 103 | ||