Subversion Repositories HelenOS

Rev

Go to most recent revision | Show changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
3947 5594 d 14 h jermar /trunk/ This is the evil commit. In particular, it does:

- introduces more powerful pseudo code for userspace IRQ top-half handlers
- changes the internals of IRQ dispatching
- simplifies the kernel's i8042 driver
- adapts the uspace i8042 driver to make use of the new pseudocode
- breaks all other architectures except ia32
- breaks almost all existing drivers
- breaks switching between uspace and kernel drivers
 
3941 5595 d 11 h jermar /trunk/kernel/ Let IRQ claim methods take irq_t * instead of the instance argument.  
3940 5595 d 14 h decky /trunk/kernel/ make hw_area API more generic
this allows mapping of EGA VRAM on ia32/amd64
 
3930 5596 d 10 h jermar /trunk/kernel/ Adapt most of the kernel to ioport8_t, ioport16_t and ioport32_t types.  
3913 5598 d 18 h decky /trunk/ mips32: basic SMP support  
3908 5599 d 13 h decky /trunk/ overhaul pareas: use one single physical area for the physical address space not belonging to physical memory  
3906 5600 d 9 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 5600 d 16 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.
 
3896 5601 d 8 h svoboda /trunk/ More elegant way of invoking the loader - as a 'cloneable' service. Task names functionality lost for the time being.  
3875 5603 d 12 h decky /trunk/kernel/generic/ remove platform dependent constructs from generic code  
3870 5604 d 20 h decky /trunk/kernel/generic/src/ add includes necessary for LOG macro  
3867 5605 d 18 h svoboda /trunk/kernel/generic/src/ipc/ Bugfix: Check kbox, not regular box. In case where the debugger disconnected first and then the application terminated, the application task would not be cleaned up.  
3865 5607 d 9 h rimsky /trunk/ Allow to suppress compilation of FB code on Sparc machines that do not have FB.  
3860 5612 d 18 h decky /trunk/kernel/generic/src/main/ add dot which will be erased  
3844 5615 d 10 h decky /trunk/ silent kernel console output when user space console is active  
3842 5615 d 13 h decky /trunk/kernel/generic/src/ make sys_klog atomic  
3840 5615 d 17 h decky /trunk/kernel/generic/src/main/ more decent kconsole output without stdin  
3828 5617 d 14 h decky /trunk/kernel/generic/src/main/ print numbers, not "llu"  
3819 5621 d 12 h jermar /trunk/ Introduce a new syscall: SYS_IPC_FORWARD_SLOW.  
3790 5638 d 20 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.  
3788 5639 d 9 h svoboda /trunk/kernel/ Unify newlines in fault_if_from_uspace() format strings. (Remove them and print newline automatically). Also start messages with caps.  
3761 5647 d 12 h decky /trunk/ send notification to uspace console when switching from kernel console  
3750 5650 d 20 h svoboda /trunk/kernel/generic/ Add memmove() function to kernel.  
3734 5653 d 18 h decky /trunk/kernel/generic/src/proc/ coding style  
3707 5661 d 13 h decky /trunk/ kconsole is optional
kernel & uspace framebuffer rewrite with speedups (some things are slightly broken yet)
 
3683 5670 d 13 h svoboda /trunk/kernel/generic/ Rename udebug_thread_t.debug_active just to 'active'.  
3680 5670 d 18 h svoboda /trunk/kernel/generic/src/time/ Fix panic caused by NULL pointer dereference.  
3657 5677 d 19 h vana /trunk/ Legacy IRQ support, uspace NS16550 support, some minor changes  
3655 5678 d 11 h jermar /trunk/kernel/ Add additional members to the irq_t structure so that an interrupt-driven driver
does not need to know how to clear the level interrupt. The z8530 was modified
in this way and is much more generic. The ns16550 driver has also been modified,
but awaits testing. The sparc64 interrupt mapping and dispatch code is now using
the new info and calls the clear-interrupt-routine itself.
 
3626 5684 d 16 h vana /trunk/kernel/ Classic TLB shootdown support on ia64  
3620 5684 d 21 h svoboda /trunk/kernel/generic/ Move stuff related to kbox to a separate struct.  
3617 5685 d 15 h svoboda /trunk/kernel/generic/ Fix race that allowed Udebug to report THREAD_B events for threads already reported with THREAD_READ.  
3614 5685 d 20 h svoboda /trunk/kernel/generic/src/syscall/ Add another stopping point.  
3613 5685 d 20 h svoboda /trunk/kernel/generic/ Merge feature from tracing: correct stopping of CPU-intensive tasks in udebug.  
3604 5686 d 9 h svoboda /trunk/kernel/generic/ Get rid of int_lock from udebug_thread_t, as is flawed.  
3603 5686 d 10 h svoboda /trunk/ Stoppability sections must be much smaller (design error). Also fix deadlock in udebug_stop(). Fix pause functionality in tracer.  
3601 5686 d 17 h svoboda /trunk/kernel/generic/ Replace 'stop' in udebug_thread_t with 'go' for consistency with nomenclature.  
3600 5686 d 18 h svoboda /trunk/kernel/generic/ Udebug comments - 'is go', not 'has go'. Missing periods.  
3581 5696 d 9 h jermar /trunk/kernel/ Some cstyle.  
3578 5697 d 0 h vana /trunk/ Alfa of SMP support on IA64