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 5698 d 5 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 5699 d 2 h jermar /trunk/kernel/ Let IRQ claim methods take irq_t * instead of the instance argument.  
3940 5699 d 5 h decky /trunk/kernel/ make hw_area API more generic
this allows mapping of EGA VRAM on ia32/amd64
 
3930 5700 d 1 h jermar /trunk/kernel/ Adapt most of the kernel to ioport8_t, ioport16_t and ioport32_t types.  
3913 5702 d 9 h decky /trunk/ mips32: basic SMP support  
3908 5703 d 4 h decky /trunk/ overhaul pareas: use one single physical area for the physical address space not belonging to physical memory  
3906 5703 d 23 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 5704 d 7 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 5704 d 23 h svoboda /trunk/ More elegant way of invoking the loader - as a 'cloneable' service. Task names functionality lost for the time being.  
3875 5707 d 3 h decky /trunk/kernel/generic/ remove platform dependent constructs from generic code  
3870 5708 d 11 h decky /trunk/kernel/generic/src/ add includes necessary for LOG macro  
3867 5709 d 9 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 5711 d 0 h rimsky /trunk/ Allow to suppress compilation of FB code on Sparc machines that do not have FB.  
3860 5716 d 9 h decky /trunk/kernel/generic/src/main/ add dot which will be erased  
3844 5719 d 1 h decky /trunk/ silent kernel console output when user space console is active  
3842 5719 d 4 h decky /trunk/kernel/generic/src/ make sys_klog atomic  
3840 5719 d 8 h decky /trunk/kernel/generic/src/main/ more decent kconsole output without stdin  
3828 5721 d 5 h decky /trunk/kernel/generic/src/main/ print numbers, not "llu"  
3819 5725 d 3 h jermar /trunk/ Introduce a new syscall: SYS_IPC_FORWARD_SLOW.  
3790 5742 d 11 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 5743 d 0 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 5751 d 3 h decky /trunk/ send notification to uspace console when switching from kernel console  
3750 5754 d 11 h svoboda /trunk/kernel/generic/ Add memmove() function to kernel.  
3734 5757 d 9 h decky /trunk/kernel/generic/src/proc/ coding style  
3707 5765 d 4 h decky /trunk/ kconsole is optional
kernel & uspace framebuffer rewrite with speedups (some things are slightly broken yet)
 
3683 5774 d 4 h svoboda /trunk/kernel/generic/ Rename udebug_thread_t.debug_active just to 'active'.  
3680 5774 d 9 h svoboda /trunk/kernel/generic/src/time/ Fix panic caused by NULL pointer dereference.  
3657 5781 d 10 h vana /trunk/ Legacy IRQ support, uspace NS16550 support, some minor changes  
3655 5782 d 2 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 5788 d 6 h vana /trunk/kernel/ Classic TLB shootdown support on ia64  
3620 5788 d 12 h svoboda /trunk/kernel/generic/ Move stuff related to kbox to a separate struct.  
3617 5789 d 6 h svoboda /trunk/kernel/generic/ Fix race that allowed Udebug to report THREAD_B events for threads already reported with THREAD_READ.  
3614 5789 d 11 h svoboda /trunk/kernel/generic/src/syscall/ Add another stopping point.  
3613 5789 d 11 h svoboda /trunk/kernel/generic/ Merge feature from tracing: correct stopping of CPU-intensive tasks in udebug.  
3604 5790 d 0 h svoboda /trunk/kernel/generic/ Get rid of int_lock from udebug_thread_t, as is flawed.  
3603 5790 d 0 h svoboda /trunk/ Stoppability sections must be much smaller (design error). Also fix deadlock in udebug_stop(). Fix pause functionality in tracer.  
3601 5790 d 8 h svoboda /trunk/kernel/generic/ Replace 'stop' in udebug_thread_t with 'go' for consistency with nomenclature.  
3600 5790 d 9 h svoboda /trunk/kernel/generic/ Udebug comments - 'is go', not 'has go'. Missing periods.  
3581 5800 d 0 h jermar /trunk/kernel/ Some cstyle.  
3578 5800 d 15 h vana /trunk/ Alfa of SMP support on IA64