Subversion Repositories HelenOS

Rev

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

Filtering Options

Rev Age Author Path Log message Diff
4420 5502 d 10 h trochtova /branches/dd/ dd branch synchronized with trunk (revision 4419)  
4296 5537 d 6 h trochtova /branches/dd/ dd branch synchronized with trunk (revision 4295)  
4201 5552 d 12 h trochtova /branches/dd/ changes in trunk (rev 4200) merged into dd branch  
4156 5565 d 8 h trochtova /branches/dd/ changes in trunk (rev 4155) merged into dd branch  
4055 5576 d 10 h trochtova /branches/dd/ changes in trunk (rev 4054) merged into dd branch  
3994 5582 d 9 h decky /trunk/kernel/genarch/src/drivers/ega/ make sure the EGA framebuffer is initialized with proper attributes  
3975 5585 d 10 h decky /trunk/kernel/genarch/src/drivers/ega/ keep original contents of the EGA framebuffer,
make sure the cursor is on
 
3940 5592 d 6 h decky /trunk/kernel/ make hw_area API more generic
this allows mapping of EGA VRAM on ia32/amd64
 
3930 5593 d 1 h jermar /trunk/kernel/ Adapt most of the kernel to ioport8_t, ioport16_t and ioport32_t types.  
3908 5596 d 4 h decky /trunk/ overhaul pareas: use one single physical area for the physical address space not belonging to physical memory  
3902 5597 d 8 h jermar /trunk/kernel/ Introduce a more platform-neutral name for programmed I/O.

The new API looks like pio_read_n() or pio_write_n(), where n is 8, 16 or 32.
The old API (i.e. inb(), inw(), inl(), outb() outw(), outl()) may have made
some people think that the interface is only to be used with the separate I/O
space. That's not the case. This API is to be implemented on all platforms
so that we can finally have really generic kernel device drivers.
 
3844 5612 d 2 h decky /trunk/ silent kernel console output when user space console is active  
3790 5635 d 11 h svoboda /trunk/kernel/ Make newlines in panic messages consistent. Add periods at end of messages so that it is obvious whether they are printed entirely.  
3779 5639 d 9 h jermar /trunk/kernel/ Only one kernel EGA driver to rule them all.  
3751 5647 d 12 h svoboda /trunk/kernel/arch/ia32/src/drivers/ Revive kernel EGA fb driver. Plus fix bug -- was using memcpy() for scrolling instead of memmove().  
3234 5800 d 8 h decky /trunk/ reintroduce support for MSIM text console in user space  
3227 5801 d 4 h decky /trunk/kernel/arch/ia32/src/drivers/ remove unnecessary newline  
3104 5851 d 16 h svoboda /trunk/kernel/ Declare arguments for memstr.h operations as pointers instead of uintptr_t.  
2439 6223 d 2 h decky /trunk/kernel/arch/ia32/src/ fix ICC compilation  
2071 6357 d 3 h jermar /trunk/ (c) versus (C)  
2065 6371 d 1 h jermar /trunk/kernel/ Coding style fixes and formatting improvements.  
2015 6396 d 3 h jermar /trunk/ Rework support for virtually indexed cache.
Instead of repeatedly flushing the data cache, which was a huge overkill, refuse to create an illegal address alias
in the kernel (again) and allocate appropriate page color in userspace instead. Extend the detection also to
SYS_PHYSMEM_MAP syscall.

Add support for tracking physical memory areas mappable by SYS_PHYSMEM_MAP.

Lots of coding style changes.
 
1787 6547 d 5 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6554 d 6 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1754 6568 d 12 h jermar /kernel/trunk/ Indentation and some improved comments.
Remove forgotten comment from gxemul.sh.
 
1702 6575 d 9 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1473 6588 d 3 h decky /kernel/trunk/ kernel support for text-only framebuffer  
1296 6612 d 9 h vana /kernel/trunk/arch/ia32/src/drivers/ new line only if no clrscr  
756 6707 d 23 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.
 
755 6708 d 22 h jermar /kernel/trunk/ Change page_mapping_find/insert interfaces to take as_t * as first argument
and not asid_t as second argument. This change was necessitated by the
removal of mapping array from as_area_t and the fact that an address
space doesn't have an ASID when it is created.
 
687 6731 d 7 h jermar /kernel/trunk/ Memory management work.
Pass address space identifier to functions in page_operations to support single global page hash table.
 
623 6755 d 13 h jermar /kernel/trunk/ Add SPINLOCK_DECLARE and SPINLOCK_INITIALIZE macros.
SPINLOCK_DECLARE is to be used instead of direct spinlock_t declarations
in dynamically allocated structures on which spinlock_initialize() is called after
their creation.
SPINLOCK_INITIALIZE is to be used instead of direct spinlock_t declarations
of global spinlocks. It declares and initializes the spinlock.
Moreover, both macros are empty on UP so that -Wall warnings about unused structures
get supressed.
 
588 6760 d 7 h palkovsky /kernel/trunk/ Added support for backspace
- printing '\b' should move the cursor one char to the left
- backspace key should return '\b' to application
 
575 6760 d 23 h palkovsky /kernel/trunk/ Added generic exc_register/exc_dispatch functions,
copied from ia32 architecture. Currently only mips32 uses them.

The chardev_t can now be both input & output device (was
needed for serial driver).

Broken other architectures - ia64, sparc, powerpc will not compile.

Mips32 supports input on all msim, gxemul, indy(tested emulation
in gxemul, loses characters), simics. Simics serial line
is done using polling, I was unable to make it produce
an interrupt when the key was pressed.
 
534 6766 d 3 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6766 d 4 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
501 6778 d 8 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
492 6779 d 1 h jermar /SPARTAN/trunk/ Rename map_page_to_frame() to page_mapping_insert() and find_mapping() to page_mapping_find().
New names should make it more apparent that these two belong together.
 
452 6793 d 3 h decky /SPARTAN/trunk/ major build system revision (unfinished)
this patchset most definitively breaks a lot of things, be patient
 
413 6814 d 0 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.