Subversion Repositories HelenOS-historic

Rev

Go to most recent revision | Hide changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
309 6960 d 2 h palkovsky /SPARTAN/trunk/ Added architecture independent hooks for fpu lazy context switching.
It is enabled by defining FPU_LAZY
 
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/include/cpu.h
/SPARTAN/trunk/arch/amd64/src/cpu/cpu.c
/SPARTAN/trunk/arch/amd64/src/fpu_context.c
/SPARTAN/trunk/arch/amd64/src/interrupt.c
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia32/Makefile.inc.cross
/SPARTAN/trunk/arch/ia32/include/cpu.h
/SPARTAN/trunk/arch/ia32/include/fpu_context.h
/SPARTAN/trunk/arch/ia32/src/cpu/cpu.c
/SPARTAN/trunk/arch/ia32/src/fpu_context.c
/SPARTAN/trunk/arch/ia32/src/interrupt.c
/SPARTAN/trunk/arch/ia64/src/dummy.s
/SPARTAN/trunk/arch/ia64/src/fpu_context.c
/SPARTAN/trunk/arch/mips/src/dummy.s
/SPARTAN/trunk/arch/mips/src/fpu_context.c
/SPARTAN/trunk/arch/ppc/src/dummy.s
/SPARTAN/trunk/arch/ppc/src/fpu_context.c
/SPARTAN/trunk/include/fpu_context.h
/SPARTAN/trunk/include/proc/scheduler.h
/SPARTAN/trunk/src/proc/scheduler.c
301 6961 d 0 h palkovsky /SPARTAN/trunk/arch/ Backported amd64 build process back to ia32.  
/SPARTAN/trunk/arch/ia32/_link.ld.in
/SPARTAN/trunk/arch/ia32/_link.ld
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/_link.ld.in
/SPARTAN/trunk/arch/ia32/Makefile.inc
293 6961 d 13 h palkovsky /SPARTAN/trunk/ Symbol table now contains static functions too.
NOTE: gcc heavily inlines, be aware of optimizations.

Removed excesive item from boot page tables.
 
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia64/Makefile.inc
/SPARTAN/trunk/arch/mips/Makefile.inc
/SPARTAN/trunk/arch/ppc/Makefile.inc
/SPARTAN/trunk/src/Makefile
/SPARTAN/trunk/tools/genmap.py
289 6961 d 17 h palkovsky /SPARTAN/trunk/ Added preprocessed linker script to AMD architecture, so that
the constants are all only in the header files.
 
/SPARTAN/trunk/arch/amd64/_link.ld.in
/SPARTAN/trunk/arch/amd64/_link.ld
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/include/mm/page.h
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia64/Makefile.inc
/SPARTAN/trunk/arch/mips/Makefile.inc
/SPARTAN/trunk/arch/ppc/Makefile.inc
/SPARTAN/trunk/src/Makefile
/SPARTAN/trunk/src/clean.amd64
277 6962 d 15 h palkovsky /SPARTAN/trunk/arch/ Reverted APIC mapping back to identity mapping.
Added AMD64 SMP support. Works now!
 
/SPARTAN/trunk/arch/amd64/src/smp/ap.S
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/_link.ld
/SPARTAN/trunk/arch/amd64/src/boot/boot.S
/SPARTAN/trunk/arch/amd64/src/dummy.s
/SPARTAN/trunk/arch/amd64/src/pm.c
/SPARTAN/trunk/arch/ia32/src/smp/mps.c
/SPARTAN/trunk/arch/ia32/src/smp/smp.c
268 6962 d 20 h palkovsky /SPARTAN/trunk/ Added symbol table lookup in exceptions.
This breaks ia64 & ppc architecture compiles.
 
/SPARTAN/trunk/arch/amd64/include/boot/boot.h
/SPARTAN/trunk/arch/amd64/src/smp
/SPARTAN/trunk/include/symtab.h
/SPARTAN/trunk/src/debug/genmap.py
/SPARTAN/trunk/src/debug/symtab.c
/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/amd64/src/interrupt.c
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia32/_link.ld
/SPARTAN/trunk/arch/ia32/include/smp/apic.h
/SPARTAN/trunk/arch/ia32/src/acpi/acpi.c
/SPARTAN/trunk/arch/ia32/src/acpi/madt.c
/SPARTAN/trunk/arch/ia32/src/interrupt.c
/SPARTAN/trunk/arch/ia32/src/smp/apic.c
/SPARTAN/trunk/arch/mips/Makefile.inc
/SPARTAN/trunk/arch/mips/_link.ld
/SPARTAN/trunk/arch/mips/src/mm/tlb.c
/SPARTAN/trunk/src/Makefile
/SPARTAN/trunk/src/build.amd64
265 6962 d 23 h palkovsky /SPARTAN/trunk/ Added basic FPU context (not working).
Added CPU utilities from ia32
 
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/src/amd64.c
/SPARTAN/trunk/include/mm/heap.h
/SPARTAN/trunk/src/build.amd64
257 6963 d 2 h palkovsky /SPARTAN/trunk/ Added basic FPU context (not working).
Added CPU utilities from ia32
Fixed bug in vm.c that wanted PTL to be mapped in bottom memory.
 
/SPARTAN/trunk/arch/amd64/src/proc
/SPARTAN/trunk/arch/amd64/src/proc/scheduler.c
/SPARTAN/trunk/arch/amd64/src/userspace.c
/SPARTAN/trunk/arch/amd64/src/fpu_context.c
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/include/asm.h
/SPARTAN/trunk/arch/amd64/src/asm_utils.S
/SPARTAN/trunk/arch/amd64/src/cpu/cpu.c
/SPARTAN/trunk/arch/amd64/src/dummy.s
/SPARTAN/trunk/arch/ia32/src/fpu_context.c
/SPARTAN/trunk/src/build.amd64
/SPARTAN/trunk/src/mm/vm.c
251 6963 d 12 h palkovsky /SPARTAN/trunk/ Changes, that were needed to make it work on Bochs.
- We CAN use the NX bit in paging tables, but we have
to initialize the NXE bit in EFER register first.
 
/SPARTAN/trunk/arch/amd64/src/cpu
/SPARTAN/trunk/arch/amd64/src/cpu/cpu.c
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/include/cpu.h
/SPARTAN/trunk/arch/amd64/include/cpuid.h
/SPARTAN/trunk/arch/amd64/include/mm/page.h
/SPARTAN/trunk/arch/amd64/src/amd64.c
/SPARTAN/trunk/arch/amd64/src/asm_utils.S
/SPARTAN/trunk/arch/amd64/src/boot/boot.S
/SPARTAN/trunk/arch/amd64/src/dummy.s
/SPARTAN/trunk/include/cpu.h
/SPARTAN/trunk/src/mm/page.c
242 6963 d 22 h palkovsky /SPARTAN/trunk/ Fixed stack settings in boot.S in real mode.
Added ia32 memmap support.
Added cpuid support.
 
/SPARTAN/trunk/arch/amd64/include/cpuid.h
/SPARTAN/trunk/arch/mips/include/debug.h
/SPARTAN/trunk/arch/amd64/src/boot/memmap.S
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/src/amd64.c
/SPARTAN/trunk/arch/amd64/src/asm_utils.S
/SPARTAN/trunk/arch/amd64/src/boot/boot.S
/SPARTAN/trunk/arch/amd64/src/dummy.s
/SPARTAN/trunk/src/build.amd64
/SPARTAN/trunk/src/main/main.c
230 6964 d 21 h cejka /SPARTAN/trunk/arch/ Created fmath as basic tool for IEEE 754 floating point numbers.
Added option $F for printf for printing "double" type.
 
/SPARTAN/trunk/arch/amd64/include/fmath.h
/SPARTAN/trunk/arch/amd64/src/fmath.c
/SPARTAN/trunk/arch/ia32/include/fmath.h
/SPARTAN/trunk/arch/ia32/src/fmath.c
/SPARTAN/trunk/arch/ia64/include/fmath.h
/SPARTAN/trunk/arch/ia64/src/fmath.c
/SPARTAN/trunk/arch/mips/include/fmath.h
/SPARTAN/trunk/arch/mips/src/fmath.c
/SPARTAN/trunk/arch/ppc/include/fmath.h
/SPARTAN/trunk/arch/ppc/src/fmath.c
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/ia64/Makefile.inc
/SPARTAN/trunk/arch/mips/Makefile.inc
/SPARTAN/trunk/arch/ppc/Makefile.inc
224 6965 d 3 h palkovsky /SPARTAN/trunk/arch/ Interrupts for amd64.  
/SPARTAN/trunk/arch/amd64/src/asm_utils.S
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/include/asm.h
/SPARTAN/trunk/arch/amd64/include/pm.h
/SPARTAN/trunk/arch/amd64/src/boot/memmap.S
/SPARTAN/trunk/arch/amd64/src/dummy.s
/SPARTAN/trunk/arch/amd64/src/pm.c
/SPARTAN/trunk/arch/ia32/src/interrupt.c
219 6965 d 11 h palkovsky /SPARTAN/trunk/ Fixed bad type in frame.c.
Amd64 prints banner.
 
/SPARTAN/trunk/arch/amd64/src/mm
/SPARTAN/trunk/arch/amd64/src/mm/page.c
/SPARTAN/trunk/arch/amd64/include/mm/memory_init.h
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/include/asm.h
/SPARTAN/trunk/arch/amd64/src/boot/memmap.S
/SPARTAN/trunk/arch/amd64/src/dummy.s
/SPARTAN/trunk/src/build.amd64
/SPARTAN/trunk/src/mm/frame.c
216 6965 d 12 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
206 6966 d 1 h palkovsky /SPARTAN/trunk/ Better types for ia32 drivers, so that they can be reused in amd64.
Build script cleanup amd64.
New code / not working yet / in amd64.
 
/SPARTAN/trunk/arch/amd64/src/amd64.c
/SPARTAN/trunk/arch/amd64/src/delay.S
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/include/asm.h
/SPARTAN/trunk/arch/amd64/include/interrupt.h
/SPARTAN/trunk/arch/amd64/include/pm.h
/SPARTAN/trunk/arch/amd64/include/types.h
/SPARTAN/trunk/arch/amd64/src/boot/boot.S
/SPARTAN/trunk/arch/amd64/src/dummy.s
/SPARTAN/trunk/arch/amd64/src/pm.c
/SPARTAN/trunk/arch/ia32/include/i8042.h
/SPARTAN/trunk/arch/ia32/include/i8254.h
/SPARTAN/trunk/arch/ia32/include/i8259.h
/SPARTAN/trunk/arch/ia32/include/interrupt.h
/SPARTAN/trunk/arch/ia32/include/pm.h
/SPARTAN/trunk/arch/ia32/src/acpi/acpi.c
/SPARTAN/trunk/arch/ia32/src/drivers/i8042.c
/SPARTAN/trunk/arch/ia32/src/drivers/i8254.c
/SPARTAN/trunk/arch/ia32/src/drivers/i8259.c
/SPARTAN/trunk/src/build.amd64
/SPARTAN/trunk/src/clean.amd64
200 6966 d 14 h palkovsky /SPARTAN/trunk/ Added putchar to AMD  
/SPARTAN/trunk/arch/amd64/src/gencontext.c
/SPARTAN/trunk/arch/amd64/src/supplib.c
/SPARTAN/trunk/arch/amd64/src/putchar.c
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/include/asm.h
/SPARTAN/trunk/arch/amd64/src/dummy.s
/SPARTAN/trunk/include/memstr.h
/SPARTAN/trunk/src/build.amd64
/SPARTAN/trunk/src/lib/memstr.c
197 6966 d 16 h palkovsky /SPARTAN/trunk/ Context-save/restore in AMD64  
/SPARTAN/trunk/arch/amd64/src/context.S
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/include/asm.h
/SPARTAN/trunk/arch/amd64/include/context.h
/SPARTAN/trunk/arch/amd64/include/types.h
/SPARTAN/trunk/arch/amd64/src/dummy.s
/SPARTAN/trunk/src/build.amd64
195 6966 d 17 h vana /SPARTAN/trunk/ 1) memcopy and _memcopy functions rewriten to ANSI C norm.
2) Repaired ia32,ia64 and mips version of SPARTAN to work with this memcopy functions
3) Warning for non declared funcions added and repaired ia32,ia64 and mips versions to pass build process with this warning and Werror option
 
/SPARTAN/trunk/test/thread
/SPARTAN/trunk/test/thread/thread1
/SPARTAN/trunk/test/thread/thread1/test.c
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia32/include/asm.h
/SPARTAN/trunk/arch/ia32/src/acpi/acpi.c
/SPARTAN/trunk/arch/ia32/src/acpi/madt.c
/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/ia32.c
/SPARTAN/trunk/arch/ia32/src/mm/memory_init.c
/SPARTAN/trunk/arch/ia32/src/mm/page.c
/SPARTAN/trunk/arch/ia32/src/pm.c
/SPARTAN/trunk/arch/ia32/src/smp/mps.c
/SPARTAN/trunk/arch/ia32/src/smp/smp.c
/SPARTAN/trunk/arch/ia64/Makefile.inc
/SPARTAN/trunk/arch/ia64/include/asm.h
/SPARTAN/trunk/arch/mips/Makefile.inc
/SPARTAN/trunk/arch/mips/include/asm.h
/SPARTAN/trunk/arch/mips/src/cpu/cpu.c
/SPARTAN/trunk/arch/mips/src/exception.c
/SPARTAN/trunk/arch/mips/src/mm/page.c
/SPARTAN/trunk/arch/mips/src/mm/tlb.c
/SPARTAN/trunk/arch/ppc/Makefile.inc
/SPARTAN/trunk/include/cpu.h
/SPARTAN/trunk/include/memstr.h
/SPARTAN/trunk/src/Makefile.config
/SPARTAN/trunk/src/debug/print.c
/SPARTAN/trunk/src/lib/memstr.c
/SPARTAN/trunk/src/main/kinit.c
/SPARTAN/trunk/src/main/uinit.c
/SPARTAN/trunk/src/mm/frame.c
/SPARTAN/trunk/src/mm/heap.c
/SPARTAN/trunk/src/mm/page.c
/SPARTAN/trunk/src/mm/vm.c
/SPARTAN/trunk/src/proc/scheduler.c
/SPARTAN/trunk/src/proc/thread.c
/SPARTAN/trunk/src/synch/semaphore.c
/SPARTAN/trunk/src/synch/spinlock.c
178 6967 d 22 h palkovsky /SPARTAN/trunk/arch/amd64/ Fixed linker script to include .eh_frame section.
It now boots into protected mode.
 
/SPARTAN/trunk/arch/amd64/include/boot
/SPARTAN/trunk/arch/amd64/include/boot/memmap.h
/SPARTAN/trunk/arch/amd64/include/boot/memmapasm.h
/SPARTAN/trunk/arch/amd64/src/boot/memmap.S
/SPARTAN/trunk/arch/amd64/src/pm.c
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/_link.ld
/SPARTAN/trunk/arch/amd64/include/pm.h
/SPARTAN/trunk/arch/amd64/src/boot/boot.S
172 6973 d 0 h palkovsky /SPARTAN/trunk/arch/amd64/ Do not allow red area on stack in kernel mode.
Small updates for AMD64 memory layout.
 
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/include/mm/page.h
/SPARTAN/trunk/arch/amd64/include/mm/vm.h

Show All