Subversion Repositories HelenOS

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
4195 6106 d 0 h decky /trunk/kernel/arch/ detect SYSENTER/SYSEXIT support on boot
(this serves as a hint for people who try to boot HelenOS on Bochs emulating plain Pentium,
unfortunatelly it also kills VirtualBox, as it does not support SYSENTER/SYSEXIT officially,
see http://www.virtualbox.org/ticket/1248)
 
4127 6123 d 7 h decky /trunk/ parse VESA mode from a string
unify VESA initialization for ia32 and amd64
 
4015 6133 d 7 h decky /trunk/kernel/arch/ia32/ rename ia32_cboot() to arch_pre_main() and move it to ia32.c (to be in line with other platforms)  
3985 6135 d 1 h svoboda /trunk/kernel/arch/ia32/src/boot/ Rewrite rest of multiboot info parsing to C.  
3984 6135 d 1 h svoboda /trunk/kernel/ The ia32-specific boot code is written completely in assembly for no reason. Start fixing this. For now rewrite the copying of multiboot info to C.  
3802 6176 d 5 h decky /trunk/kernel/arch/ fallback to VGA registers if VESA routine fails  
2784 6481 d 23 h jermar /trunk/kernel/arch/ Fortify ia32 and amd64 kernels against mallicious uspace applications that set
DF prior to entering the kernel. For AMD64 syscalls, we don't use the CLD
instruction, but make use of the SFMASK MSR instead. Simics works fine with
it, but QEMU seems to have a problem.
 
2725 6524 d 6 h decky /trunk/kernel/ remove config.memory_size, get_memory_size() and memory_init.{c|d}
the amount of available memory can be calculated from the sizes of the zones
add FRAMES2SIZE, SIZE2KB and SIZE2MB functions/macros (code readability)
 
2302 6802 d 3 h decky /trunk/ force VGA palette to 3:2:3 palette on 8 bpp modes
(this fixes ticket #33)
 
2222 6827 d 23 h decky /trunk/kernel/ map kernel pages explicitly as writable (this solves compatibility issues with Intel Core 2)
make VESA framebuffer initialization more robust
 
2221 6828 d 1 h decky /trunk/kernel/arch/ia32/src/boot/ fix typo in comment  
2220 6828 d 1 h decky /trunk/kernel/arch/ia32/src/boot/ check for PSE support, add error message on PSE not present
make initial mapping explicitly writeable, turn PAE explicitly off (just in case)
 
2089 6898 d 7 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2071 6909 d 0 h jermar /trunk/ (c) versus (C)  
1811 7086 d 8 h decky /trunk/kernel/arch/ unify bootstrapping  
1787 7099 d 2 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1641 7133 d 10 h decky /kernel/trunk/arch/ port VESA VBE changes to AMD64  
1639 7133 d 18 h decky /kernel/trunk/arch/ia32/src/boot/ VESA VBE code cleanup, works in VMWare now  
1290 7166 d 6 h vana /kernel/trunk/arch/ VESA detection failure fix.

(Some headers)
 
1288 7166 d 8 h jermar /kernel/trunk/ Complete implementation of copy_from_uspace() and copy_to_uspace()
for amd64 and ia32. Other architectures still compile and run,
but need to implement their own assembly-only memcpy(), memcpy_from_uspace(),
memcpy_to_uspace() and their failover parts. For these architectures
only dummy implementations are provided.
 
1287 7166 d 10 h vana /kernel/trunk/ ia32 VESA FB support  
1037 7216 d 9 h decky /kernel/trunk/ support for more init tasks
(might break some archs yet)
 
693 7283 d 2 h decky /kernel/trunk/arch/ia32/ simplify and cleanup ia32 boot process, remove obsolete stuff  
680 7286 d 22 h decky /kernel/trunk/arch/ remove deprecated pre-grub stuff on ia32
prepare for the same on amd64
 
629 7307 d 1 h decky /kernel/trunk/ init task loading (yet buggy)  
628 7307 d 2 h decky /kernel/trunk/ ia32: floppy boot image uses GRUB  
534 7318 d 1 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 7318 d 1 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
506 7330 d 2 h decky /kernel/trunk/ preparation for init task loading  
501 7330 d 5 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
472 7343 d 6 h jermar /SPARTAN/trunk/ Changes in build system.
For .S targets, always do -D__ASM__.
Remove unnecessary #define __ASM__ from various *.S files.
At the end of build, generate disassembler dump for kernel.raw.

ia64 work.
Better General Exception handler.
 
451 7345 d 1 h decky /SPARTAN/trunk/arch/ia32/src/boot/ (ignore this :))  
450 7345 d 1 h decky /SPARTAN/trunk/arch/ia32/src/boot/ (ignore this :))  
406 7370 d 23 h jermar /SPARTAN/trunk/arch/ Fix directives for K_TEXT_START, K_TEXT_START_2 and K_DATA_START sections to be more descriptive about section's content.
Remove LOAD(0xdeadbeaf) from ia32 linker script.
Remove __fake from amd64 pm.c.
 
371 7391 d 22 h jermar /SPARTAN/trunk/arch/ia32/src/ Complete map_kernel() in boot.S to map the entire 4G space.

Change IA-32 frame_arch_init() to add zone with lower base addresses first.
 
347 7400 d 0 h jermar /SPARTAN/trunk/ Documentation updates for amd64, mips32 and ia32.

Replace %L with %P printf() formatter in MPS and ACPI detection functions to print addresses in maximal width.

Tweak memmap.S and IA-32 and AMd64 boot.S.
Cancel unneeded instructions.
Replace cmpl $0, %ebx with testl %ebx, %ebx.
Move memmap.S data to K_DATA_START section.
 
323 7404 d 8 h jermar /SPARTAN/trunk/ Add comments for new floating point modifiers to print.c.
Remove left-over comments from AMD64 and IA-32 page.c.
Coding style clean up.
 
314 7406 d 21 h palkovsky /SPARTAN/trunk/ Small cleanups  
300 7408 d 8 h palkovsky /SPARTAN/trunk/arch/ia32/ Backported AMD64 linker and boot changes back to IA32.  
298 7408 d 8 h decky /SPARTAN/trunk/ remove lower 2 GB identity mapping (IA-32)