Rev |
Age |
Author |
Path |
Log message |
Diff |
503 |
6892 d 22 h |
jermar |
/kernel/trunk/ |
Rename arch_late_init() to arch_pre_smp_init().
Add arch_post_smp_init().
Enable IRQ_KBD on ia-32 (doesn't work on Bochs SMP, works on Bochs UP). |
|
501 |
6892 d 23 h |
jermar |
/ |
Rename HelenOS/SPARTAN to HelenOS/kernel. |
|
492 |
6893 d 16 h |
jermar |
/SPARTAN/trunk/ |
Rename map_page_to_frame() to page_mapping_insert() and find_mapping() to page_mapping_find().
New names should make it more apparent that these two belong together. |
|
472 |
6906 d 0 h |
jermar |
/SPARTAN/trunk/ |
Changes in build system.
For .S targets, always do -D__ASM__.
Remove unnecessary #define __ASM__ from various *.S files.
At the end of build, generate disassembler dump for kernel.raw.
ia64 work.
Better General Exception handler. |
|
458 |
6907 d 2 h |
decky |
/SPARTAN/trunk/ |
make configuration variables usage consistent |
|
452 |
6907 d 19 h |
decky |
/SPARTAN/trunk/ |
major build system revision (unfinished)
this patchset most definitively breaks a lot of things, be patient |
|
451 |
6907 d 20 h |
decky |
/SPARTAN/trunk/arch/ia32/src/boot/ |
(ignore this :)) |
|
450 |
6907 d 20 h |
decky |
/SPARTAN/trunk/arch/ia32/src/boot/ |
(ignore this :)) |
|
437 |
6909 d 17 h |
decky |
/SPARTAN/trunk/arch/ia32/src/smp/ |
update comments |
|
422 |
6920 d 5 h |
jermar |
/SPARTAN/trunk/ |
Move ACPI code to genarch.
Enable it for ia32, amd64 and ia64.
For now, ia64 support is commented out. |
|
414 |
6928 d 5 h |
jermar |
/SPARTAN/trunk/ |
Create generic context_save() and context_restore().
These two functions are defined inline and only call context_save_arch() and context_restore_arch(), respectively.
The main purpose of this is to enable centralized commenting of these important and tricky functions. |
|
413 |
6928 d 15 h |
jermar |
/SPARTAN/trunk/ |
Rename cpu_priority_{high|low|restore|read} functions to interrupts_{disable|enable|restore|read}.
Rename pri_t to ipl_t (Interrupt Priority Level).
Rename thread_t::pri to thread_t::priority. |
|
408 |
6931 d 1 h |
decky |
/SPARTAN/trunk/ |
IA32 has_cpuid() inline
minor indentation fixes |
|
406 |
6933 d 17 h |
jermar |
/SPARTAN/trunk/arch/ |
Fix directives for K_TEXT_START, K_TEXT_START_2 and K_DATA_START sections to be more descriptive about section's content.
Remove LOAD(0xdeadbeaf) from ia32 linker script.
Remove __fake from amd64 pm.c. |
|
396 |
6940 d 2 h |
jermar |
/SPARTAN/trunk/ |
Add mm/mapping1 test.
(Will not make it past TLB Invalid exception on mips32.)
Fixes in asid.c.
Make TLB register types union with __u32 value.
Implement tlb_invalidate() for mips32.
(TLB invalidation and shootdown path will have to be revised.) |
|
392 |
6940 d 19 h |
bondari |
/SPARTAN/trunk/arch/ia32/ |
Last inline functions for IA-32 |
|
391 |
6941 d 16 h |
jermar |
/SPARTAN/trunk/ |
mips32 memory management work.
TLB Refill Exception implemented (passed basic testing).
Remove bit g from struct entry_hi.
Add generic find_mapping().
Add asid to vm_t type, define asid_t to hide architecture specific differences.
Implement ASID allocation for mips32, dummy for other architectures.
Add THE->vm (a.k.a. VM).
Add vm_install_arch().
Move pte_t definition to arch/types.h on each architecture.
Fix PTL manipulating functions on mips32 to shift pfn by 12 instead of by 14.
Fix tlb_init_arch() to initialize all entries.
Other.
Remove unnecessary header files from arch.h
Add missing headers here and there.
Remove two unnecessary ld flags from mips32 makefile. |
|
390 |
6941 d 17 h |
bondari |
/SPARTAN/trunk/arch/ia32/ |
ia-32 memcmp inline |
|
381 |
6946 d 16 h |
jermar |
/SPARTAN/trunk/ |
Make cross-compiler the default compiler on IA-32.
For native compilations, use ./build.ia32 native.
Small changes elsewhere. |
|
372 |
6954 d 0 h |
cejka |
/SPARTAN/trunk/arch/ia32/src/mm/ |
Memmap print fixed. |
|
371 |
6954 d 16 h |
jermar |
/SPARTAN/trunk/arch/ia32/src/ |
Complete map_kernel() in boot.S to map the entire 4G space.
Change IA-32 frame_arch_init() to add zone with lower base addresses first. |
|
370 |
6954 d 17 h |
jermar |
/SPARTAN/trunk/arch/ia32/src/acpi/ |
During MADT parse, count only enabled CPUs. |
|
368 |
6955 d 1 h |
jermar |
/SPARTAN/trunk/ |
Physical memory management work.
New frame allocator.
Some architectures need to have bigger heap. |
|
358 |
6957 d 17 h |
bondari |
/SPARTAN/trunk/ |
built-in memcpy is not used anymore on IA-32.
IA-32 memcpy is now fast and inline. |
|
357 |
6957 d 18 h |
bondari |
/SPARTAN/trunk/arch/ia32/src/ |
small fix |
|
356 |
6957 d 19 h |
bondari |
/SPARTAN/trunk/arch/ia32/ |
Get from port functions are now inline |
|
353 |
6958 d 5 h |
bondari |
/SPARTAN/trunk/arch/ia32/ |
Outb, outw, outl are now inline functions |
|
352 |
6958 d 17 h |
bondari |
/SPARTAN/trunk/arch/ia32/ |
outb inline function |
|
349 |
6960 d 18 h |
jermar |
/SPARTAN/trunk/ |
Optimize sorting functions so that malloc() and free() is called only for e_size > EBUFSIZE.
Smaller buffers are allocated directly on the stack.
Some copyright holder fixes on some files written by Ondrej Palkovsky. |
|
348 |
6962 d 17 h |
jermar |
/SPARTAN/trunk/arch/ |
Optimize some assembler functions. |
|
347 |
6962 d 19 h |
jermar |
/SPARTAN/trunk/ |
Documentation updates for amd64, mips32 and ia32.
Replace %L with %P printf() formatter in MPS and ACPI detection functions to print addresses in maximal width.
Tweak memmap.S and IA-32 and AMd64 boot.S.
Cancel unneeded instructions.
Replace cmpl $0, %ebx with testl %ebx, %ebx.
Move memmap.S data to K_DATA_START section. |
|
334 |
6965 d 1 h |
jermar |
/SPARTAN/trunk/arch/ |
Cleanup.
Cancel __fake in pm.c and replace it with LONG(0xdeadbeaf) in linker script. Still need some to find out why it must be there.
Remove comment saying, that mips is little-endian. |
|
331 |
6965 d 2 h |
bondari |
/SPARTAN/trunk/ |
Generic quicksort and bubble sort implementation.
ACPI MADT parser now uses qsort() for index sorting |
|
323 |
6967 d 3 h |
jermar |
/SPARTAN/trunk/ |
Add comments for new floating point modifiers to print.c.
Remove left-over comments from AMD64 and IA-32 page.c.
Coding style clean up. |
|
316 |
6969 d 6 h |
jermar |
/SPARTAN/trunk/arch/ia32/src/ |
Optimize assembler code according to the knoweledge of IA-32 ABI. |
|
315 |
6969 d 7 h |
jermar |
/SPARTAN/trunk/arch/ia32/ |
Make IA-32 userspace stack be aligned on doubleword boundary.
In userspace(), mark "eax" as clobbered register. |
|
314 |
6969 d 15 h |
palkovsky |
/SPARTAN/trunk/ |
Small cleanups |
|
312 |
6969 d 16 h |
jermar |
/SPARTAN/trunk/arch/ia32/ |
According to IA-32 ABI, %edx and %ecx don't have to be saved accross function calls.
Remove these registers from context_t and adjust context_save() and context_restore() to make use of this fact. |
|
311 |
6969 d 17 h |
bondari |
/SPARTAN/trunk/arch/ia32/src/acpi/ |
Minor after fixes to madt parsing |
|
310 |
6969 d 17 h |
bondari |
/SPARTAN/trunk/arch/ia32/src/acpi/ |
Fixed possible non-consequentive local apic madt entries
Request for peer review - was not possible to test. |
|