Rev |
Age |
Author |
Path |
Log message |
Diff |
575 |
6833 d 14 h |
palkovsky |
/kernel/trunk/ |
Added generic exc_register/exc_dispatch functions,
copied from ia32 architecture. Currently only mips32 uses them.
The chardev_t can now be both input & output device (was
needed for serial driver).
Broken other architectures - ia64, sparc, powerpc will not compile.
Mips32 supports input on all msim, gxemul, indy(tested emulation
in gxemul, loses characters), simics. Simics serial line
is done using polling, I was unable to make it produce
an interrupt when the key was pressed. |
|
566 |
6835 d 14 h |
palkovsky |
/kernel/trunk/ |
Fixed bug in Intel32/AMD64 boot, that could cause page fault on boot.
Fixes of configuration program. |
|
564 |
6835 d 15 h |
jermar |
/kernel/trunk/ |
Send in some improvements. |
|
552 |
6836 d 16 h |
palkovsky |
/kernel/trunk/ |
Named spinlocks |
|
548 |
6836 d 18 h |
jermar |
/kernel/trunk/ |
Cleanup and fixes. |
|
540 |
6837 d 15 h |
jermar |
/kernel/trunk/arch/ |
Map all available frames of memory on ia32 and amd64 (ticket #10). |
|
537 |
6837 d 21 h |
jermar |
/kernel/trunk/ |
Buddy system cleanup and fixes.
- missing use of KA2PA in frame_init
- truncating black list addresses to frame boundaries
- removal of left-over obsolete structures
- fixing some comments |
|
534 |
6838 d 18 h |
jermar |
/ |
Rename HelenOS/SPARTAN to HelenOS/kernel again. |
|
533 |
6838 d 18 h |
bondari |
/SPARTAN/trunk/ |
Buddy allocator for physical memory complete implementation.
Tested on IA32, AMD64, MIPS32. RWLock Test #5 is not passed.
NOTE: Other architectures could be broken (but should not be) |
|
532 |
6838 d 19 h |
jermar |
/ |
Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch. |
|
523 |
6844 d 22 h |
jermar |
/kernel/trunk/ |
Clean up. |
|
517 |
6847 d 15 h |
jermar |
/kernel/trunk/ |
Implement basic kernel console command recognition.
Commands without arguments are now recognized. |
|
516 |
6848 d 19 h |
jermar |
/kernel/trunk/ |
Add VMware Workstation 5.5 to SMP compatibility list. |
|
515 |
6848 d 19 h |
jermar |
/kernel/trunk/ |
SMP cleanup continued.
Add nice type for IO APIC ID register.
Replace some magic numbers with more descriptive macros. |
|
514 |
6849 d 13 h |
jermar |
/kernel/trunk/arch/ia32/ |
More SMP cleanup.
Suddenly, keyboard started to work on SMP under Simics.
Still not functional on Bochs (will consult Bochs people).
Doxygen style comments for apic.c. |
|
513 |
6849 d 21 h |
jermar |
/kernel/trunk/arch/ia32/ |
APIC code cleanup. |
|
512 |
6850 d 1 h |
jermar |
/kernel/trunk/ |
SMP work.
Add madt_irq_to_pin().
Make ksmp() use virtual irq_to_pin() function, which makes better sence for ACPI configurations. |
|
511 |
6850 d 14 h |
jermar |
/kernel/trunk/ |
Enable dummy kconsole for ia32 and amd64 (UP mode works). |
|
509 |
6850 d 16 h |
jermar |
/kernel/trunk/ |
Basic keyboard support for mips32 (msim). |
|
508 |
6850 d 17 h |
jermar |
/kernel/trunk/ |
Basic keyboard support for ia32.
For some reason, keyoboard looks dead on SMP.
Make kinit() print "kinit..." strings in longer intervals. |
|
506 |
6850 d 19 h |
decky |
/kernel/trunk/ |
preparation for init task loading |
|
503 |
6850 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 |
6850 d 23 h |
jermar |
/ |
Rename HelenOS/SPARTAN to HelenOS/kernel. |
|
492 |
6851 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 |
6864 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 |
6865 d 2 h |
decky |
/SPARTAN/trunk/ |
make configuration variables usage consistent |
|
452 |
6865 d 18 h |
decky |
/SPARTAN/trunk/ |
major build system revision (unfinished)
this patchset most definitively breaks a lot of things, be patient |
|
451 |
6865 d 19 h |
decky |
/SPARTAN/trunk/arch/ia32/src/boot/ |
(ignore this :)) |
|
450 |
6865 d 19 h |
decky |
/SPARTAN/trunk/arch/ia32/src/boot/ |
(ignore this :)) |
|
437 |
6867 d 16 h |
decky |
/SPARTAN/trunk/arch/ia32/src/smp/ |
update comments |
|
422 |
6878 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 |
6886 d 4 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 |
6886 d 14 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 |
6889 d 0 h |
decky |
/SPARTAN/trunk/ |
IA32 has_cpuid() inline
minor indentation fixes |
|
406 |
6891 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 |
6898 d 1 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 |
6898 d 18 h |
bondari |
/SPARTAN/trunk/arch/ia32/ |
Last inline functions for IA-32 |
|
391 |
6899 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 |
6899 d 16 h |
bondari |
/SPARTAN/trunk/arch/ia32/ |
ia-32 memcmp inline |
|
381 |
6904 d 15 h |
jermar |
/SPARTAN/trunk/ |
Make cross-compiler the default compiler on IA-32.
For native compilations, use ./build.ia32 native.
Small changes elsewhere. |
|