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
2007 6509 d 8 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.
 
2003 6510 d 15 h decky /trunk/kernel/arch/ cleanup endian conversion macros  
1993 6518 d 18 h decky /trunk/ make framebuffer code more generic  
1970 6542 d 18 h decky /trunk/kernel/arch/ia32/src/smp/ use new IRQ scheme in l_apic_timer_interrupt()  
1957 6544 d 18 h decky /trunk/kernel/ ia32: mouse support, mouse regrab is still broken  
1956 6544 d 19 h decky /trunk/kernel/ ia32: adopt new IRQ interface, mouse not tested yet  
1939 6553 d 14 h decky /trunk/ ia32: fix compilation, keyboard not checked yet  
1937 6553 d 21 h decky /trunk/kernel/arch/ remove orphaned functions  
1901 6575 d 15 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 6583 d 8 h jermar /trunk/kernel/ sparc64 work:
- Experimental support for TSB (Translation Storage Buffer).
 
1890 6583 d 19 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 6584 d 10 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 6587 d 13 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1882 6588 d 17 h jermar /trunk/kernel/ Support for sparc64 FPU context.  
1877 6592 d 21 h jermar /trunk/kernel/ Coding style fixes.
Remove unneeded sparc64 dummy functions.
 
1854 6603 d 19 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.
 
1844 6623 d 12 h jermar /trunk/kernel/ Add an option to compile the sparc64 kernel for Ultra 5 or Enterprise E6500.
Basic keyboard support (polling) based on ns16550 serial port (deployed on Ultra).
 
1842 6623 d 17 h jermar /trunk/kernel/ i8042 and z8530 separated, the tree compiles again.
Now there is some duplicated code in i8042.c and z8530.c,
but that can be eliminated in slower pace.
 
1838 6628 d 15 h jermar /trunk/kernel/ Add scan code map for Sun keyboard.  
1837 6628 d 22 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.
 
1817 6639 d 6 h decky /trunk/kernel/arch/ xen32 work: create identity mapping for the main memory zone,
make several dummy modifications to get to the banner
 
1811 6639 d 18 h decky /trunk/kernel/arch/ unify bootstrapping  
1802 6647 d 6 h decky /trunk/ cleanup and unify the build system  
1793 6649 d 19 h jermar /trunk/kernel/ Change hw_map() on sparc64 to use virtual addresses that are
beyond the end of physical memory. It is beneficial in two
ways: first, physical memory is no longer being wasted by
otherwise necessary calls to frame_alloc() and, second,
virtual addresses for devices are now correctly allocated
and do not overlap with the 4M TLB-locked mapping for
kernel text and data.
 
1787 6652 d 12 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6659 d 13 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1766 6667 d 20 h palkovsky /kernel/trunk/ Changed frame_alloc call, cleaned a lot of stuff, fixed some not-perfectly-correct error handling.  
1760 6670 d 15 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...
 
1754 6673 d 19 h jermar /kernel/trunk/ Indentation and some improved comments.
Remove forgotten comment from gxemul.sh.
 
1735 6675 d 20 h decky /kernel/trunk/ make kernel prints case consistent  
1731 6676 d 6 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.
 
1724 6676 d 23 h palkovsky /kernel/trunk/arch/ Let mouse work on amd64 too.  
1708 6677 d 19 h jermar /kernel/trunk/ Fix some broken doxygen comments.  
1705 6679 d 19 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 6679 d 22 h cejka /kernel/trunk/ Fixed first letter size of subgroup name in Others.  
1703 6679 d 23 h jermar /kernel/trunk/arch/ Put sparc64 interrupt stuff under the Interrupt group in Doxygen-generated documentation.  
1702 6680 d 16 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1697 6681 d 11 h palkovsky /kernel/trunk/arch/ Fixed incorrect atomic_postinc/postdec...again...  
1691 6682 d 14 h palkovsky /kernel/trunk/arch/ia32/include/ Fix either bad compiler or bad code. The net result is better
optimization in GCC
 
1690 6683 d 10 h palkovsky /kernel/trunk/ Yet another fix with framebuffer.