Subversion Repositories HelenOS-historic

Rev

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

Filtering Options

Rev Age Author Path Log message Diff Changes
1615 6548 d 21 h jermar /kernel/trunk/arch/mips32/src/ mips32 version of alignment-safe memcpy.  
/kernel/trunk/arch/mips32/src/asm.S
1293 6580 d 22 h palkovsky /kernel/trunk/ Implemented mips memcpy (copy from gcc builtin memcpy).  
/kernel/trunk/arch/mips32/include/exception.h
/kernel/trunk/arch/mips32/src/asm.S
/kernel/trunk/arch/mips32/src/start.S
/kernel/trunk/generic/include/syscall/copy.h
/kernel/trunk/generic/src/ipc/sysipc.c
/kernel/trunk/generic/src/syscall/copy.c
/kernel/trunk/generic/src/syscall/syscall.c
1288 6581 d 2 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.
 
/kernel/trunk/generic/include/syscall/copy.h
/kernel/trunk/generic/src/syscall/copy.c
/kernel/trunk/Makefile
/kernel/trunk/arch/amd64/include/interrupt.h
/kernel/trunk/arch/amd64/src/asm_utils.S
/kernel/trunk/arch/amd64/src/mm/page.c
/kernel/trunk/arch/ia32/include/interrupt.h
/kernel/trunk/arch/ia32/src/asm.S
/kernel/trunk/arch/ia32/src/boot/boot.S
/kernel/trunk/arch/ia32/src/interrupt.c
/kernel/trunk/arch/ia64/include/interrupt.h
/kernel/trunk/arch/ia64/src/asm.S
/kernel/trunk/arch/ia64/src/mm/tlb.c
/kernel/trunk/arch/mips32/include/exception.h
/kernel/trunk/arch/mips32/src/asm.S
/kernel/trunk/arch/mips32/src/mm/tlb.c
/kernel/trunk/arch/ppc32/include/exception.h
/kernel/trunk/arch/ppc32/include/interrupt.h
/kernel/trunk/arch/ppc32/src/asm.S
/kernel/trunk/arch/ppc32/src/mm/tlb.c
/kernel/trunk/arch/sparc64/include/interrupt.h
/kernel/trunk/arch/sparc64/src/asm.S
/kernel/trunk/generic/include/interrupt.h
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/include/mm/page.h
/kernel/trunk/generic/include/proc/thread.h
/kernel/trunk/generic/src/ddi/ddi.c
/kernel/trunk/generic/src/ipc/irq.c
/kernel/trunk/generic/src/ipc/sysipc.c
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/mm/slab.c
/kernel/trunk/generic/src/printf/vsnprintf.c
/kernel/trunk/generic/src/proc/task.c
/kernel/trunk/generic/src/proc/thread.c
/kernel/trunk/generic/src/smp/ipi.c
/kernel/trunk/generic/src/synch/waitq.c
1096 6627 d 0 h palkovsky /kernel/trunk/ Cleanup of mips
- inline register reads
- better fpu disable/enable - global settings is automatically propagated to task
- fast syscall
 
/kernel/trunk/arch/mips32/include/cp0.h
/kernel/trunk/arch/mips32/include/exception.h
/kernel/trunk/arch/mips32/include/thread.h
/kernel/trunk/arch/mips32/src/asm.S
/kernel/trunk/arch/mips32/src/exception.c
/kernel/trunk/arch/mips32/src/fpu_context.c
/kernel/trunk/arch/mips32/src/start.S
/kernel/trunk/contrib/conf/gxemul.sh
/kernel/trunk/kernel.config
924 6635 d 5 h palkovsky /kernel/trunk/arch/mips32/ Macro redefinition for mips fpu.  
/kernel/trunk/arch/mips32/Makefile.inc
/kernel/trunk/arch/mips32/include/fpu_context.h
/kernel/trunk/arch/mips32/src/asm.S
/kernel/trunk/arch/mips32/src/fpu_context.c
717 6690 d 19 h decky /kernel/trunk/ remove obsolete in-kernel userspace code
remove CONFIG_USERSPACE switch, uspace support is configured at run-time
 
/kernel/trunk/Makefile
/kernel/trunk/arch/amd64/src/asm_utils.S
/kernel/trunk/arch/ia32/src/asm.S
/kernel/trunk/arch/mips32/src/asm.S
/kernel/trunk/generic/include/main/uinit.h
/kernel/trunk/generic/src/main/kinit.c
/kernel/trunk/kernel.config
534 6732 d 18 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
/kernel
/SPARTAN
532 6732 d 18 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
/SPARTAN
/kernel
501 6744 d 23 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
/kernel
/SPARTAN
389 6794 d 2 h jermar /SPARTAN/trunk/ MIPS work.
Fix some name inconsistencies between cp0 functions' declarations and definitions.
Add and implement tlb_init_arch().
Add tlb_modified() exception handler.

Other architectures: add dummy tlb_init_arch().
 
/SPARTAN/trunk/arch/amd64/include/mm/tlb.h
/SPARTAN/trunk/arch/ia32/include/mm/tlb.h
/SPARTAN/trunk/arch/ia64/include/mm/tlb.h
/SPARTAN/trunk/arch/ppc32/include/mm/tlb.h
/SPARTAN/trunk/arch/mips32/include/cp0.h
/SPARTAN/trunk/arch/mips32/include/mm/tlb.h
/SPARTAN/trunk/arch/mips32/src/asm.S
/SPARTAN/trunk/arch/mips32/src/exception.c
/SPARTAN/trunk/arch/mips32/src/mm/tlb.c
/SPARTAN/trunk/include/mm/tlb.h
/SPARTAN/trunk/src/main/main.c
/SPARTAN/trunk/src/mm/tlb.c
341 6816 d 0 h jermar /SPARTAN/trunk/ Rename mips port to mips32.  
/SPARTAN/trunk/arch/mips32
/SPARTAN/trunk/doc/arch/mips32
/SPARTAN/trunk/src/build.mips32
/SPARTAN/trunk/src/build.ppc32
/SPARTAN/trunk/src/clean.mips32
/SPARTAN/trunk/src/clean.ppc32
/SPARTAN/trunk/tools/mips32
/SPARTAN/trunk/arch/mips
/SPARTAN/trunk/doc/arch/mips
/SPARTAN/trunk/src/build.mips
/SPARTAN/trunk/src/build.ppc
/SPARTAN/trunk/src/clean.mips
/SPARTAN/trunk/src/clean.ppc
/SPARTAN/trunk/tools/mips
/SPARTAN/trunk/arch/mips32/boot/_link.ld
/SPARTAN/trunk/arch/mips32/include/arch.h
/SPARTAN/trunk/arch/mips32/include/arg.h
/SPARTAN/trunk/arch/mips32/include/asm.h
/SPARTAN/trunk/arch/mips32/include/asm/boot.h
/SPARTAN/trunk/arch/mips32/include/asm/regname.h
/SPARTAN/trunk/arch/mips32/include/atomic.h
/SPARTAN/trunk/arch/mips32/include/barrier.h
/SPARTAN/trunk/arch/mips32/include/byteorder.h
/SPARTAN/trunk/arch/mips32/include/cache.h
/SPARTAN/trunk/arch/mips32/include/console.h
/SPARTAN/trunk/arch/mips32/include/context.h
/SPARTAN/trunk/arch/mips32/include/cp0.h
/SPARTAN/trunk/arch/mips32/include/cpu.h
/SPARTAN/trunk/arch/mips32/include/debug.h
/SPARTAN/trunk/arch/mips32/include/drivers/arc.h
/SPARTAN/trunk/arch/mips32/include/exception.h
/SPARTAN/trunk/arch/mips32/include/faddr.h
/SPARTAN/trunk/arch/mips32/include/fmath.h
/SPARTAN/trunk/arch/mips32/include/fpu_context.h
/SPARTAN/trunk/arch/mips32/include/interrupt.h
/SPARTAN/trunk/arch/mips32/include/mm/asid.h
/SPARTAN/trunk/arch/mips32/include/mm/frame.h
/SPARTAN/trunk/arch/mips32/include/mm/memory_init.h
/SPARTAN/trunk/arch/mips32/include/mm/page.h
/SPARTAN/trunk/arch/mips32/include/mm/tlb.h
/SPARTAN/trunk/arch/mips32/include/mm/vm.h
/SPARTAN/trunk/arch/mips32/include/thread.h
/SPARTAN/trunk/arch/mips32/include/types.h
/SPARTAN/trunk/doc/requirements
/SPARTAN/trunk/src/Makefile.config
/SPARTAN/trunk/tools/mips32/gencontext.c
332 6817 d 1 h palkovsky /SPARTAN/trunk/ Updated symtab so that it works correctly with BE architectures.
Changed compiler for BE MIPS to be mips-sgi-irix5, because
mipsel -EB does not behave correctly.
Doc updates to amd64.
Added ARC BIOS support to MIPS architecture. Putchar works correctly,
kernel passed FPU & some rwlock tests.
 
/SPARTAN/trunk/arch/mips/include/drivers
/SPARTAN/trunk/arch/mips/include/drivers/arc.h
/SPARTAN/trunk/arch/mips/src/drivers
/SPARTAN/trunk/arch/mips/src/drivers/arc.c
/SPARTAN/trunk/contrib/toolchain/toolchain.mipseb.sh
/SPARTAN/trunk/contrib/toolchain/toolchain.mipsel.sh
/SPARTAN/trunk/contrib/toolchain/toolchain.mips.sh
/SPARTAN/trunk/arch/amd64/_link.ld.in
/SPARTAN/trunk/arch/amd64/include/byteorder.h
/SPARTAN/trunk/arch/amd64/src/asm_utils.S
/SPARTAN/trunk/arch/amd64/src/fpu_context.c
/SPARTAN/trunk/arch/amd64/src/pm.c
/SPARTAN/trunk/arch/ia32/include/byteorder.h
/SPARTAN/trunk/arch/ia64/include/byteorder.h
/SPARTAN/trunk/arch/mips/Makefile.inc
/SPARTAN/trunk/arch/mips/_link.ld.in
/SPARTAN/trunk/arch/mips/include/byteorder.h
/SPARTAN/trunk/arch/mips/include/console.h
/SPARTAN/trunk/arch/mips/include/interrupt.h
/SPARTAN/trunk/arch/mips/include/types.h
/SPARTAN/trunk/arch/mips/src/asm.S
/SPARTAN/trunk/arch/mips/src/console.c
/SPARTAN/trunk/arch/mips/src/exception.c
/SPARTAN/trunk/arch/mips/src/interrupt.c
/SPARTAN/trunk/arch/mips/src/mips.c
/SPARTAN/trunk/arch/mips/src/mm/tlb.c
/SPARTAN/trunk/arch/ppc/include/byteorder.h
/SPARTAN/trunk/src/debug/symtab.c
/SPARTAN/trunk/tools/genmap.py
329 6817 d 20 h palkovsky /SPARTAN/trunk/ Basic changes to boot it on SGI Indy.  
/SPARTAN/trunk/arch/mips/Makefile.inc
/SPARTAN/trunk/arch/mips/_link.ld.in
/SPARTAN/trunk/arch/mips/boot/Makefile
/SPARTAN/trunk/arch/mips/boot/boot.S
/SPARTAN/trunk/arch/mips/include/asm/boot.h
/SPARTAN/trunk/arch/mips/include/console.h
/SPARTAN/trunk/arch/mips/include/cp0.h
/SPARTAN/trunk/arch/mips/include/interrupt.h
/SPARTAN/trunk/arch/mips/include/mm/memory_init.h
/SPARTAN/trunk/arch/mips/src/asm.S
/SPARTAN/trunk/arch/mips/src/console.c
/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/mm/frame.c
/SPARTAN/trunk/test/fpu/mips1/test.c
326 6818 d 13 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
319 6821 d 3 h jermar /SPARTAN/trunk/arch/mips/ Copyright notices changes.  
/SPARTAN/trunk/arch/mips/boot/boot.S
/SPARTAN/trunk/arch/mips/include/asm.h
/SPARTAN/trunk/arch/mips/include/asm/regname.h
/SPARTAN/trunk/arch/mips/include/cache.h
/SPARTAN/trunk/arch/mips/include/context.h
/SPARTAN/trunk/arch/mips/include/cp0.h
/SPARTAN/trunk/arch/mips/include/cpu.h
/SPARTAN/trunk/arch/mips/include/exception.h
/SPARTAN/trunk/arch/mips/include/interrupt.h
/SPARTAN/trunk/arch/mips/include/mm/page.h
/SPARTAN/trunk/arch/mips/include/mm/tlb.h
/SPARTAN/trunk/arch/mips/include/thread.h
/SPARTAN/trunk/arch/mips/include/types.h
/SPARTAN/trunk/arch/mips/src/asm.S
/SPARTAN/trunk/arch/mips/src/cache.c
/SPARTAN/trunk/arch/mips/src/context.S
/SPARTAN/trunk/arch/mips/src/cpu/cpu.c
/SPARTAN/trunk/arch/mips/src/dummy.S
/SPARTAN/trunk/arch/mips/src/exception.c
/SPARTAN/trunk/arch/mips/src/interrupt.c
/SPARTAN/trunk/arch/mips/src/mips.c
/SPARTAN/trunk/arch/mips/src/mm/page.c
/SPARTAN/trunk/arch/mips/src/mm/tlb.c
/SPARTAN/trunk/arch/mips/src/panic.S
/SPARTAN/trunk/arch/mips/src/putchar.c
/SPARTAN/trunk/arch/mips/src/start.S
314 6821 d 14 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
313 6821 d 15 h palkovsky /SPARTAN/trunk/arch/ MIPS bug fixes.
Added usermode to MIPS, unfortunately impossible to test until
MM is ready.
 
/SPARTAN/trunk/arch/mips/src/asm.S
/SPARTAN/trunk/arch/mips/src/dummy.S
/SPARTAN/trunk/arch/mips/src/panic.S
/SPARTAN/trunk/arch/mips/src/asm.s
/SPARTAN/trunk/arch/mips/src/dummy.s
/SPARTAN/trunk/arch/mips/src/panic.s
/SPARTAN/trunk/arch/amd64/src/userspace.c
/SPARTAN/trunk/arch/mips/Makefile.inc
/SPARTAN/trunk/arch/mips/include/asm.h
/SPARTAN/trunk/arch/mips/include/asm/boot.h
/SPARTAN/trunk/arch/mips/include/context.h
/SPARTAN/trunk/arch/mips/include/cp0.h
/SPARTAN/trunk/arch/mips/include/mm/vm.h
/SPARTAN/trunk/arch/mips/include/thread.h
/SPARTAN/trunk/arch/mips/src/exception.c
/SPARTAN/trunk/arch/mips/src/mips.c
/SPARTAN/trunk/arch/mips/src/start.S
205 6828 d 4 h jermar /SPARTAN/trunk/ Get rid of memcopy().
All we now have is memcpy() and _memcpy().
memcpy() is defined to be builtin.
Where not applicable, architectures must implement memcpy() code or call slowish _memcopy().
 
/SPARTAN/trunk/arch/amd64/src/dummy.s
/SPARTAN/trunk/arch/amd64/src/supplib.c
/SPARTAN/trunk/arch/ia32/src/asm.S
/SPARTAN/trunk/arch/ia32/src/drivers/ega.c
/SPARTAN/trunk/arch/ia32/src/mm/page.c
/SPARTAN/trunk/arch/ia32/src/smp/mps.c
/SPARTAN/trunk/arch/ia32/src/smp/smp.c
/SPARTAN/trunk/arch/ia64/src/asm.S
/SPARTAN/trunk/arch/mips/src/asm.s
/SPARTAN/trunk/arch/ppc/src/dummy.s
/SPARTAN/trunk/include/memstr.h
/SPARTAN/trunk/src/lib/memstr.c
/SPARTAN/trunk/src/main/kinit.c
/SPARTAN/trunk/src/mm/vm.c
/SPARTAN/trunk/test/synch/rwlock4/test.c
124 6874 d 17 h decky /SPARTAN/trunk/arch/mips/ fix EXC_Mod define

enhance interrupt handling
 
/SPARTAN/trunk/arch/mips/include/exception.h
/SPARTAN/trunk/arch/mips/src/asm.s
/SPARTAN/trunk/arch/mips/src/interrupt.c
105 6917 d 14 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

Show All