Subversion Repositories HelenOS

Rev

Go to most recent revision | Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
3947 5636 d 20 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 5637 d 16 h jermar /trunk/kernel/ Let IRQ claim methods take irq_t * instead of the instance argument.  
3940 5637 d 20 h decky /trunk/kernel/ make hw_area API more generic
this allows mapping of EGA VRAM on ia32/amd64
 
3930 5638 d 15 h jermar /trunk/kernel/ Adapt most of the kernel to ioport8_t, ioport16_t and ioport32_t types.  
3913 5640 d 23 h decky /trunk/ mips32: basic SMP support  
3908 5641 d 19 h decky /trunk/ overhaul pareas: use one single physical area for the physical address space not belonging to physical memory  
3906 5642 d 14 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 5642 d 22 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 5643 d 13 h svoboda /trunk/ More elegant way of invoking the loader - as a 'cloneable' service. Task names functionality lost for the time being.  
3875 5645 d 17 h decky /trunk/kernel/generic/ remove platform dependent constructs from generic code  
3870 5647 d 1 h decky /trunk/kernel/generic/src/ add includes necessary for LOG macro  
3867 5648 d 0 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 5649 d 15 h rimsky /trunk/ Allow to suppress compilation of FB code on Sparc machines that do not have FB.  
3860 5655 d 0 h decky /trunk/kernel/generic/src/main/ add dot which will be erased  
3844 5657 d 16 h decky /trunk/ silent kernel console output when user space console is active  
3842 5657 d 19 h decky /trunk/kernel/generic/src/ make sys_klog atomic  
3840 5657 d 23 h decky /trunk/kernel/generic/src/main/ more decent kconsole output without stdin  
3828 5659 d 20 h decky /trunk/kernel/generic/src/main/ print numbers, not "llu"  
3819 5663 d 17 h jermar /trunk/ Introduce a new syscall: SYS_IPC_FORWARD_SLOW.  
3790 5681 d 1 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 5681 d 14 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 5689 d 17 h decky /trunk/ send notification to uspace console when switching from kernel console  
3750 5693 d 2 h svoboda /trunk/kernel/generic/ Add memmove() function to kernel.  
3734 5695 d 23 h decky /trunk/kernel/generic/src/proc/ coding style  
3707 5703 d 18 h decky /trunk/ kconsole is optional
kernel & uspace framebuffer rewrite with speedups (some things are slightly broken yet)
 
3683 5712 d 19 h svoboda /trunk/kernel/generic/ Rename udebug_thread_t.debug_active just to 'active'.  
3680 5713 d 0 h svoboda /trunk/kernel/generic/src/time/ Fix panic caused by NULL pointer dereference.  
3657 5720 d 1 h vana /trunk/ Legacy IRQ support, uspace NS16550 support, some minor changes  
3655 5720 d 17 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 5726 d 21 h vana /trunk/kernel/ Classic TLB shootdown support on ia64  
3620 5727 d 2 h svoboda /trunk/kernel/generic/ Move stuff related to kbox to a separate struct.  
3617 5727 d 20 h svoboda /trunk/kernel/generic/ Fix race that allowed Udebug to report THREAD_B events for threads already reported with THREAD_READ.  
3614 5728 d 2 h svoboda /trunk/kernel/generic/src/syscall/ Add another stopping point.  
3613 5728 d 2 h svoboda /trunk/kernel/generic/ Merge feature from tracing: correct stopping of CPU-intensive tasks in udebug.  
3604 5728 d 15 h svoboda /trunk/kernel/generic/ Get rid of int_lock from udebug_thread_t, as is flawed.  
3603 5728 d 15 h svoboda /trunk/ Stoppability sections must be much smaller (design error). Also fix deadlock in udebug_stop(). Fix pause functionality in tracer.  
3601 5728 d 23 h svoboda /trunk/kernel/generic/ Replace 'stop' in udebug_thread_t with 'go' for consistency with nomenclature.  
3600 5728 d 23 h svoboda /trunk/kernel/generic/ Udebug comments - 'is go', not 'has go'. Missing periods.  
3581 5738 d 15 h jermar /trunk/kernel/ Some cstyle.  
3578 5739 d 5 h vana /trunk/ Alfa of SMP support on IA64