Subversion Repositories Kolibri OS

Rev

Hide changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
9977 69 d 8 h rgimad /kernel/trunk/ Change "mov reg, 0" to "xor reg, reg" where it's possible  
/kernel/trunk/bootloader/uefi4kos/uefi32kos.asm
/kernel/trunk/bootloader/uefi4kos/uefi64kos.asm
/kernel/trunk/core/apic.inc
/kernel/trunk/core/conf_lib.inc
/kernel/trunk/core/ext_lib.inc
/kernel/trunk/video/vga.inc
9958 104 d 2 h dunkaist / Switch to the unified (BIOS and UEFI) kernel image

The initial patch by bzt with my minor edits.
 
/kernel/trunk/bootbios.inc
/kernel/trunk/bootbios.asm
/data/Tupfile.lua
/kernel/trunk/Tupfile.lua
/kernel/trunk/boot/bootcode.inc
/kernel/trunk/boot/bootstr.inc
/kernel/trunk/bootloader/uefi4kos/uefi32kos.asm
/kernel/trunk/bootloader/uefi4kos/uefi64kos.asm
/kernel/trunk/const.inc
/kernel/trunk/core/apic.inc
/kernel/trunk/data32.inc
/kernel/trunk/init.inc
/kernel/trunk/kernel.asm
/kernel/trunk/video/cursors.inc
9286 891 d 5 h dunkaist /kernel/trunk/bootloader/uefi4kos/ uefi64kos: Fix reporting of file size  
/kernel/trunk/bootloader/uefi4kos/uefi64kos.asm
9253 904 d 2 h dunkaist /kernel/trunk/bootloader/uefi4kos/ uefi64kos: Fix stack alignment on function calls.

It is a formal requirement of UEFI spec that the stack is to be aligned
on 16 bytes on all calls to service routines. I changed eficall macro to
fstcall one in my previous commit. Due to differences in macro logic
that change broke UEFI boot on some platforms that do care about stack
alignment. This commit should fix the issue.
 
/kernel/trunk/bootloader/uefi4kos/uefi32.inc
/kernel/trunk/bootloader/uefi4kos/uefi64.inc
/kernel/trunk/bootloader/uefi4kos/uefi64kos.asm
9227 908 d 2 h dunkaist /kernel/trunk/ uefi64kos: Detect last PCI bus, use fastcall macro.

* Detect last PCI bus via PCI Root Bridge IO protocol (uefi64kos only).
* fastcall macro by Tomasz is much cleaner than eficall from osdev board.
 
/kernel/trunk/bootloader/uefi4kos/proc64.inc
/kernel/trunk/acpi/acpi.inc
/kernel/trunk/bootloader/uefi4kos/uefi.inc
/kernel/trunk/bootloader/uefi4kos/uefi32.inc
/kernel/trunk/bootloader/uefi4kos/uefi32kos.asm
/kernel/trunk/bootloader/uefi4kos/uefi64.inc
/kernel/trunk/bootloader/uefi4kos/uefi64kos.asm
/kernel/trunk/bus/pci/pci16.inc
/kernel/trunk/bus/pci/pci32.inc
/kernel/trunk/const.inc
8865 1045 d 20 h leency /kernel/trunk/bootloader/uefi4kos/ uefi/kolibri.ini: clarify /sys directory path  
/kernel/trunk/bootloader/uefi4kos/kolibri.ini
8864 1046 d 6 h dunkaist /kernel/trunk/bootloader/uefi4kos/ uefi4kos: Disable debug output by default.  
/kernel/trunk/bootloader/uefi4kos/kolibri.ini
8656 1122 d 8 h dunkaist /kernel/trunk/bootloader/uefi4kos/ uefi4kos: Make sure 32bit trampoline is below 4GiB

This fixes booting via uefi64kos on some systems.
 
/kernel/trunk/bootloader/uefi4kos/uefi64kos.asm
8284 1243 d 11 h dunkaist /kernel/trunk/ uefi4kos: Fix boot and mouse pointer on some configurations.

UEFI firmware doesn't use VESA mode codes, so disable this check
for UEFI boot.
 
/kernel/trunk/bootloader/uefi4kos/uefi32kos.asm
/kernel/trunk/bootloader/uefi4kos/uefi64kos.asm
/kernel/trunk/init.inc
/kernel/trunk/video/cursors.inc
8220 1255 d 9 h dunkaist /kernel/trunk/bootloader/uefi4kos/ uefi4kos: Fix memmap conversion from uefi to e820 format.  
/kernel/trunk/bootloader/uefi4kos/uefi32kos.asm
/kernel/trunk/bootloader/uefi4kos/uefi64kos.asm
8206 1257 d 2 h dunkaist /kernel/trunk/bootloader/uefi4kos/ uefi4kos: Fix memmap_block_cnt and 32->64 bit sign extension in arithmetics.  
/kernel/trunk/bootloader/uefi4kos/uefi32kos.asm
/kernel/trunk/bootloader/uefi4kos/uefi64kos.asm
8150 1267 d 10 h dunkaist / Add basic 32-bit UEFI loader.  
/kernel/trunk/bootloader/uefi4kos/uefi32.inc
/kernel/trunk/bootloader/uefi4kos/uefi32kos.asm
/kernel/trunk/bootloader/uefi4kos/uefi64.inc
/kernel/trunk/bootloader/uefi4kos/uefi64kos.asm
/kernel/trunk/bootloader/uefi4kos/uefi4kos.asm
/data/Tupfile.lua
/kernel/trunk/bootloader/uefi4kos/Tupfile.lua
/kernel/trunk/bootloader/uefi4kos/kolibri.ini
/kernel/trunk/bootloader/uefi4kos/uefi.inc
8092 1299 d 1 h dunkaist / uefi4kos: Read config and kernel files from the disk.

* Now there is a config file with boot options, example included.
* Config, kernel and ramdisk are loaded from the disk, not compiled in.
* DEVICES.DAT file is also optionally loaded from the disk.
* Also, move the loader to /kernel/trunk/bootloader/uefi4kos.
 
/kernel/trunk/bootloader/uefi4kos
/kernel/trunk/bootloader/uefi4kos/Tupfile.lua
/kernel/trunk/bootloader/uefi4kos/kolibri.ini
/kernel/trunk/bootloader/uefi4kos/uefi.inc
/kernel/trunk/bootloader/uefi4kos/uefi4kos.asm
/kernel/trunk/boot/uefi.inc
/kernel/trunk/boot/uefi4kos.asm
/data/Tupfile.lua
/kernel/trunk/Tupfile.lua
/kernel/trunk/boot/parsers.inc
/kernel/trunk/const.inc
/kernel/trunk/core/apic.inc
/kernel/trunk/data32.inc
/kernel/trunk/kernel.asm