Subversion Repositories HelenOS

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
455 6855 d 22 h decky /SPARTAN/trunk/ new build system upgrade
finished work for IA-32, IA-64, PPC-32, SPARC-64
 
/SPARTAN/trunk/arch/ia64/_link.ld.in
/SPARTAN/trunk/arch/ppc32/_link.ld.in
/SPARTAN/trunk/arch/sparc64/_link.ld.in
/SPARTAN/trunk/build.ia64
/SPARTAN/trunk/build.ppc32
/SPARTAN/trunk/build.sparc64
/SPARTAN/trunk/clean.ia32
/SPARTAN/trunk/clean.ia64
/SPARTAN/trunk/clean.ppc32
/SPARTAN/trunk/clean.sparc64
/SPARTAN/trunk/arch/ia64/_link.ld
/SPARTAN/trunk/arch/ppc32/_link.ld
/SPARTAN/trunk/arch/sparc64/_link.ld
/SPARTAN/trunk/Makefile
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia32/boot/Makefile
/SPARTAN/trunk/arch/ia64/Makefile.inc
/SPARTAN/trunk/arch/ia64/boot/Makefile
/SPARTAN/trunk/arch/mips32/Makefile.inc
/SPARTAN/trunk/arch/mips32/boot/Makefile
/SPARTAN/trunk/arch/ppc32/Makefile.inc
/SPARTAN/trunk/arch/ppc32/boot/Makefile
/SPARTAN/trunk/arch/sparc64/Makefile.inc
/SPARTAN/trunk/arch/sparc64/boot/Makefile
/SPARTAN/trunk/build.ia32
/SPARTAN/trunk/clean
454 6856 d 1 h decky /SPARTAN/trunk/ build system: boot target  
/SPARTAN/trunk/Makefile
/SPARTAN/trunk/arch/ia32/boot/Makefile
452 6856 d 2 h decky /SPARTAN/trunk/ major build system revision (unfinished)
this patchset most definitively breaks a lot of things, be patient
 
/SPARTAN/trunk/clean
/SPARTAN/trunk/genarch/include/acpi
/SPARTAN/trunk/genarch/include/acpi/acpi.h
/SPARTAN/trunk/genarch/include/acpi/madt.h
/SPARTAN/trunk/genarch/src/acpi
/SPARTAN/trunk/genarch/src/acpi/acpi.c
/SPARTAN/trunk/genarch/src/acpi/matd.c
/SPARTAN/trunk/build.amd64
/SPARTAN/trunk/build.ia64
/SPARTAN/trunk/build.mips32
/SPARTAN/trunk/build.ppc32
/SPARTAN/trunk/build.sparc64
/SPARTAN/trunk/clean.amd64
/SPARTAN/trunk/clean.ia32
/SPARTAN/trunk/clean.ia64
/SPARTAN/trunk/clean.mips32
/SPARTAN/trunk/clean.ppc32
/SPARTAN/trunk/clean.sparc64
/SPARTAN/trunk/genarch/include/firmware/acpi
/SPARTAN/trunk/genarch/src/firmware/acpi
/SPARTAN/trunk/Makefile
/SPARTAN/trunk/Makefile.config
/SPARTAN/trunk/arch/amd64/src/amd64.c
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia32/include/ega.h
/SPARTAN/trunk/arch/ia32/src/cpu/cpu.c
/SPARTAN/trunk/arch/ia32/src/drivers/ega.c
/SPARTAN/trunk/arch/ia32/src/ia32.c
/SPARTAN/trunk/arch/ia32/src/smp/smp.c
/SPARTAN/trunk/genarch/Makefile.inc
/SPARTAN/trunk/generic/include/print.h
/SPARTAN/trunk/generic/include/proc/scheduler.h
/SPARTAN/trunk/generic/include/proc/thread.h
/SPARTAN/trunk/generic/src/debug/print.c
/SPARTAN/trunk/generic/src/main/kinit.c
/SPARTAN/trunk/generic/src/proc/scheduler.c
/SPARTAN/trunk/generic/src/proc/thread.c
430 6861 d 23 h jermar /SPARTAN/trunk/ Move src/ and include/ to generic.  
/SPARTAN/trunk/generic
/SPARTAN/trunk/generic/include
/SPARTAN/trunk/generic/src
/SPARTAN/trunk/include
/SPARTAN/trunk/src
/SPARTAN/trunk/Makefile
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia64/Makefile.inc
/SPARTAN/trunk/arch/mips32/Makefile.inc
/SPARTAN/trunk/arch/mips32/boot/Makefile
/SPARTAN/trunk/arch/ppc32/Makefile.inc
/SPARTAN/trunk/arch/sparc64/Makefile.inc
/SPARTAN/trunk/genarch/Makefile.inc
/SPARTAN/trunk/generic/src/main/kinit.c
421 6868 d 22 h jermar /SPARTAN/trunk/ Create genarch directory.
Move ppc32 ofw.[ch] to genarch.
Fix prototype for ofw_call() to return __address instead of int (please review).
Fix copyright notice in sparc64/boot/boot.S.
 
/SPARTAN/trunk/genarch
/SPARTAN/trunk/genarch/Makefile.inc
/SPARTAN/trunk/genarch/include
/SPARTAN/trunk/genarch/include/firmware
/SPARTAN/trunk/genarch/include/firmware/ofw
/SPARTAN/trunk/genarch/include/firmware/ofw/ofw.h
/SPARTAN/trunk/genarch/src
/SPARTAN/trunk/genarch/src/firmware
/SPARTAN/trunk/genarch/src/firmware/ofw
/SPARTAN/trunk/genarch/src/firmware/ofw/ofw.c
/SPARTAN/trunk/arch/ppc32/include/drivers/ofw.h
/SPARTAN/trunk/arch/ppc32/src/drivers/ofw.c
/SPARTAN/trunk/Makefile
/SPARTAN/trunk/arch/ppc32/Makefile.inc
/SPARTAN/trunk/arch/ppc32/include/arch.h
/SPARTAN/trunk/arch/ppc32/src/mm/memory_init.c
/SPARTAN/trunk/arch/sparc64/boot/boot.S
/SPARTAN/trunk/arch/sparc64/src/dummy.s
377 6899 d 1 h jermar /SPARTAN/trunk/ Generic buddy allocator.
Please review the code before it is deployed.
 
/SPARTAN/trunk/include/mm/buddy.h
/SPARTAN/trunk/src/mm/buddy.c
/SPARTAN/trunk/Makefile
/SPARTAN/trunk/include/typedefs.h
376 6899 d 5 h jermar /SPARTAN/trunk/ Move kernel build files one level up the directory tree.
Fix paths in your testing environment!
 
/SPARTAN/trunk/Makefile
/SPARTAN/trunk/Makefile.config
/SPARTAN/trunk/build.amd64
/SPARTAN/trunk/build.ia32
/SPARTAN/trunk/build.ia64
/SPARTAN/trunk/build.mips32
/SPARTAN/trunk/build.ppc32
/SPARTAN/trunk/clean.amd64
/SPARTAN/trunk/clean.ia32
/SPARTAN/trunk/clean.ia64
/SPARTAN/trunk/clean.mips32
/SPARTAN/trunk/clean.ppc32
/SPARTAN/trunk/src/Makefile
/SPARTAN/trunk/src/Makefile.config
/SPARTAN/trunk/src/build.amd64
/SPARTAN/trunk/src/build.ia32
/SPARTAN/trunk/src/build.ia64
/SPARTAN/trunk/src/build.mips32
/SPARTAN/trunk/src/build.ppc32
/SPARTAN/trunk/src/clean.amd64
/SPARTAN/trunk/src/clean.ia32
/SPARTAN/trunk/src/clean.ia64
/SPARTAN/trunk/src/clean.mips32
/SPARTAN/trunk/src/clean.ppc32
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/boot/Makefile
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia32/boot/Makefile
/SPARTAN/trunk/arch/ia64/Makefile.inc
/SPARTAN/trunk/arch/ia64/boot/Makefile
/SPARTAN/trunk/arch/mips32/Makefile.inc
/SPARTAN/trunk/arch/mips32/boot/Makefile
/SPARTAN/trunk/arch/ppc32/Makefile.inc
/SPARTAN/trunk/arch/ppc32/boot/Makefile
/SPARTAN/trunk/contrib/conf/SPMIPS.simics
/SPARTAN/trunk/contrib/conf/dot.bochsrc
/SPARTAN/trunk/contrib/conf/ski.conf
350 6909 d 0 h jermar /SPARTAN/trunk/src/ Remove _qsort() as its concept is fundamentally broken.

Move lib/the.c to proc/the.c.
 
/SPARTAN/trunk/src/proc/the.c
/SPARTAN/trunk/src/lib/the.c
/SPARTAN/trunk/src/Makefile
/SPARTAN/trunk/src/lib/sort.c
331 6913 d 9 h bondari /SPARTAN/trunk/ Generic quicksort and bubble sort implementation.
ACPI MADT parser now uses qsort() for index sorting
 
/SPARTAN/trunk/include/sort.h
/SPARTAN/trunk/src/lib/sort.c
/SPARTAN/trunk/arch/ia32/src/acpi/madt.c
/SPARTAN/trunk/src/Makefile
/SPARTAN/trunk/src/lib/func.c
326 6914 d 21 h palkovsky /SPARTAN/trunk/ Cleanup of makefiles to have common options in one main makefile.

Add simple build process for different simulators for MIPS.
Added FPU context & lazy FPU context switching to MIPS.
Cleanup of MIPS linker script.
Moved MIPS kernel above 1MB. Not tested on real machine yet, but it might help.

There is something broken with gcc inlined memcpy (either simulator or gcc), it is disabled on BigEndian mips now.
 
/SPARTAN/trunk/arch/mips/_link.ld.in
/SPARTAN/trunk/test/fpu/mips1
/SPARTAN/trunk/test/fpu/mips1/test.c
/SPARTAN/trunk/arch/mips/_link.ld
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/src/fpu_context.c
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia64/Makefile.inc
/SPARTAN/trunk/arch/mips/Makefile.inc
/SPARTAN/trunk/arch/mips/boot/boot.S
/SPARTAN/trunk/arch/mips/include/asm.h
/SPARTAN/trunk/arch/mips/include/asm/boot.h
/SPARTAN/trunk/arch/mips/include/byteorder.h
/SPARTAN/trunk/arch/mips/include/cp0.h
/SPARTAN/trunk/arch/mips/include/exception.h
/SPARTAN/trunk/arch/mips/include/fpu_context.h
/SPARTAN/trunk/arch/mips/include/thread.h
/SPARTAN/trunk/arch/mips/src/asm.S
/SPARTAN/trunk/arch/mips/src/console.c
/SPARTAN/trunk/arch/mips/src/dummy.S
/SPARTAN/trunk/arch/mips/src/exception.c
/SPARTAN/trunk/arch/mips/src/fpu_context.c
/SPARTAN/trunk/arch/mips/src/mips.c
/SPARTAN/trunk/arch/mips/src/mm/frame.c
/SPARTAN/trunk/arch/mips/src/panic.S
/SPARTAN/trunk/arch/mips/src/start.S
/SPARTAN/trunk/arch/ppc/Makefile.inc
/SPARTAN/trunk/contrib/conf/msim.conf
/SPARTAN/trunk/src/Makefile
/SPARTAN/trunk/src/build.mips
/SPARTAN/trunk/src/clean.mips
314 6917 d 22 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
293 6919 d 22 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 6920 d 2 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
288 6920 d 4 h jermar /SPARTAN/trunk/ Create tools/ directory.
Move helper scripts and tools out of src/ and arch/.
 
/SPARTAN/trunk/tools
/SPARTAN/trunk/tools/amd64
/SPARTAN/trunk/tools/amd64/gencontext.c
/SPARTAN/trunk/tools/genmap.py
/SPARTAN/trunk/arch/amd64/src/gencontext.c
/SPARTAN/trunk/src/debug/genmap.py
/SPARTAN/trunk/arch/amd64/src/boot/boot.S
/SPARTAN/trunk/src/Makefile
/SPARTAN/trunk/src/build.amd64
/SPARTAN/trunk/src/clean.amd64
268 6921 d 5 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
184 6925 d 12 h jermar /SPARTAN/trunk/ Add lib/the.c.
Add and deploy the_initialize() and the_copy().

Make IA-32's before_thread_runs() use SP_DELTA macro.
 
/SPARTAN/trunk/src/lib/the.c
/SPARTAN/trunk/arch/ia32/src/proc/scheduler.c
/SPARTAN/trunk/include/arch.h
/SPARTAN/trunk/src/Makefile
/SPARTAN/trunk/src/main/main.c
/SPARTAN/trunk/src/proc/scheduler.c
/SPARTAN/trunk/src/proc/thread.c
179 6926 d 4 h decky /SPARTAN/trunk/ frmaebuffer font  
/SPARTAN/trunk/include/fb
/SPARTAN/trunk/include/fb/font-8x16.h
/SPARTAN/trunk/src/fb
/SPARTAN/trunk/src/fb/font-8x16.c
/SPARTAN/trunk/src/Makefile
171 6931 d 9 h jermar /SPARTAN/trunk/ Make rwlock test #3 compile again.

Make rwlock test #4 preemption-safe.

Prepare for preemption controlling functions.
 
/SPARTAN/trunk/include/preemption.h
/SPARTAN/trunk/src/preempt
/SPARTAN/trunk/src/preempt/preemption.c
/SPARTAN/trunk/include/cpu.h
/SPARTAN/trunk/src/Makefile
/SPARTAN/trunk/test/synch/rwlock3/test.c
/SPARTAN/trunk/test/synch/rwlock4/test.c
111 7010 d 2 h palkovsky /SPARTAN/trunk/ Code cleanup in scheduler.c thread.c - removed unnecessary spinlock.
atomic_inc, atomic_dec moved to arch/atomic.h instead of arch/smp/atomic.h,
advisable to use even in non-smp mode.
Fixed atomic_inc, atomic_dec in mips architecture.
 
/SPARTAN/trunk/arch/ia32/include/atomic.h
/SPARTAN/trunk/arch/ia32/src/atomic.S
/SPARTAN/trunk/arch/mips/include/atomic.h
/SPARTAN/trunk/arch/ia32/include/smp/atomic.h
/SPARTAN/trunk/arch/ia32/src/smp/atomic.S
/SPARTAN/trunk/arch/mips/include/smp/atomic.h
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/mips/_link.ld
/SPARTAN/trunk/include/proc/scheduler.h
/SPARTAN/trunk/src/Makefile
/SPARTAN/trunk/src/mm/tlb.c
/SPARTAN/trunk/src/proc/scheduler.c
/SPARTAN/trunk/src/proc/thread.c
/SPARTAN/trunk/src/synch/spinlock.c
/SPARTAN/trunk/src/time/clock.c
/SPARTAN/trunk/test/fpu/fpu1/test.c
/SPARTAN/trunk/test/synch/rwlock1/test.c
/SPARTAN/trunk/test/synch/rwlock2/test.c
/SPARTAN/trunk/test/synch/rwlock3/test.c
/SPARTAN/trunk/test/synch/rwlock4/test.c
/SPARTAN/trunk/test/synch/rwlock5/test.c
/SPARTAN/trunk/test/synch/semaphore1/test.c
/SPARTAN/trunk/test/synch/semaphore2/test.c
76 7035 d 1 h jermar /SPARTAN/trunk/ For each architecture, add function/macro FADDR that calculates absolute address of a function referenced by void (* f)(void).
IA-32 and MIPS gcc's use direct addressing (f == FADDR(f)) while IA-64 gcc uses indirect addressing (f != FADDR(f)).

Tweaks in IA-64 Makefile.inc to declare constant gp and main Makefile to consider ASFLAGS when compiling .s targets.
 
/SPARTAN/trunk/arch/ia32/include/faddr.h
/SPARTAN/trunk/arch/ia64/include/faddr.h
/SPARTAN/trunk/arch/mips/include/faddr.h
/SPARTAN/trunk/arch/ia64/Makefile.inc
/SPARTAN/trunk/src/Makefile
/SPARTAN/trunk/src/main/main.c
/SPARTAN/trunk/src/proc/scheduler.c
/SPARTAN/trunk/src/proc/thread.c

Show All