Rev |
Age |
Author |
Path |
Log message |
Diff |
Changes |
293 |
6873 d 14 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
|
292 |
6873 d 15 h |
jermar |
/SPARTAN/trunk/ |
Add byteorder.h to support conversions between different endianesses.
Add native_le2host().
Use native_le2host() in get_symtab_entry(). |
|
/SPARTAN/trunk/arch/amd64/include/byteorder.h /SPARTAN/trunk/arch/ia32/include/byteorder.h /SPARTAN/trunk/arch/ia64/include/byteorder.h /SPARTAN/trunk/arch/mips/include/byteorder.h /SPARTAN/trunk/arch/ppc/include/byteorder.h
/SPARTAN/trunk/doc/requirements /SPARTAN/trunk/include/symtab.h /SPARTAN/trunk/src/debug/symtab.c
|
291 |
6873 d 18 h |
jermar |
/SPARTAN/trunk/arch/ia32/src/smp/ |
AP cpus are not supposed to touch A20 for this bit is enabled by the BSP cpu. |
|
/SPARTAN/trunk/arch/ia32/src/smp/ap.S
|
290 |
6873 d 18 h |
palkovsky |
/SPARTAN/trunk/arch/ia32/ |
|
|
/SPARTAN/trunk/arch/ia32/Makefile.inc.cross
|
289 |
6873 d 18 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 |
6873 d 20 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
|
287 |
6873 d 22 h |
jermar |
/SPARTAN/trunk/arch/ppc/ |
Symtab support for PPC. |
|
/SPARTAN/trunk/arch/ppc/Makefile.inc /SPARTAN/trunk/arch/ppc/_link.ld
|
286 |
6874 d 4 h |
palkovsky |
/SPARTAN/trunk/arch/amd64/src/ |
Codingstyle changes |
|
/SPARTAN/trunk/arch/amd64/src/interrupt.c
|
285 |
6874 d 4 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
|
283 |
6874 d 5 h |
palkovsky |
/SPARTAN/trunk/ |
IA32 printf-double support migrated to amd64 |
|
/SPARTAN/trunk/arch/amd64/src/fmath.c
/SPARTAN/trunk/src/Makefile.config /SPARTAN/trunk/src/build.amd64 /SPARTAN/trunk/test/fpu/fpu1/test.c
|
282 |
6874 d 6 h |
palkovsky |
/SPARTAN/trunk/ |
Fixed gdtr naming issues after ia32 changes.
Fixed stack alignment on new thread to by multiple of 16,
we are now ABI-correct and we do not #GP on va_arg to boot.
Fixed bad exception register names reporting.
Fixed bad _hardcoded_load_addr, which caused allocation of kernel text
frames. |
|
/SPARTAN/trunk/arch/amd64/src/fpu_context.c
/SPARTAN/trunk/arch/amd64/include/fpu_context.h
/SPARTAN/trunk/arch/amd64/_link.ld /SPARTAN/trunk/arch/amd64/include/asm.h /SPARTAN/trunk/arch/amd64/include/context.h /SPARTAN/trunk/arch/amd64/include/cpu.h /SPARTAN/trunk/arch/amd64/include/cpuid.h /SPARTAN/trunk/arch/amd64/include/pm.h /SPARTAN/trunk/arch/amd64/src/amd64.c /SPARTAN/trunk/arch/amd64/src/boot/boot.S /SPARTAN/trunk/arch/amd64/src/cpu/cpu.c /SPARTAN/trunk/arch/amd64/src/interrupt.c /SPARTAN/trunk/arch/amd64/src/smp/ap.S /SPARTAN/trunk/arch/ia32/include/fpu_context.h /SPARTAN/trunk/arch/ia32/src/fpu_context.c /SPARTAN/trunk/src/build.amd64
|
281 |
6874 d 14 h |
palkovsky |
/SPARTAN/trunk/arch/ia32/src/ |
Fixed some stupid typos. |
|
/SPARTAN/trunk/arch/ia32/src/fpu_context.c /SPARTAN/trunk/arch/ia32/src/interrupt.c
|
280 |
6874 d 14 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 |
6874 d 16 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
|
278 |
6874 d 17 h |
palkovsky |
/SPARTAN/trunk/arch/ia32/src/acpi/ |
Fixed ACPI to work correctly even in bochs. |
|
/SPARTAN/trunk/arch/ia32/src/acpi/acpi.c
|
277 |
6874 d 17 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
|
275 |
6874 d 19 h |
palkovsky |
/SPARTAN/trunk/arch/ |
Moved AMD64 kernel above 1MB. |
|
/SPARTAN/trunk/arch/amd64/_link.ld /SPARTAN/trunk/arch/amd64/include/boot/boot.h /SPARTAN/trunk/arch/amd64/include/cpuid.h /SPARTAN/trunk/arch/amd64/src/boot/boot.S /SPARTAN/trunk/arch/ia32/include/boot/boot.h
|
273 |
6874 d 20 h |
palkovsky |
/SPARTAN/trunk/ |
Changes to make ia32 smp code not architecture dependent.
Changes to accomodate new gdtr loading scheme. |
|
/SPARTAN/trunk/arch/amd64/include/pm.h /SPARTAN/trunk/arch/amd64/src/boot/boot.S /SPARTAN/trunk/arch/ia32/include/smp/mps.h /SPARTAN/trunk/arch/ia32/src/smp/mps.c /SPARTAN/trunk/arch/ia32/src/smp/smp.c /SPARTAN/trunk/src/Makefile.config
|
272 |
6874 d 20 h |
vana |
/SPARTAN/trunk/arch/ia64/ |
Symtab support for ia64 |
|
/SPARTAN/trunk/arch/ia64/Makefile.inc /SPARTAN/trunk/arch/ia64/_link.ld /SPARTAN/trunk/arch/ia64/include/asm.h /SPARTAN/trunk/arch/ia64/src/cpu/cpu.c /SPARTAN/trunk/arch/ia64/src/interrupt_handler.c /SPARTAN/trunk/arch/ia64/src/start.S
|
271 |
6874 d 21 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
|
269 |
6874 d 21 h |
decky |
/SPARTAN/trunk/arch/ia32/ |
make IA-32 SMP work again (finally) |
|
/SPARTAN/trunk/arch/ia32/include/pm.h /SPARTAN/trunk/arch/ia32/src/pm.c /SPARTAN/trunk/arch/ia32/src/smp/smp.c
|
268 |
6874 d 21 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
|
267 |
6874 d 22 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
|
266 |
6875 d 0 h |
cejka |
/SPARTAN/trunk/ |
Support for NaN and infinity in printf. |
|
/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/src/debug/print.c /SPARTAN/trunk/test/print/print1/test.c
|
265 |
6875 d 1 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
|
264 |
6875 d 1 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
|
262 |
6875 d 2 h |
decky |
/SPARTAN/trunk/arch/ia32/ |
alternative makefile for building with IA-32 cross-compiler |
|
/SPARTAN/trunk/arch/ia32/Makefile.inc.cross
|
259 |
6875 d 2 h |
palkovsky |
/SPARTAN/trunk/ |
Fixed asm problems in asm in atomic instructions. |
|
/SPARTAN/trunk/arch/amd64/include/atomic.h
/SPARTAN/trunk/arch/ia32/include/atomic.h /SPARTAN/trunk/src/build.amd64
|
257 |
6875 d 4 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
|
256 |
6875 d 5 h |
decky |
/SPARTAN/trunk/arch/mips/include/ |
fix MIPS build error |
|
/SPARTAN/trunk/arch/mips/include/asm.h
|
254 |
6875 d 5 h |
decky |
/SPARTAN/trunk/arch/ppc/ |
fix stupid assembler bugs in cpu_priority_* (PPC) |
|
/SPARTAN/trunk/arch/ppc/include/asm.h /SPARTAN/trunk/arch/ppc/src/drivers/ofw.c
|
253 |
6875 d 5 h |
jermar |
/SPARTAN/trunk/arch/ |
Implement PPC's get_stack_base().
Comment AMD64's get_stack_base(). |
|
/SPARTAN/trunk/arch/amd64/include/asm.h /SPARTAN/trunk/arch/ppc/include/asm.h
|
252 |
6875 d 7 h |
palkovsky |
/SPARTAN/trunk/arch/amd64/ |
Added volatile to inb/outb, so that it does not optimeze
lot of things out anymore.
Working delay loop. |
|
/SPARTAN/trunk/arch/amd64/include/asm.h /SPARTAN/trunk/arch/amd64/src/amd64.c /SPARTAN/trunk/arch/amd64/src/asm_utils.S /SPARTAN/trunk/arch/amd64/src/delay.S /SPARTAN/trunk/arch/amd64/src/dummy.s
|
251 |
6875 d 14 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
|
250 |
6875 d 19 h |
jermar |
/SPARTAN/trunk/arch/ppc/src/ |
Add missing semicolon. |
|
/SPARTAN/trunk/arch/ppc/src/fmath.c
|
249 |
6875 d 20 h |
vana |
/SPARTAN/trunk/arch/ia64/src/ |
Serialization of psr write |
|
/SPARTAN/trunk/arch/ia64/src/cpu/cpu.c /SPARTAN/trunk/arch/ia64/src/start.S
|
248 |
6875 d 20 h |
jermar |
/SPARTAN/trunk/ |
Make atomic_dec() and atomic_inc() take (volatile int *) argument, not (volatile count_t *). |
|
/SPARTAN/trunk/arch/amd64/include/atomic.h /SPARTAN/trunk/arch/ia32/include/atomic.h /SPARTAN/trunk/src/proc/scheduler.c /SPARTAN/trunk/src/proc/thread.c
|
247 |
6875 d 21 h |
jermar |
/SPARTAN/trunk/arch/ia32/src/mm/ |
Fix nasty bug in arch/mm/frame.c.
frame_region_not_free() takes address as its second argument, not size. |
|
/SPARTAN/trunk/arch/ia32/src/mm/frame.c
|
246 |
6875 d 21 h |
decky |
/SPARTAN/trunk/arch/ia32/src/mm/ |
make IA-32 UP work again (nasty hack) |
|
/SPARTAN/trunk/arch/ia32/src/mm/frame.c
|
245 |
6875 d 21 h |
palkovsky |
/SPARTAN/trunk/ |
Use ia32 memmap.h/memmapash.h |
|
/SPARTAN/trunk/arch/amd64/include/boot/memmap.h /SPARTAN/trunk/arch/amd64/include/boot/memmapasm.h
/SPARTAN/trunk/src/build.amd64
|