Changeset 7cb567cd in mainline for kernel/arch/ia32/src/boot


Ignore:
Timestamp:
2007-04-08T20:52:53Z (19 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
e5dbbe5
Parents:
328f324b
Message:

map kernel pages explicitly as writable (this solves compatibility issues with Intel Core 2)
make VESA framebuffer initialization more robust

File:
1 edited

Legend:

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

    r328f324b r7cb567cd  
    6464        multiboot_meeting_point:
    6565       
    66         pushl %ebx                                                      # save parameters from GRUB
    67         pushl %eax
     66        movl %eax, grub_eax                                     # save parameters from GRUB
     67        movl %ebx, grub_ebx
    6868       
    6969        xorl %eax, %eax 
     
    105105        call map_kernel                                                 # map kernel and turn paging on
    106106       
    107         popl %eax
    108         popl %ebx
     107        movl grub_eax, %eax
     108        movl grub_ebx, %ebx
    109109        cmpl $MULTIBOOT_LOADER_MAGIC, %eax                              # compare GRUB signature
    110110        je valid_boot
     
    482482.code32
    483483vesa_init_protect:
    484         popl %esp
    485 
    486484        movw $selector(KDATA_DES), %cx
    487485        movw %cx, %es
     
    491489        movw %cx, %ss
    492490       
     491        movl $START_STACK, %esp                 # initialize stack pointer
     492
    493493        jmpl $selector(KTEXT_DES), $vesa_meeting_point
    494494
     
    503503        .space 4096, 0
    504504
     505grub_eax:
     506        .long 0
     507
     508grub_ebx:
     509        .long 0
     510
    505511pse_msg:
    506512        .ascii "Page Size Extension not supported. System halted.\0"
Note: See TracChangeset for help on using the changeset viewer.