Changeset bf25efb in mainline


Ignore:
Timestamp:
2009-03-01T19:35:58Z (15 years ago)
Author:
Jiri Svoboda <jirik.svoboda@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
0d5a50c
Parents:
4b241f3
Message:

Rewrite rest of multiboot info parsing to C.

Location:
kernel/arch/ia32/src/boot
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/ia32/src/boot/boot.S

    r4b241f3 rbf25efb  
    105105        call map_kernel                                                 # map kernel and turn paging on
    106106
    107         movl grub_eax, %eax
    108         movl grub_ebx, %ebx
    109         cmpl $MULTIBOOT_LOADER_MAGIC, %eax                              # compare GRUB signature
    110         je valid_boot
    111 
    112                 xorl %ecx, %ecx                                                 # no memory map available
    113                 movl %ecx, e820counter
    114 
    115                 jmp invalid_boot
    116 
    117         valid_boot:
    118 
    119         movl grub_eax, %eax
    120         movl grub_ebx, %ebx
    121 
    122         # ia32_boot(grub_eax, grub_ebx)
    123         pushl %ebx
    124         pushl %eax
     107        # ia32_cboot(grub_eax, grub_ebx)
     108        pushl grub_ebx
     109        pushl grub_eax
    125110        call ia32_cboot         # Does not return.
    126111
    127112        # Not reached.
    128 
    129         invalid_boot:
    130113
    131114        cli
  • kernel/arch/ia32/src/boot/cboot.c

    r4b241f3 rbf25efb  
    5353        uint32_t i;
    5454
    55         flags = mi->flags;
     55        if (signature == MULTIBOOT_LOADER_MAGIC) {
     56                flags = mi->flags;
     57        } else {
     58                /* No multiboot info available. */
     59                flags = 0;
     60        }
    5661
    5762        /* Copy module information. */
Note: See TracChangeset for help on using the changeset viewer.