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
1930 6428 d 6 h decky /trunk/kernel/arch/ppc64/ ppc64: make it compile again  
1901 6449 d 6 h jermar /trunk/kernel/ Make SMP related parts of main.c more generic.
Move initialization of local APIC to architecture specific code.
Add arch_post_cpu_init() to support the above.
 
1891 6456 d 23 h jermar /trunk/kernel/ sparc64 work:
- Experimental support for TSB (Translation Storage Buffer).
 
1890 6457 d 10 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 6458 d 1 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 6461 d 4 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1882 6462 d 8 h jermar /trunk/kernel/ Support for sparc64 FPU context.  
1854 6477 d 10 h jermar /trunk/kernel/ Define architecture-specific thread sub-constructors and sub-destructors on all architectures.
Define the THREAD_FLAG_USPACE which means that the thread runs in user space.
The forementioned changes allow for allocating of user window buffer on sparc64
threads that execute in userspace.

A lot of formatting and indentation fixes.
 
1837 6502 d 13 h jermar /trunk/ Support 24bpp framebuffers with 4 pixelbytes (each pixel aligned on 32-bits).

At least on sparc64, the OpenFirmware linebytes property specifies the number
of pixels between consecutive scan lines of the display. Fix scanilne calculation,
including possible alignment.

Add note to 8bpp pixel functions pointing out drawbacks of that mode.
 
1802 6520 d 21 h decky /trunk/ cleanup and unify the build system  
1787 6526 d 3 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6533 d 4 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1767 6541 d 11 h palkovsky /kernel/trunk/ Remove unneeded FRAME_PANIC.
Fix some things broken by last commit.
 
1760 6544 d 6 h palkovsky /kernel/trunk/ Changed interface of frame_alloc/free to use address of frame instead of the pfn.
This makes it impossible to use >4GB of memory on 32-bit machines, but who cares...
 
1745 6549 d 0 h jermar /kernel/trunk/arch/ppc64/src/mm/ Make defunct ppc64 kernel compile again.  
1731 6549 d 21 h jermar /kernel/trunk/ Updates in Doxygen-style comments.
Make architecture specific modules appear conditionally in the documentation.
Add time management module.
Improve names of other modules and sort module order
to be more like in the design documentation.
 
1708 6551 d 10 h jermar /kernel/trunk/ Fix some broken doxygen comments.  
1705 6553 d 10 h cejka /kernel/trunk/ Added file with modules definitions and descriptions.
We are able to change modules order and their description in one place.
 
1704 6553 d 13 h cejka /kernel/trunk/ Fixed first letter size of subgroup name in Others.  
1702 6554 d 7 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1595 6561 d 14 h palkovsky /kernel/trunk/ Added kernel circular buffer klog.
Added automatic killing of tasks raising inappropriate exceptions.
TODO: Fix vsnprintf return value(and behaviour according to specs) and remove workaround in klog.
 
1587 6562 d 4 h jermar /kernel/trunk/ task_destroy() implementation, fixes in as_destroy() and task_kill().
This is the first version of HelenOS that would perform complete cleanup leading from thread to destruction of address space.
 
1511 6565 d 7 h palkovsky /kernel/trunk/arch/ Remove __address from include file included by uspace  
1475 6566 d 23 h jermar /kernel/trunk/arch/ Fix ppc32 and ppc64 to compile again.  
1474 6566 d 23 h palkovsky /kernel/trunk/ Added syscall that lets kernel regain access to keyboard.  
1423 6571 d 8 h jermar /kernel/trunk/ Update page fault handlers to distinguish between different access modes that had caused the page fault.  
1411 6574 d 5 h jermar /kernel/trunk/ Modify the hierarchy of page fault handlers to pass access mode that caused the fault.
Architectures are required to pass either PF_ACCESS_READ, PF_ACCESS_WRITE or PF_ACCESS_EXEC
to as_page_fault(), depending on the cause of the fault.
 
1399 6577 d 1 h decky /kernel/trunk/arch/ppc64/include/ small fixes  
1398 6577 d 1 h decky /kernel/trunk/arch/ port ppc32 changes to ppc64 (raw)  
1305 6588 d 8 h decky /kernel/trunk/arch/ppc64/ make ppc64 compile again  
1304 6589 d 3 h palkovsky /kernel/trunk/arch/ Fix zone_merge_all in ppc architectures.  
1298 6591 d 6 h vana /kernel/trunk/ FB endian fix  
1227 6605 d 5 h jermar /kernel/trunk/ Reorganize syscall names to better correspond to kernel architecture.
Add dummy placeholders for SYS_AS_AREA_SHARE_APPROVE and
SYS_AS_AREA_SHARE_PERFORM syscalls.
 
1221 6605 d 23 h decky /kernel/trunk/ printf-related and other code cleanup  
1215 6606 d 1 h decky /kernel/trunk/arch/ ppc32: stub for Page Hash Table support  
1196 6612 d 8 h cejka /kernel/trunk/ Printf ported back from uspace to kernel.
Printf calls changed to match new conventions.
 
1191 6614 d 12 h jermar /kernel/trunk/ Kernel support for SYS_ENABLE_IOSPACE.
amd64 and ia32 provide dummy implementation thereof.
 
1187 6615 d 4 h jermar /kernel/trunk/ Cleanup pm.c and pm.h code on ia32 and amd64.
Add before_task_runs() and before_task_runs_arch() for each architecture.
Add ia32 and amd64 code to ensure I/O Permission Bitmap update.
 
1185 6615 d 7 h jermar /kernel/trunk/ Add task_create_arch() for all architectures.  
1184 6615 d 7 h jermar /kernel/trunk/ Move arch/thread.h to arch/proc/thread.h on all architectures.
Replace ARCH_THREAD_DATA with new thread_arch_t arch on all architectures.
Similarily, add task_arch_t arch on all architectures.
On amd64 and ia32, grow the TSS segment by 64K + 1B to support IO port
permission bitmap. For the same reason, define per task IO port permission bitmaps
on ia32 and amd64.