Changeset 7dcde32 in mainline for arch/ppc32/loader/main.c


Ignore:
Timestamp:
2006-03-24T18:29:04Z (19 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
c6143b4
Parents:
f941347
Message:

extend boot info

File:
1 edited

Legend:

Unmodified
Added
Removed
  • arch/ppc32/loader/main.c

    rf941347 r7dcde32  
    3737#define HEAP_GAP 1024000
    3838
    39 memmap_t memmap;
     39typedef struct {
     40        memmap_t memmap;
     41        screen_t screen;
     42} bootinfo_t;
     43
     44bootinfo_t bootinfo;
    4045
    4146
     
    8388        check_align(&trans, "Translation table");
    8489       
    85         if (!ofw_memmap(&memmap)) {
     90        if (!ofw_memmap(&bootinfo.memmap)) {
    8691                printf("Error: Unable to get memory map\n");
    8792                halt();
    8893        }
    8994       
     95        if (!ofw_screen(&bootinfo.screen)) {
     96                printf("Error: Unable to get screen properties\n");
     97                halt();
     98        }
     99       
     100        printf("\nDevice statistics\n");
     101        printf(" screen at %L, resolution %dx%d, %d bpp (scanline %d bytes)\n", bootinfo.screen.addr, bootinfo.screen.width, bootinfo.screen.height, bootinfo.screen.bpp, bootinfo.screen.scanline);
     102       
    90103        void *real_mode_pa = ofw_translate(&real_mode);
    91104        void *trans_pa = ofw_translate(&trans);
    92         void *memmap_pa = ofw_translate(&memmap);
     105        void *bootinfo_pa = ofw_translate(&bootinfo);
    93106       
    94         printf("Memory statistics (total %d MB)\n", memmap.total >> 20);
     107        printf("\nMemory statistics (total %d MB)\n", bootinfo.memmap.total >> 20);
    95108        printf(" kernel image         at %L (size %d bytes)\n", KERNEL_START, KERNEL_SIZE);
    96         printf(" memory map           at %L (physical %L)\n", &memmap, memmap_pa);
     109        printf(" boot info            at %L (physical %L)\n", &bootinfo, bootinfo_pa);
    97110        printf(" bootstrap trampoline at %L (physical %L)\n", &real_mode, real_mode_pa);
    98111        printf(" translation table    at %L (physical %L)\n", &trans, trans_pa);
     
    108121        fix_overlap(&real_mode, &real_mode_pa, "Bootstrap trampoline", &top);
    109122        fix_overlap(&trans, &trans_pa, "Translation table", &top);
    110         fix_overlap(&memmap, &memmap_pa, "Memory map", &top);
     123        fix_overlap(&bootinfo, &bootinfo_pa, "Boot info", &top);
    111124       
    112         printf("Booting the kernel...\n");
    113         jump_to_kernel(memmap_pa, trans_pa, KERNEL_SIZE, real_mode_pa);
     125        printf("\nBooting the kernel...\n");
     126        jump_to_kernel(bootinfo_pa, trans_pa, KERNEL_SIZE, real_mode_pa);
    114127}
Note: See TracChangeset for help on using the changeset viewer.