Subversion Repositories HelenOS

Rev

Go to most recent revision | Show changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
445 6777 d 19 h jermar /SPARTAN/trunk/arch/ia64/ ia64 work.
Fix SP_DELTA alignment.
Cosmetics.
 
444 6777 d 19 h vana /SPARTAN/trunk/arch/ia64/ Context restore in HEAVYWEIGHT handlers  
443 6777 d 21 h jermar /SPARTAN/trunk/arch/ia64/ ia64 work.
Do not break memory stack alignment in heavyweight interrupt handler.
Reserve scratch area for nested procedure calls on memory stack.
 
442 6777 d 22 h vana /SPARTAN/trunk/arch/ia64/src/ sp should not be decremented after last save  
441 6777 d 22 h jermar /SPARTAN/trunk/arch/ia64/src/ r12 (stack pointer) must be descremented prior to storing data into new memory stack frame.  
439 6778 d 18 h jermar /SPARTAN/trunk/arch/ia64/src/ Two small ia64 improvements.  
438 6778 d 19 h jermar /SPARTAN/trunk/arch/ia64/src/ ia64 work.
Heavyweight handler should be complete up to the point where it switches back to interrupted RSE context.
 
437 6779 d 13 h decky /SPARTAN/trunk/arch/ia32/src/smp/ update comments  
435 6779 d 13 h jermar /SPARTAN/trunk/arch/ia64/ ia64 work.
Begin implemention of heavyweight interrupt handler.
Finish implementation of interval timer.
Add some PAL macros.
 
434 6781 d 12 h jermar /SPARTAN/trunk/arch/ia64/src/ Fix switch variable.  
433 6781 d 13 h jermar /SPARTAN/trunk/arch/ia64/ ia64 work.
Fix definition of __u32.
Add more register manipulation functions.
Add unions describing bit-structured registers.
Distinguish between timer, unhandled and spurious external interrupts.
Initialize interval timer to generate first timer interrupt.
 
432 6781 d 14 h jermar /SPARTAN/trunk/arch/ IA-64 work.
Add some asm functions for manipulation with PSR, AR and CR registers.
 
431 6781 d 22 h jermar /SPARTAN/trunk/arch/ IA-64 work.
Exclude external interrupt from universal_handler() scope.
 
430 6783 d 12 h jermar /SPARTAN/trunk/ Move src/ and include/ to generic.  
429 6783 d 18 h jermar /SPARTAN/trunk/arch/mips32/ For now, compile with -mhard-float.
Libraries required by -msoft-float are not part of gcc.
Moreover, ld doesn't warn about undefined symbols.
 
428 6785 d 17 h jermar /SPARTAN/trunk/arch/sparc64/src/ sparc64 work.
In context_save() and context_restore(), reserve 128 bytes on stack for save area.
 
427 6785 d 17 h jermar /SPARTAN/trunk/arch/sparc64/include/ sparc64 work.
Adjust context_set() to be SCD compliant.
 
426 6785 d 21 h jermar /SPARTAN/trunk/ sparc64 work.
Add context_save(), context_set() and context_restore().
Remove putchar() definition from ofw.c.
Add sparc64 putchar().
Add ppc32 putchar() (i.e. the original ofw.c putchar()).
Make arg.h use the builtin va_* constructs.
 
425 6786 d 18 h cejka /SPARTAN/trunk/arch/mips32/include/ Fixed problem with va_arg macro for mips32. This solves problem with printing 64bit values on it.  
424 6786 d 21 h jermar /SPARTAN/trunk/ sparc64 work.
Link kernel with load address 0x4000.
Add fragment of Linux image header to force SILO to always load the kernel at 0x4000.
Adjust ofw.h and ofw.c to work also on sparc64.
 
423 6788 d 19 h decky /SPARTAN/trunk/ Enable/disable CPU memory barriers at compile time  
422 6790 d 1 h jermar /SPARTAN/trunk/ Move ACPI code to genarch.
Enable it for ia32, amd64 and ia64.
For now, ia64 support is commented out.
 
421 6790 d 10 h jermar /SPARTAN/trunk/ Create genarch directory.
Move ppc32 ofw.[ch] to genarch.
Fix prototype for ofw_call() to return __address instead of int (please review).
Fix copyright notice in sparc64/boot/boot.S.
 
420 6790 d 12 h jermar /SPARTAN/trunk/arch/sparc64/ Small sparc64 changes.
Start native boot loader.
 
419 6791 d 14 h bondari /SPARTAN/trunk/arch/ Memory inline functions for AMD64.
memcmp and memcpy are redefined according to norma
 
418 6793 d 14 h jermar /SPARTAN/trunk/ sparc64 infrastructure.  
417 6796 d 20 h palkovsky /SPARTAN/trunk/arch/amd64/src/boot/ Added identity mapping for more then 16MB - now it maps 64MB on boot.  
416 6796 d 21 h jermar /SPARTAN/trunk/arch/ia64/src/ IA-64 work.
Put RSE into lazy mode before writing ar.bspstore and ar.rnat.
Flush RSE before setting ar.bspstore so that ar.bsp is set to the same address.
 
415 6796 d 22 h jermar /SPARTAN/trunk/arch/ia64/include/ Make context_set() reset ar.pfs.pfm (especially ar.pfs.pfm.sol) so that register stack does not underflow.  
414 6798 d 1 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 6798 d 11 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.
 
412 6799 d 1 h jermar /SPARTAN/trunk/arch/ia64/src/ IA-64 work.
context_save() doesn't have to restore ar.pfs as it is a leaf procedure.
Get rid of assembler warning for start.S.
 
408 6800 d 21 h decky /SPARTAN/trunk/ IA32 has_cpuid() inline
minor indentation fixes
 
406 6803 d 13 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.
 
403 6805 d 14 h jermar /SPARTAN/trunk/arch/ Small improvement in pte_t type definition.  
402 6805 d 23 h jermar /SPARTAN/trunk/ Add ALIGN() macro.

Fix usage of early_mapping() in main.c.
The previous version would not map part of the heap.
Please, review.
 
399 6808 d 11 h jermar /SPARTAN/trunk/ mips32 memory management work.
TLB exceptions seem to be working on at least simics.
msim handles TLB Refill and TLB Invalid exceptions well,
but seems to skip writes to the mapped addressies in mm
mapping test #1 (the data is not written and exception
is not triggered).
 
398 6808 d 23 h jermar /SPARTAN/trunk/ Add arch directory for sparc64.  
397 6809 d 1 h jermar /SPARTAN/trunk/ Small changes to mips32 mm.
Small changes in mm mapping test #1.
 
396 6809 d 22 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.)