Subversion Repositories HelenOS

Rev

Show changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
4685 5447 d 21 h jermar /trunk/ Fix 16bpp modes.  
4676 5450 d 23 h jermar /trunk/ RGB conversion functions should work with a well-defined pixel format.  
4151 5586 d 2 h decky /trunk/kernel/arch/ia32/src/ properly detect VESA 16 bpp modes with 5:5:5 colors  
4148 5586 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 5592 d 0 h decky /trunk/kernel/arch/ia32/src/drivers/ fix very strange condition  
3941 5611 d 21 h jermar /trunk/kernel/ Let IRQ claim methods take irq_t * instead of the instance argument.  
3930 5612 d 20 h jermar /trunk/kernel/ Adapt most of the kernel to ioport8_t, ioport16_t and ioport32_t types.  
3906 5616 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 5617 d 3 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 5655 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 5659 d 4 h jermar /trunk/kernel/ Only one kernel EGA driver to rule them all.  
3751 5667 d 7 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 5677 d 23 h decky /trunk/ kconsole is optional
kernel & uspace framebuffer rewrite with speedups (some things are slightly broken yet)
 
3672 5688 d 22 h jermar /trunk/ Merge sparc branch to trunk.  
3234 5820 d 3 h decky /trunk/ reintroduce support for MSIM text console in user space  
3227 5820 d 23 h decky /trunk/kernel/arch/ia32/src/drivers/ remove unnecessary newline  
3104 5871 d 11 h svoboda /trunk/kernel/ Declare arguments for memstr.h operations as pointers instead of uintptr_t.  
2439 6242 d 21 h decky /trunk/kernel/arch/ia32/src/ fix ICC compilation  
2218 6296 d 19 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 6359 d 21 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 6366 d 5 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2071 6376 d 22 h jermar /trunk/ (c) versus (C)  
2065 6390 d 20 h jermar /trunk/kernel/ Coding style fixes and formatting improvements.  
2018 6414 d 1 h decky /trunk/kernel/ rename rdtsc() to get_cycle()  
2015 6415 d 22 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 6433 d 6 h decky /trunk/ make framebuffer code more generic  
1956 6459 d 7 h decky /trunk/kernel/ ia32: adopt new IRQ interface, mouse not tested yet  
1837 6543 d 10 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 6567 d 0 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6574 d 1 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1754 6588 d 7 h jermar /kernel/trunk/ Indentation and some improved comments.
Remove forgotten comment from gxemul.sh.
 
1702 6595 d 4 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1667 6600 d 2 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 6607 d 13 h decky /kernel/trunk/arch/ cleanup  
1473 6607 d 22 h decky /kernel/trunk/ kernel support for text-only framebuffer  
1371 6620 d 20 h decky /kernel/trunk/ unify the framebuffer API
use physical address as the base address for the framebuffer
 
1327 6625 d 3 h decky /kernel/trunk/ split framebuffer initialization and sysinfo registration  
1318 6625 d 22 h vana /kernel/trunk/ Sysinfo userspace interface  
1313 6626 d 6 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 6627 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.