Subversion Repositories HelenOS

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
3672 5826 d 11 h jermar /trunk/ Merge sparc branch to trunk.  
2071 6514 d 10 h jermar /trunk/ (c) versus (C)  
2068 6521 d 18 h jermar /trunk/kernel/ Formatting and indentation fixes.  
1903 6626 d 11 h jermar /trunk/ SMP stuff for sparc64.
Almost complete except for IPIs.
The absence of IPI support deadlocks
the kernel when more CPUs are configured.
 
1882 6640 d 17 h jermar /trunk/kernel/ Support for sparc64 FPU context.  
1860 6653 d 12 h jermar /trunk/kernel/ A lot of untested sparc64 stuff:
- Write ASID to hardware when a thread is about to run in userspace.
- Add userspace() and switch_to_userspace() functions.
- Handle special cases when the userspace spill/fill handler causes MMU trap.
- Resolve some TODOs in the existing sparc64 code.
- sparc64 has now C99 compliant header guards.
- Formatting and indentation fixes.
 
1857 6654 d 15 h jermar /trunk/kernel/arch/sparc64/ sparc64 work.
More bits needed to reach the userspace milestone were added.
The preemptible_handler(), still a prototype, now contains all functionality it needs.
Some sanitation was added to functions expecting page-aligned pointers to
userspace window buffer.
 
1852 6658 d 12 h jermar /trunk/kernel/ sparc64 work.
Bunch of changes in preparation for sparc64 mm and userspace support.
Fix alignment of hardcoded_* variables in linker script.
 
1851 6663 d 17 h jermar /trunk/kernel/ sparc64 work.
Define the istate structure.
Move the identity-mapping handler to assembly.
Make the preemptible handler more general so that TL=1 MMU exceptions can make use of it.

Little bit of formatting and indentation.
 
1789 6702 d 16 h jermar /trunk/ Fix ofw_memmap() in boot infrastructure.
The cell size is 32-bit and not equal sizeof(ofw_arg_t).
Define architecture dependant #address-cells and #size-cells for cases
the respective properties are missing in the OpenFirmware device tree.
The algorithm now works both for ppc32 and sparc64.

Add memmap_t, screen_t and keyboard_t to sparc64 bootinfo structure.
Be more verbose during sparc64 boot.

Move ALIGN_UP to generic part of boot/.

Change header guards in several places so that they don't contain double underscore.
 
1787 6704 d 12 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1784 6705 d 10 h jermar /kernel/trunk/ Sync OpenFirmware functionality with boot.
Random cleanup.
 
1780 6711 d 13 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1702 6732 d 16 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
664 6902 d 6 h jermar /kernel/trunk/ sparc64 work.
Interrupt Levels 1 - 15 serviced.
Minor changes in the exc_* functions.
 
658 6905 d 20 h jermar /kernel/trunk/arch/sparc64/include/ sparc64 work.
Add functions to read and write TICK and TICK_compare registers.
Add types describing TICK and TICK_compare registers.
 
650 6908 d 8 h jermar /kernel/trunk/ sparc64 work.
Implement interrupt_disable(), interrupt_enable(), interrupt_restore() and interrupt_read() functions.
Fix context save/restore to save/restore register %i7.
 
640 6910 d 7 h jermar /kernel/trunk/ sparc64 work.
CPU identification.