Subversion Repositories HelenOS

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
2465 6239 d 11 h jermar /trunk/ Merge arm32 into trunk.  
2089 6370 d 13 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2071 6381 d 6 h jermar /trunk/ (c) versus (C)  
2007 6428 d 4 h jermar /trunk/kernel/ Introduce page colors. So far, only sparc64 uses correct page color bits. Other architectures have a dummy define
specifying zero bits for a page color.

There is a new check of page color in as_area_share(). Because of lack of support for this in the userspace, the
check has been #ifef'ed out.
 
1891 6502 d 4 h jermar /trunk/kernel/ sparc64 work:
- Experimental support for TSB (Translation Storage Buffer).
 
1890 6502 d 14 h jermar /trunk/ - Create a dedicated slab cache for as_t objects and switch from malloc/free to slab_alloc/slab_free for
them.

- Slightly fix and improve both the kernel and userspace atomic_add() on sparc64.

- More TSB work on the sparc64 front.
 
1889 6503 d 6 h jermar /trunk/kernel/ Fix bug in mm/as.c:
- as_area_destroy() should not work with AS but as

sparc64 work:
- start implementing TSB support
 
1888 6506 d 9 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1787 6571 d 8 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6578 d 9 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1730 6595 d 2 h decky /kernel/trunk/arch/ppc32/ ppc32: BAT-less memory mapping (broken yet)
VSID support (broken yet)
boot API change
cleanup
 
1726 6595 d 9 h decky /kernel/trunk/arch/ppc32/ ppc32: more generic page hash table handling
(preliminary code, will be fixed properly later)
 
1702 6599 d 12 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1609 6606 d 13 h decky /kernel/trunk/arch/ppc32/ generalize ppc32 exception handling  
1511 6610 d 11 h palkovsky /kernel/trunk/arch/ Remove __address from include file included by uspace  
1475 6612 d 3 h jermar /kernel/trunk/arch/ Fix ppc32 and ppc64 to compile again.  
1423 6616 d 13 h jermar /kernel/trunk/ Update page fault handlers to distinguish between different access modes that had caused the page fault.  
1398 6622 d 6 h decky /kernel/trunk/arch/ port ppc32 changes to ppc64 (raw)  
1388 6622 d 7 h bondari /kernel/trunk/arch/ppc32/include/mm/  
1374 6625 d 3 h decky /kernel/trunk/arch/ppc32/ ppc32 work
update framebuffer
get rid of the BAT memory mapping (not finished yet)
 
1270 6642 d 5 h decky /kernel/trunk/arch/ppc32/ page index and VSID fixes  
1269 6642 d 7 h decky /kernel/trunk/ PHT Refill handler  
1215 6651 d 6 h decky /kernel/trunk/arch/ ppc32: stub for Page Hash Table support  
1070 6687 d 16 h jermar /kernel/trunk/ More checks for address space area conflicts.  
977 6690 d 12 h jermar /kernel/trunk/ Add sys_mremap() syscall.  
970 6690 d 15 h decky /kernel/trunk/arch/ppc32/ ppc32: get memory map from loader  
967 6690 d 16 h palkovsky /kernel/trunk/ Allowed userspace to include page.h.  
957 6691 d 6 h decky /kernel/trunk/arch/ run ppc32 kernel above 2 GB  
951 6691 d 11 h decky /kernel/trunk/arch/ppc32/ ppc32 boots again (temporarily)  
940 6692 d 7 h jermar /kernel/trunk/ Get rid of unneeded macros.
Their functionality has been replaced by the ELF loader.
 
934 6692 d 9 h decky /kernel/trunk/arch/ppc32/ remove all OpenFirmware bindings from ppc32 kernel code
kernel now runs in real mode (ppc32)
 
867 6710 d 11 h jermar /kernel/trunk/ Move OFW functionality of ppc32 memory_init to genarch so that the code can also be used by sparc64.
sparc64 is now close to broken as it lacks functionality to provide identity mapping for the whole phyisical memory.
 
843 6716 d 6 h palkovsky /kernel/trunk/ Made powerpc to get on PearPC to the version print when compiled with -O1:
- create proper memory zones
- switch to real mode on boot
TODO
- kernel relocation during boot
- autodetection of framebuffer settings (PCI?) - now includes hardcoded
settings for PearPc.
 
833 6720 d 1 h jermar /kernel/trunk/arch/ppc32/include/mm/ Fix ppc32 to at least compile again.  
823 6724 d 3 h jermar /kernel/trunk/ Reimplement ASID stealing logic.
This time, hopefully, with correct synchronization.
 
765 6730 d 5 h jermar /kernel/trunk/ Add PAGE_WIDTH to aid divisions by PAGE_SIZE.  
763 6730 d 11 h jermar /kernel/trunk/ Modify frame.h to use shifting instead of multiplication and division.
Define FRAME_WIDTH for all architectures.
 
760 6730 d 13 h jermar /kernel/trunk/ mips32 is not supposed to allocate page table.
This is done by the generic code now.
Remove PTL0 pointer as it is not needed.

Remove GET_PTL0_ADDRESS from kernel.

Update sparc64 comments in barrier.h.
 
756 6732 d 2 h jermar /kernel/trunk/ Memory management work.
Remove the last (i.e. 'root') argument from page_mapping_insert() and page_mapping_find().
Page table address is now extracted from the first (i.e. 'as') argument.
Add a lot of infrastructure to make the above possible.
sparc64 is now broken, most likely because of insufficient identity mapping of physical memory.
 
727 6744 d 4 h jermar /kernel/trunk/ New ASID management subsystem (initial work, more is required).
Some TLB invalidation changes.