Subversion Repositories HelenOS

Rev

Show changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
4685 5428 d 19 h jermar /trunk/ Fix 16bpp modes.  
4676 5431 d 21 h jermar /trunk/ RGB conversion functions should work with a well-defined pixel format.  
4151 5567 d 0 h decky /trunk/kernel/arch/ia32/src/ properly detect VESA 16 bpp modes with 5:5:5 colors  
4148 5567 d 5 h decky /trunk/ as kernel little brother drivers are not needed anymore, the device numbers do not have to be correlated between kernel and uspace in any way
introduce new syscall sys_device_assign_devno() for generating system-wide unique device numbers for uspace
 
4096 5572 d 22 h decky /trunk/kernel/arch/ia32/src/drivers/ fix very strange condition  
3941 5592 d 19 h jermar /trunk/kernel/ Let IRQ claim methods take irq_t * instead of the instance argument.  
3930 5593 d 18 h jermar /trunk/kernel/ Adapt most of the kernel to ioport8_t, ioport16_t and ioport32_t types.  
3906 5597 d 17 h jermar /trunk/kernel/ IRQ handlers are using one superfluous argument and an unused elipsis.
On the other hand, IRQ claim functions would need to be passed the instance
argument.
 
3902 5598 d 0 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.
 
3790 5636 d 4 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 5640 d 2 h jermar /trunk/kernel/ Only one kernel EGA driver to rule them all.  
3751 5648 d 4 h svoboda /trunk/kernel/arch/ia32/src/drivers/ Revive kernel EGA fb driver. Plus fix bug -- was using memcpy() for scrolling instead of memmove().  
3707 5658 d 21 h decky /trunk/ kconsole is optional
kernel & uspace framebuffer rewrite with speedups (some things are slightly broken yet)
 
3672 5669 d 20 h jermar /trunk/ Merge sparc branch to trunk.  
3234 5801 d 1 h decky /trunk/ reintroduce support for MSIM text console in user space  
3227 5801 d 20 h decky /trunk/kernel/arch/ia32/src/drivers/ remove unnecessary newline  
3104 5852 d 8 h svoboda /trunk/kernel/ Declare arguments for memstr.h operations as pointers instead of uintptr_t.  
2439 6223 d 19 h decky /trunk/kernel/arch/ia32/src/ fix ICC compilation  
2218 6277 d 16 h decky /trunk/kernel/ support the possibility to send EOI or Interrupt Acknowledgement
prior to processing the interrupt
(this is essential on some architectures to prevent preemption deadlock)
 
2107 6340 d 18 h jermar /trunk/ When clock() is called by an external interrupt dispatched by the IRQ dispatcher,
no spinlock can be held or the kernel will not be preemptive. This fixes Ticket #24.

Formating and indentation fixes.
 
2089 6347 d 3 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2071 6357 d 19 h jermar /trunk/ (c) versus (C)  
2065 6371 d 18 h jermar /trunk/kernel/ Coding style fixes and formatting improvements.  
2018 6394 d 22 h decky /trunk/kernel/ rename rdtsc() to get_cycle()  
2015 6396 d 20 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.
 
1993 6414 d 3 h decky /trunk/ make framebuffer code more generic  
1956 6440 d 5 h decky /trunk/kernel/ ia32: adopt new IRQ interface, mouse not tested yet  
1837 6524 d 8 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.
 
1787 6547 d 22 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6554 d 23 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1754 6569 d 5 h jermar /kernel/trunk/ Indentation and some improved comments.
Remove forgotten comment from gxemul.sh.
 
1702 6576 d 2 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1667 6581 d 0 h jermar /kernel/trunk/ Print spurious interrupt messages only when compiled with CONFIG_DEBUG.
Print warning about looping spinlock only after 100000000 unsuccessfull attempts to gain the spinlock.
 
1477 6588 d 11 h decky /kernel/trunk/arch/ cleanup  
1473 6588 d 20 h decky /kernel/trunk/ kernel support for text-only framebuffer  
1371 6601 d 18 h decky /kernel/trunk/ unify the framebuffer API
use physical address as the base address for the framebuffer
 
1327 6606 d 1 h decky /kernel/trunk/ split framebuffer initialization and sysinfo registration  
1318 6606 d 20 h vana /kernel/trunk/ Sysinfo userspace interface  
1313 6607 d 3 h jermar /kernel/trunk/ Do not report possible deadlock on fb_lock.
This issue was causing troubles in connection
with slow framebuffer in simulated environment
when false positives triggered an infinite
recursion of attempts to report deadlock on
fb_lock using printf() and fb_putchar().
 
1311 6608 d 1 h jermar /kernel/trunk/arch/ia32/src/drivers/ Fix number of frames allocated for VESA frame buffer in the singular
case when the frame buffer size is below FRAME_SIZE.