Subversion Repositories HelenOS

Rev

Show changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
4685 5452 d 21 h jermar /trunk/ Fix 16bpp modes.  
4676 5455 d 23 h jermar /trunk/ RGB conversion functions should work with a well-defined pixel format.  
4151 5591 d 1 h decky /trunk/kernel/arch/ia32/src/ properly detect VESA 16 bpp modes with 5:5:5 colors  
4148 5591 d 7 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 5597 d 0 h decky /trunk/kernel/arch/ia32/src/drivers/ fix very strange condition  
3941 5616 d 21 h jermar /trunk/kernel/ Let IRQ claim methods take irq_t * instead of the instance argument.  
3930 5617 d 20 h jermar /trunk/kernel/ Adapt most of the kernel to ioport8_t, ioport16_t and ioport32_t types.  
3906 5621 d 19 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 5622 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 5660 d 6 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 5664 d 4 h jermar /trunk/kernel/ Only one kernel EGA driver to rule them all.  
3751 5672 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 5682 d 23 h decky /trunk/ kconsole is optional
kernel & uspace framebuffer rewrite with speedups (some things are slightly broken yet)
 
3672 5693 d 22 h jermar /trunk/ Merge sparc branch to trunk.  
3234 5825 d 3 h decky /trunk/ reintroduce support for MSIM text console in user space  
3227 5825 d 22 h decky /trunk/kernel/arch/ia32/src/drivers/ remove unnecessary newline  
3104 5876 d 10 h svoboda /trunk/kernel/ Declare arguments for memstr.h operations as pointers instead of uintptr_t.  
2439 6247 d 20 h decky /trunk/kernel/arch/ia32/src/ fix ICC compilation  
2218 6301 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 6364 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 6371 d 4 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2071 6381 d 21 h jermar /trunk/ (c) versus (C)  
2065 6395 d 20 h jermar /trunk/kernel/ Coding style fixes and formatting improvements.  
2018 6419 d 0 h decky /trunk/kernel/ rename rdtsc() to get_cycle()  
2015 6420 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 6438 d 5 h decky /trunk/ make framebuffer code more generic  
1956 6464 d 7 h decky /trunk/kernel/ ia32: adopt new IRQ interface, mouse not tested yet  
1837 6548 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 6571 d 23 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6579 d 0 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1754 6593 d 7 h jermar /kernel/trunk/ Indentation and some improved comments.
Remove forgotten comment from gxemul.sh.
 
1702 6600 d 3 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1667 6605 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 6612 d 12 h decky /kernel/trunk/arch/ cleanup  
1473 6612 d 22 h decky /kernel/trunk/ kernel support for text-only framebuffer  
1371 6625 d 20 h decky /kernel/trunk/ unify the framebuffer API
use physical address as the base address for the framebuffer
 
1327 6630 d 3 h decky /kernel/trunk/ split framebuffer initialization and sysinfo registration  
1318 6630 d 22 h vana /kernel/trunk/ Sysinfo userspace interface  
1313 6631 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 6632 d 3 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.