Subversion Repositories HelenOS

Rev

Show changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
4685 5442 d 20 h jermar /trunk/ Fix 16bpp modes.  
4676 5445 d 22 h jermar /trunk/ RGB conversion functions should work with a well-defined pixel format.  
4151 5581 d 1 h decky /trunk/kernel/arch/ia32/src/ properly detect VESA 16 bpp modes with 5:5:5 colors  
4148 5581 d 6 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 5586 d 23 h decky /trunk/kernel/arch/ia32/src/drivers/ fix very strange condition  
3941 5606 d 20 h jermar /trunk/kernel/ Let IRQ claim methods take irq_t * instead of the instance argument.  
3930 5607 d 19 h jermar /trunk/kernel/ Adapt most of the kernel to ioport8_t, ioport16_t and ioport32_t types.  
3906 5611 d 18 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 5612 d 2 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 5650 d 5 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 5654 d 3 h jermar /trunk/kernel/ Only one kernel EGA driver to rule them all.  
3751 5662 d 6 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 5672 d 22 h decky /trunk/ kconsole is optional
kernel & uspace framebuffer rewrite with speedups (some things are slightly broken yet)
 
3672 5683 d 21 h jermar /trunk/ Merge sparc branch to trunk.  
3234 5815 d 2 h decky /trunk/ reintroduce support for MSIM text console in user space  
3227 5815 d 22 h decky /trunk/kernel/arch/ia32/src/drivers/ remove unnecessary newline  
3104 5866 d 10 h svoboda /trunk/kernel/ Declare arguments for memstr.h operations as pointers instead of uintptr_t.  
2439 6237 d 20 h decky /trunk/kernel/arch/ia32/src/ fix ICC compilation  
2218 6291 d 18 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 6354 d 20 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 6361 d 4 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2071 6371 d 21 h jermar /trunk/ (c) versus (C)  
2065 6385 d 19 h jermar /trunk/kernel/ Coding style fixes and formatting improvements.  
2018 6409 d 0 h decky /trunk/kernel/ rename rdtsc() to get_cycle()  
2015 6410 d 21 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 6428 d 5 h decky /trunk/ make framebuffer code more generic  
1956 6454 d 6 h decky /trunk/kernel/ ia32: adopt new IRQ interface, mouse not tested yet  
1837 6538 d 9 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 6561 d 23 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6569 d 0 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1754 6583 d 6 h jermar /kernel/trunk/ Indentation and some improved comments.
Remove forgotten comment from gxemul.sh.
 
1702 6590 d 3 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1667 6595 d 1 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 6602 d 12 h decky /kernel/trunk/arch/ cleanup  
1473 6602 d 21 h decky /kernel/trunk/ kernel support for text-only framebuffer  
1371 6615 d 19 h decky /kernel/trunk/ unify the framebuffer API
use physical address as the base address for the framebuffer
 
1327 6620 d 2 h decky /kernel/trunk/ split framebuffer initialization and sysinfo registration  
1318 6620 d 21 h vana /kernel/trunk/ Sysinfo userspace interface  
1313 6621 d 5 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 6622 d 2 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.