Subversion Repositories HelenOS-historic

Rev

Go to most recent revision | Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
515 6836 d 8 h jermar /kernel/trunk/ SMP cleanup continued.
Add nice type for IO APIC ID register.
Replace some magic numbers with more descriptive macros.
 
514 6837 d 2 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 6837 d 10 h jermar /kernel/trunk/arch/ia32/ APIC code cleanup.  
512 6837 d 14 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 6838 d 3 h jermar /kernel/trunk/ Enable dummy kconsole for ia32 and amd64 (UP mode works).  
509 6838 d 6 h jermar /kernel/trunk/ Basic keyboard support for mips32 (msim).  
508 6838 d 6 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 6838 d 8 h decky /kernel/trunk/ preparation for init task loading  
503 6838 d 11 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 6838 d 12 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
492 6839 d 5 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 6851 d 13 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 6852 d 15 h decky /SPARTAN/trunk/ make configuration variables usage consistent  
452 6853 d 7 h decky /SPARTAN/trunk/ major build system revision (unfinished)
this patchset most definitively breaks a lot of things, be patient
 
451 6853 d 8 h decky /SPARTAN/trunk/arch/ia32/src/boot/ (ignore this :))  
450 6853 d 8 h decky /SPARTAN/trunk/arch/ia32/src/boot/ (ignore this :))  
437 6855 d 5 h decky /SPARTAN/trunk/arch/ia32/src/smp/ update comments  
422 6865 d 18 h jermar /SPARTAN/trunk/ Move ACPI code to genarch.
Enable it for ia32, amd64 and ia64.
For now, ia64 support is commented out.
 
414 6873 d 18 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 6874 d 4 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 6876 d 13 h decky /SPARTAN/trunk/ IA32 has_cpuid() inline
minor indentation fixes
 
406 6879 d 6 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 6885 d 14 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 6886 d 7 h bondari /SPARTAN/trunk/arch/ia32/ Last inline functions for IA-32  
391 6887 d 5 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 6887 d 5 h bondari /SPARTAN/trunk/arch/ia32/ ia-32 memcmp inline  
381 6892 d 4 h jermar /SPARTAN/trunk/ Make cross-compiler the default compiler on IA-32.
For native compilations, use ./build.ia32 native.

Small changes elsewhere.
 
372 6899 d 13 h cejka /SPARTAN/trunk/arch/ia32/src/mm/ Memmap print fixed.  
371 6900 d 5 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 6900 d 6 h jermar /SPARTAN/trunk/arch/ia32/src/acpi/ During MADT parse, count only enabled CPUs.  
368 6900 d 14 h jermar /SPARTAN/trunk/ Physical memory management work.
New frame allocator.
Some architectures need to have bigger heap.
 
358 6903 d 6 h bondari /SPARTAN/trunk/ built-in memcpy is not used anymore on IA-32.
IA-32 memcpy is now fast and inline.
 
357 6903 d 7 h bondari /SPARTAN/trunk/arch/ia32/src/ small fix  
356 6903 d 8 h bondari /SPARTAN/trunk/arch/ia32/ Get from port functions are now inline  
353 6903 d 18 h bondari /SPARTAN/trunk/arch/ia32/ Outb, outw, outl are now inline functions  
352 6904 d 6 h bondari /SPARTAN/trunk/arch/ia32/ outb inline function  
349 6906 d 6 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 6908 d 6 h jermar /SPARTAN/trunk/arch/ Optimize some assembler functions.  
347 6908 d 7 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 6910 d 14 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.