Rev |
Age |
Author |
Path |
Log message |
Diff |
Changes |
241 |
6926 d 16 h |
palkovsky |
/SPARTAN/trunk/ |
Cleanups so that it compiles on ia-32 & amd-64 cleanly |
|
/SPARTAN/trunk/arch/amd64/include/atomic.h /SPARTAN/trunk/arch/amd64/src/fmath.c /SPARTAN/trunk/arch/ia32/include/atomic.h /SPARTAN/trunk/src/proc/scheduler.c /SPARTAN/trunk/src/proc/thread.c
|
230 |
6926 d 20 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
|
226 |
6926 d 21 h |
palkovsky |
/SPARTAN/trunk/ |
Fixed typo in 'outb' instruction.
Paging basically working. |
|
/SPARTAN/trunk/arch/amd64/src/interrupt.c
/SPARTAN/trunk/arch/amd64/include/asm.h /SPARTAN/trunk/arch/amd64/include/mm/page.h /SPARTAN/trunk/arch/amd64/src/mm/page.c /SPARTAN/trunk/src/build.amd64 /SPARTAN/trunk/src/mm/page.c
|
224 |
6927 d 2 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 |
6927 d 10 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 |
6927 d 11 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
|
211 |
6927 d 13 h |
palkovsky |
/SPARTAN/trunk/arch/amd64/ |
SVN cleanup |
|
/SPARTAN/trunk/arch/amd64/include/interrupt.h
/SPARTAN/trunk/arch/amd64/src/pm.c
|
210 |
6927 d 13 h |
decky |
/SPARTAN/trunk/ |
many PPC stuff, platform dependent arch.h header files |
|
/SPARTAN/trunk/arch/amd64/include/arch.h /SPARTAN/trunk/arch/ia32/include/arch.h /SPARTAN/trunk/arch/ia64/include/arch.h /SPARTAN/trunk/arch/mips/include/arch.h /SPARTAN/trunk/arch/ppc/boot/_link.ld /SPARTAN/trunk/arch/ppc/boot/boot.S /SPARTAN/trunk/arch/ppc/boot/main.c /SPARTAN/trunk/arch/ppc/boot/main.h /SPARTAN/trunk/arch/ppc/include/arch.h /SPARTAN/trunk/arch/ppc/src/asm.S /SPARTAN/trunk/arch/ppc/src/cpu/cpu.c /SPARTAN/trunk/arch/ppc/src/ppc.c
/SPARTAN/trunk/arch/ppc/boot/boot.s /SPARTAN/trunk/arch/ppc/src/asm.s
/SPARTAN/trunk/arch/ppc/Makefile.inc /SPARTAN/trunk/arch/ppc/_link.ld /SPARTAN/trunk/arch/ppc/boot/Makefile /SPARTAN/trunk/arch/ppc/include/asm.h /SPARTAN/trunk/arch/ppc/include/context.h /SPARTAN/trunk/arch/ppc/src/debug/panic.s /SPARTAN/trunk/arch/ppc/src/drivers/ofw.c /SPARTAN/trunk/arch/ppc/src/dummy.s /SPARTAN/trunk/include/arch.h /SPARTAN/trunk/include/context.h /SPARTAN/trunk/src/main/main.c /SPARTAN/trunk/src/proc/thread.c
|
206 |
6928 d 0 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 |
6928 d 13 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 |
6928 d 15 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
|
194 |
6928 d 17 h |
palkovsky |
/SPARTAN/trunk/arch/amd64/ |
Code cleanup. |
|
/SPARTAN/trunk/arch/amd64/_link.ld /SPARTAN/trunk/arch/amd64/include/barrier.h /SPARTAN/trunk/arch/amd64/include/boot/memmap.h /SPARTAN/trunk/arch/amd64/include/boot/memmapasm.h /SPARTAN/trunk/arch/amd64/include/interrupt.h /SPARTAN/trunk/arch/amd64/include/mm/frame.h /SPARTAN/trunk/arch/amd64/include/mm/page.h /SPARTAN/trunk/arch/amd64/include/mm/ptl.h /SPARTAN/trunk/arch/amd64/include/pm.h /SPARTAN/trunk/arch/amd64/src/boot/boot.S
|
192 |
6928 d 18 h |
jermar |
/SPARTAN/trunk/ |
Dump implementation of THREAD, TASK and CPU.
Implement preemption-safe versions of THREAD, TASK and CPU using THE.
Get rid of CPU_ID_ARCH on all architectures.
Get rid of write_dr0() and read_dr0() on IA-32.
Get rid of cpu_private_data and cpu_private_data_t. |
|
/SPARTAN/trunk/arch/amd64/include/cpu.h /SPARTAN/trunk/arch/ia32/include/asm.h /SPARTAN/trunk/arch/ia32/include/cpu.h /SPARTAN/trunk/arch/ia32/src/ia32.c /SPARTAN/trunk/arch/ia64/include/cpu.h /SPARTAN/trunk/arch/mips/include/cpu.h /SPARTAN/trunk/arch/ppc/include/cpu.h /SPARTAN/trunk/include/arch.h /SPARTAN/trunk/include/cpu.h /SPARTAN/trunk/src/Makefile.config /SPARTAN/trunk/src/cpu/cpu.c /SPARTAN/trunk/src/main/main.c /SPARTAN/trunk/src/proc/scheduler.c
|
188 |
6928 d 20 h |
palkovsky |
/SPARTAN/trunk/arch/amd64/ |
AMD64 now can switch into long mode.
Basic page tables working. |
|
/SPARTAN/trunk/arch/amd64/include/mm/ptl.h
/SPARTAN/trunk/arch/amd64/_link.ld /SPARTAN/trunk/arch/amd64/include/mm/page.h /SPARTAN/trunk/arch/amd64/include/pm.h /SPARTAN/trunk/arch/amd64/src/boot/boot.S /SPARTAN/trunk/arch/amd64/src/pm.c
|
178 |
6929 d 21 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
|
177 |
6929 d 23 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
|
173 |
6933 d 14 h |
jermar |
/SPARTAN/trunk/ |
Preparations for weaker preemption model.
Make all kernel stacks (i.e. startup, scheduler and thread) be STACK_SIZE bytes long.
Reincarnate "the" structure. This time, it is planned to be located at the base of each and every kernel stack.
On IA-32 and MIPS, implement get_stack_base() functions. On the rest of supported platforms, define it to be dummy. |
|
/SPARTAN/trunk/arch/amd64/include/asm.h /SPARTAN/trunk/arch/ia32/include/asm.h /SPARTAN/trunk/arch/ia64/include/asm.h /SPARTAN/trunk/arch/ia64/include/context.h /SPARTAN/trunk/arch/mips/include/asm.h /SPARTAN/trunk/arch/ppc/include/asm.h /SPARTAN/trunk/include/arch.h /SPARTAN/trunk/include/config.h /SPARTAN/trunk/include/cpu.h /SPARTAN/trunk/include/proc/thread.h /SPARTAN/trunk/include/typedefs.h
|
172 |
6934 d 23 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
|
169 |
6938 d 13 h |
jermar |
/SPARTAN/trunk/arch/ |
For each architecture, add an extra type cast of x to __address to both KA2PA() and PA2KA(). |
|
/SPARTAN/trunk/arch/amd64/include/mm/page.h /SPARTAN/trunk/arch/ia32/include/mm/page.h /SPARTAN/trunk/arch/ia64/include/mm/page.h /SPARTAN/trunk/arch/mips/include/mm/page.h /SPARTAN/trunk/arch/ppc/include/mm/page.h
|
164 |
6941 d 16 h |
palkovsky |
/SPARTAN/trunk/ |
Basics for amd64 architecture. It does compile, but it does not work yet. |
|
/SPARTAN/trunk/arch/amd64/Makefile.inc /SPARTAN/trunk/arch/amd64/_link.ld /SPARTAN/trunk/arch/amd64/boot /SPARTAN/trunk/arch/amd64/boot/boot.S /SPARTAN/trunk/arch/amd64/boot/boot.ld /SPARTAN/trunk/arch/amd64/include /SPARTAN/trunk/arch/amd64/include/arg.h /SPARTAN/trunk/arch/amd64/include/asm.h /SPARTAN/trunk/arch/amd64/include/atomic.h /SPARTAN/trunk/arch/amd64/include/barrier.h /SPARTAN/trunk/arch/amd64/include/context.h /SPARTAN/trunk/arch/amd64/include/cpu.h /SPARTAN/trunk/arch/amd64/include/faddr.h /SPARTAN/trunk/arch/amd64/include/fpu_context.h /SPARTAN/trunk/arch/amd64/include/interrupt.h /SPARTAN/trunk/arch/amd64/include/mm /SPARTAN/trunk/arch/amd64/include/mm/frame.h /SPARTAN/trunk/arch/amd64/include/mm/memory_init.h /SPARTAN/trunk/arch/amd64/include/mm/page.h /SPARTAN/trunk/arch/amd64/include/mm/vm.h /SPARTAN/trunk/arch/amd64/include/pm.h /SPARTAN/trunk/arch/amd64/include/thread.h /SPARTAN/trunk/arch/amd64/include/types.h /SPARTAN/trunk/arch/amd64/src /SPARTAN/trunk/arch/amd64/src/boot /SPARTAN/trunk/arch/amd64/src/boot/boot.S /SPARTAN/trunk/arch/amd64/src/dummy.s /SPARTAN/trunk/arch/amd64/src/fpu_context.c /SPARTAN/trunk/arch/amd64/src/putchar.c /SPARTAN/trunk/src/build.amd64 /SPARTAN/trunk/src/clean.amd64
|