Subversion Repositories HelenOS

Rev

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

Filtering Options

Rev Age Author Path Log message Diff Changes
693 6784 d 1 h decky /kernel/trunk/arch/ia32/ simplify and cleanup ia32 boot process, remove obsolete stuff  
/kernel/trunk/arch/ia32/_link.ld.in
/kernel/trunk/arch/ia32/include/boot/boot.h
/kernel/trunk/arch/ia32/include/pm.h
/kernel/trunk/arch/ia32/src/boot/boot.S
/kernel/trunk/arch/ia32/src/mm/frame.c
/kernel/trunk/arch/ia32/src/pm.c
/kernel/trunk/arch/ia32/src/smp/ap.S
/kernel/trunk/arch/ia32/src/smp/apic.c
/kernel/trunk/arch/ia32/src/smp/smp.c
680 6787 d 20 h decky /kernel/trunk/arch/ remove deprecated pre-grub stuff on ia32
prepare for the same on amd64
 
/kernel/trunk/arch/ia32/src/boot/memmap.S
/kernel/trunk/arch/amd64/src/boot/boot.S
/kernel/trunk/arch/ia32/Makefile.inc
/kernel/trunk/arch/ia32/_link.ld.in
/kernel/trunk/arch/ia32/src/boot/boot.S
629 6807 d 23 h decky /kernel/trunk/ init task loading (yet buggy)  
/kernel/trunk/arch/ia32/boot/grub.img.gz
/kernel/trunk/arch/ia32/src/boot/boot.S
/kernel/trunk/generic/include/mm/frame.h
/kernel/trunk/generic/src/main/kinit.c
/kernel/trunk/generic/src/mm/frame.c
628 6808 d 1 h decky /kernel/trunk/ ia32: floppy boot image uses GRUB  
/kernel/trunk/arch/ia32/boot/grub.img.gz
/kernel/trunk/arch/ia32/boot/boot.S
/kernel/trunk/arch/ia32/boot/boot.ld
/kernel/trunk/arch/ia32/boot/Makefile
/kernel/trunk/arch/ia32/src/boot/boot.S
/kernel/trunk/generic/include/config.h
/kernel/trunk/generic/src/main/main.c
534 6818 d 23 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
/kernel
/SPARTAN
532 6819 d 0 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
/SPARTAN
/kernel
506 6831 d 0 h decky /kernel/trunk/ preparation for init task loading  
/kernel/trunk/arch/ia32/include/boot/memmapasm.h
/kernel/trunk/arch/ia32/include/boot/boot.h
/kernel/trunk/arch/ia32/include/boot/memmap.h
/kernel/trunk/arch/ia32/src/boot/boot.S
/kernel/trunk/arch/ia32/src/boot/memmap.S
/kernel/trunk/arch/mips32/Makefile.inc
/kernel/trunk/contrib/conf/msim.conf
/kernel/trunk/generic/src/main/main.c
501 6831 d 4 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
/kernel
/SPARTAN
472 6844 d 5 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.
 
/SPARTAN/trunk/Makefile
/SPARTAN/trunk/arch/amd64/src/asm_utils.S
/SPARTAN/trunk/arch/amd64/src/boot/boot.S
/SPARTAN/trunk/arch/amd64/src/smp/ap.S
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia64/include/asm.h
/SPARTAN/trunk/arch/ia64/include/interrupt.h
/SPARTAN/trunk/arch/ia64/include/register.h
/SPARTAN/trunk/arch/ia64/src/interrupt.c
/SPARTAN/trunk/arch/ia64/src/ivt.S
/SPARTAN/trunk/arch/mips32/src/context.S
/SPARTAN/trunk/arch/mips32/src/start.S
/SPARTAN/trunk/arch/sparc64/src/context.S
451 6846 d 0 h decky /SPARTAN/trunk/arch/ia32/src/boot/ (ignore this :))  
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/boot/memmap.S
/SPARTAN/trunk/arch/ia32/src/boot/boot.s
/SPARTAN/trunk/arch/ia32/src/boot/memmap.s
450 6846 d 0 h decky /SPARTAN/trunk/arch/ia32/src/boot/ (ignore this :))  
/SPARTAN/trunk/arch/ia32/src/boot/boot.s
/SPARTAN/trunk/arch/ia32/src/boot/memmap.s
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/boot/memmap.S
406 6871 d 22 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.
 
/SPARTAN/trunk/arch/amd64/src/boot/boot.S
/SPARTAN/trunk/arch/amd64/src/pm.c
/SPARTAN/trunk/arch/amd64/src/smp/ap.S
/SPARTAN/trunk/arch/ia32/_link.ld.in
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/boot/memmap.S
/SPARTAN/trunk/arch/ia32/src/smp/ap.S
371 6892 d 21 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.
 
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/mm/frame.c
347 6900 d 23 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.
 
/SPARTAN/trunk/arch/amd64/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/acpi/acpi.c
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/boot/memmap.S
/SPARTAN/trunk/arch/ia32/src/smp/mps.c
/SPARTAN/trunk/doc/arch/amd64
/SPARTAN/trunk/doc/arch/ia32
/SPARTAN/trunk/doc/arch/mips32
323 6905 d 7 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.
 
/SPARTAN/trunk/arch/amd64/src/mm/page.c
/SPARTAN/trunk/arch/ia32/src/asm.S
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/mm/page.c
/SPARTAN/trunk/doc/TODO
/SPARTAN/trunk/src/debug/print.c
314 6907 d 20 h palkovsky /SPARTAN/trunk/ Small cleanups  
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/mips/src/asm.S
/SPARTAN/trunk/arch/mips/src/start.S
/SPARTAN/trunk/src/Makefile
300 6909 d 6 h palkovsky /SPARTAN/trunk/arch/ia32/ Backported AMD64 linker and boot changes back to IA32.  
/SPARTAN/trunk/arch/ia32/_link.ld
/SPARTAN/trunk/arch/ia32/include/mm/page.h
/SPARTAN/trunk/arch/ia32/include/pm.h
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/pm.c
/SPARTAN/trunk/arch/ia32/src/smp/ap.S
/SPARTAN/trunk/arch/ia32/src/smp/smp.c
298 6909 d 7 h decky /SPARTAN/trunk/ remove lower 2 GB identity mapping (IA-32)  
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/mm/page.c
/SPARTAN/trunk/arch/ia32/src/smp/ap.S
/SPARTAN/trunk/arch/ia32/src/smp/smp.c
/SPARTAN/trunk/src/main/main.c
285 6910 d 9 h decky /SPARTAN/trunk/arch/ia32/ finish GRUB booting (including memory map and SMP)  
/SPARTAN/trunk/arch/ia32/_link.ld
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/boot/memmap.S
280 6910 d 19 h decky /SPARTAN/trunk/arch/ia32/ basic GRUB memory map  
/SPARTAN/trunk/arch/ia32/include/boot/boot.h
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
279 6910 d 21 h decky /SPARTAN/trunk/arch/ia32/ GRUB basic booting (IA-32)  
/SPARTAN/trunk/arch/ia32/Makefile.inc.cross
/SPARTAN/trunk/arch/ia32/include/pm.h
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/pm.c
/SPARTAN/trunk/arch/ia32/src/smp/ap.S
/SPARTAN/trunk/arch/ia32/src/smp/smp.c
271 6911 d 2 h decky /SPARTAN/trunk/arch/ia32/src/ yet another GDT/IDT fix/cleanup  
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/pm.c
267 6911 d 3 h decky /SPARTAN/trunk/arch/ia32/ proper way of initializing GDT during boot on IA-32, fixes the nasty hack
SMP might be still broken
 
/SPARTAN/trunk/arch/ia32/_link.ld
/SPARTAN/trunk/arch/ia32/include/boot/boot.h
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/ia32.c
/SPARTAN/trunk/arch/ia32/src/mm/frame.c
/SPARTAN/trunk/arch/ia32/src/pm.c
/SPARTAN/trunk/arch/ia32/src/smp/ap.S
264 6911 d 6 h cejka /SPARTAN/trunk/ E option in printf added.  
/SPARTAN/trunk/arch/ia32/src/boot/memmap.S
/SPARTAN/trunk/include/print.h
/SPARTAN/trunk/src/debug/print.c
/SPARTAN/trunk/test/print/print1/test.c
243 6912 d 4 h palkovsky /SPARTAN/trunk/ Resolved mapping of e820 boot area, so that it can be accessed as
e820table from 32-bit mode and e820table_boot from real mode.
 
/SPARTAN/trunk/arch/amd64/_link.ld
/SPARTAN/trunk/arch/ia32/_link.ld
/SPARTAN/trunk/arch/ia32/src/boot/memmap.S
/SPARTAN/trunk/arch/ia32/src/mm/memory_init.c
/SPARTAN/trunk/src/build.amd64
235 6913 d 2 h decky /SPARTAN/trunk/ load the kernel above 1 MB on IA-32  
/SPARTAN/trunk/arch/ia32/_link.ld
/SPARTAN/trunk/arch/ia32/include/boot/boot.h
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/drivers/i8042.c
/SPARTAN/trunk/arch/ia32/src/ia32.c
/SPARTAN/trunk/arch/ia32/src/mm/frame.c
/SPARTAN/trunk/arch/ia32/src/mm/page.c
/SPARTAN/trunk/src/main/main.c
232 6913 d 3 h jermar /SPARTAN/trunk/arch/ia32/src/ Fix addresses in GDT and IDT to be virtual addresses.  
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/pm.c
/SPARTAN/trunk/arch/ia32/src/smp/ap.S
222 6913 d 10 h decky /SPARTAN/trunk/arch/ia32/ IA-32 GRUB support (alpha)  
/SPARTAN/trunk/arch/ia32/include/boot/boot.h
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
216 6913 d 19 h palkovsky /SPARTAN/trunk/ hardcoded_symbol fixed into linker script on amd64/ia32/mips architecture  
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/_link.ld
/SPARTAN/trunk/arch/amd64/include/asm.h
/SPARTAN/trunk/arch/amd64/src/dummy.s
/SPARTAN/trunk/arch/ia32/_link.ld
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/interrupt.c
/SPARTAN/trunk/arch/mips/_link.ld
/SPARTAN/trunk/src/build.amd64
177 6916 d 7 h jermar /SPARTAN/trunk/ Add some comments to IA-32 src/boot/boot.S and src/smp.S.

Make the boot stack start on page boundary.
This is required by get_stack_base().

Define 'THE' macro.

Implement preemption_disable() and preemption_enable().

Add memory barrier macros.
IA-32 macros need support for older processors.
Non IA-32 macros are dummy.

Reduction of many #include paths.
 
/SPARTAN/trunk/arch/amd64/include/barrier.h
/SPARTAN/trunk/arch/ia32/include/asm.h
/SPARTAN/trunk/arch/ia32/include/barrier.h
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/mm/frame.c
/SPARTAN/trunk/arch/ia32/src/smp/ap.S
/SPARTAN/trunk/arch/ia64/include/barrier.h
/SPARTAN/trunk/arch/mips/include/barrier.h
/SPARTAN/trunk/arch/mips/include/cpu.h
/SPARTAN/trunk/arch/mips/include/mm/page.h
/SPARTAN/trunk/arch/ppc/include/barrier.h
/SPARTAN/trunk/include/arch.h
/SPARTAN/trunk/include/cpu.h
/SPARTAN/trunk/include/proc/task.h
/SPARTAN/trunk/include/proc/thread.h
/SPARTAN/trunk/src/main/main.c
/SPARTAN/trunk/src/preempt/preemption.c
176 6916 d 22 h jermar /SPARTAN/trunk/arch/ia32/src/boot/ Initialize the stack prior to using it.  
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
174 6919 d 22 h jermar /SPARTAN/trunk/ Small changes.
Coding style fix in main.c.
Make 'cli' be the first instruction in boot.S again.
 
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/src/main/main.c
149 6949 d 23 h jermar /SPARTAN/trunk/ Fix IA-32's get_memory_size() to return size of memory in bytes instead of in kilobytes.
Some cosmetics in memory map detection.
The IA-32 kernel is functional again.
 
/SPARTAN/trunk/arch/ia32/src/boot/memmap.S
/SPARTAN/trunk/arch/ia32/src/mm/memory_init.c
/SPARTAN/trunk/src/main/main.c
139 6956 d 2 h cejka /SPARTAN/trunk/arch/ia32/ Added e801 method for obtaining memory size, improved e820 method for memory map.  
/SPARTAN/trunk/arch/ia32/include/boot/memmapasm.h
/SPARTAN/trunk/arch/ia32/include/asm.h
/SPARTAN/trunk/arch/ia32/include/boot/memmap.h
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/boot/memmap.S
/SPARTAN/trunk/arch/ia32/src/mm/frame.c
125 6960 d 21 h jermar /SPARTAN/trunk/ Huge indentation fix.  
/SPARTAN/trunk/arch/ia32/boot/boot.S
/SPARTAN/trunk/arch/ia32/boot/boot.ld
/SPARTAN/trunk/arch/ia32/include/cpu.h
/SPARTAN/trunk/arch/ia32/src/acpi/acpi.c
/SPARTAN/trunk/arch/ia32/src/asm.s
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/context.s
/SPARTAN/trunk/arch/ia32/src/cpu/cpu.c
/SPARTAN/trunk/arch/ia32/src/cpuid.s
/SPARTAN/trunk/arch/ia32/src/drivers/ega.c
/SPARTAN/trunk/arch/ia32/src/drivers/i8254.c
/SPARTAN/trunk/arch/ia32/src/drivers/i8259.c
/SPARTAN/trunk/arch/ia32/src/fpu_context.c
/SPARTAN/trunk/arch/ia32/src/ia32.c
/SPARTAN/trunk/arch/ia32/src/interrupt.c
/SPARTAN/trunk/arch/ia32/src/mm/frame.c
/SPARTAN/trunk/arch/ia32/src/mm/page.c
/SPARTAN/trunk/arch/ia32/src/pm.c
/SPARTAN/trunk/arch/ia32/src/proc/scheduler.c
/SPARTAN/trunk/arch/ia32/src/smp/apic.c
/SPARTAN/trunk/arch/ia32/src/smp/mps.c
/SPARTAN/trunk/arch/ia32/src/userspace.c
/SPARTAN/trunk/arch/ia64/_link.ld
/SPARTAN/trunk/arch/ia64/boot/_link.ld
/SPARTAN/trunk/arch/ia64/include/mm/page.h
/SPARTAN/trunk/arch/mips/_link.ld
/SPARTAN/trunk/arch/mips/boot/boot.s
/SPARTAN/trunk/arch/mips/include/context.h
/SPARTAN/trunk/arch/mips/include/cpu.h
/SPARTAN/trunk/arch/mips/include/mm/page.h
/SPARTAN/trunk/arch/mips/src/cpu/cpu.c
/SPARTAN/trunk/arch/mips/src/interrupt.c
/SPARTAN/trunk/arch/mips/src/mips.c
/SPARTAN/trunk/arch/mips/src/start.S
/SPARTAN/trunk/arch/powerpc/_link.ld
/SPARTAN/trunk/include/mm/page.h
/SPARTAN/trunk/include/proc/thread.h
/SPARTAN/trunk/include/stackarg.h
/SPARTAN/trunk/include/synch/semaphore.h
/SPARTAN/trunk/include/synch/waitq.h
/SPARTAN/trunk/include/time/timeout.h
/SPARTAN/trunk/src/cpu/cpu.c
/SPARTAN/trunk/src/main/kinit.c
/SPARTAN/trunk/src/mm/frame.c
/SPARTAN/trunk/src/mm/page.c
/SPARTAN/trunk/src/proc/scheduler.c
/SPARTAN/trunk/src/proc/thread.c
/SPARTAN/trunk/src/time/clock.c
/SPARTAN/trunk/src/time/timeout.c
/SPARTAN/trunk/test/fpu/fpu1/test.c
113 6999 d 18 h jermar /SPARTAN/trunk/ SMP recovery patch #2 (SMP is no longer broken !!!).
Fix missing KA2PA() operation in ap.S which was causing page faults during AP early initialization.
Fix bug in map_page_to_frame(): 'root' was interpretted as kernel address while read_dba() returns physical address.
Make references to page directory and page tables use kernel addresses instead of physical addresses.

Massive frame allocation code cleanup.
Basically revert to what we had had before implementation of userspace.

Usual cosmetics.
 
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/mm/frame.c
/SPARTAN/trunk/arch/ia32/src/mm/page.c
/SPARTAN/trunk/arch/ia32/src/pm.c
/SPARTAN/trunk/arch/ia32/src/smp/ap.S
/SPARTAN/trunk/arch/ia32/src/smp/mps.c
/SPARTAN/trunk/arch/mips/src/mm/frame.c
/SPARTAN/trunk/src/mm/frame.c
/SPARTAN/trunk/src/proc/scheduler.c
112 6999 d 22 h jermar /SPARTAN/trunk/ Define two placeholder functions for atomic_inc and atomic_dec on IA-64.

Add Ondrej Palkovsky to doc/AUTHORS.

Tweaks in IA-32 low level code to bring SMP back to life. (SMP still broken)
 
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/pm.c
/SPARTAN/trunk/arch/ia32/src/smp/ap.S
/SPARTAN/trunk/arch/ia32/src/smp/apic.c
/SPARTAN/trunk/arch/ia64/include/atomic.h
/SPARTAN/trunk/arch/mips/include/atomic.h
/SPARTAN/trunk/doc/AUTHORS
/SPARTAN/trunk/doc/requirements
/SPARTAN/trunk/src/Makefile.config
110 7001 d 4 h jermar /SPARTAN/trunk/ SMP recovery patch #1. (SMP still broken)
Move ap_boot() to K_TEXT_START_2 section.
Change ap_boot() to cope with mapping of kernel address space.
Change some addresses in mps.c from kernel to physical.

MIPS.
Move msim dprinter device to 0xB0000000.
This address is from kseg1 (unmapped, uncached) segment.
 
/SPARTAN/trunk/arch/ia32/_link.ld
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/boot/memmap.S
/SPARTAN/trunk/arch/ia32/src/mm/page.c
/SPARTAN/trunk/arch/ia32/src/pm.c
/SPARTAN/trunk/arch/ia32/src/smp/ap.S
/SPARTAN/trunk/arch/ia32/src/smp/apic.c
/SPARTAN/trunk/arch/ia32/src/smp/mps.c
/SPARTAN/trunk/arch/mips/src/putchar.c
/SPARTAN/trunk/doc/arch/mips
/SPARTAN/trunk/src/Makefile.config
105 7003 d 19 h jermar /SPARTAN/trunk/ Big changes in IA-32 address space map.
Now the kernel is mapped above 0x80000000. Finally!
Userspace address space starts at 0x00000000.
Changes in many places.
This improvement temporarily breaks SMP and most likely also other stuff.
Supported size of memory is now only 4M as it is the biggest size that can be mapped at once on IA-32.

Changes in linker script.
Changes required because of the above.
Do not patch hardcoded_* variables but assign to them instead.

Cosmetic changes here and there.
 
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia32/_link.ld
/SPARTAN/trunk/arch/ia32/include/mm/page.h
/SPARTAN/trunk/arch/ia32/include/mm/vm.h
/SPARTAN/trunk/arch/ia32/include/pm.h
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/boot/memmap.S
/SPARTAN/trunk/arch/ia32/src/mm/frame.c
/SPARTAN/trunk/arch/ia32/src/mm/page.c
/SPARTAN/trunk/arch/ia32/src/pm.c
/SPARTAN/trunk/arch/ia64/include/mm/vm.h
/SPARTAN/trunk/arch/mips/include/mm/vm.h
/SPARTAN/trunk/arch/mips/src/asm.s
/SPARTAN/trunk/doc/AUTHORS
/SPARTAN/trunk/include/config.h
/SPARTAN/trunk/src/main/main.c
101 7010 d 2 h cejka /SPARTAN/trunk/arch/ia32/src/boot/ Small bug in e820 memmap function repaired.  
/SPARTAN/trunk/arch/ia32/src/boot/memmap.S