Subversion Repositories HelenOS

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
4647 5644 d 22 h jermar /branches/arm/ Branch out a new arm branch.  
4267 5741 d 18 h svoboda /trunk/kernel/ str_ncpy() vs str_cpy(). TODO: The same in userspace.  
4220 5748 d 9 h decky /trunk/kernel/ update for string changes  
4207 5749 d 21 h svoboda /trunk/kernel/ strlen() -> str_size().  
4193 5751 d 22 h decky /trunk/kernel/genarch/src/multiboot/ more sanity checks  
4022 5778 d 19 h svoboda /trunk/ Move multiboot parsing to genarch/*/multiboot and adapt it for use with both ia32 and amd64. Multiboot info parsing now supported on amd64, too.  
4015 5779 d 4 h decky /trunk/kernel/arch/ia32/ rename ia32_cboot() to arch_pre_main() and move it to ia32.c (to be in line with other platforms)  
3982 5781 d 22 h jermar /trunk/kernel/ Do not set sysinfo for uspace drivers directly in the kernel drivers.  
3964 5786 d 3 h decky /trunk/kernel/ switch between the preference of kernel/uspace IRQ hash table  
3963 5788 d 1 h jermar /trunk/kernel/ The kernel i8042 driver should be instance-neutral.  
3947 5788 d 23 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
 
3932 5790 d 18 h jermar /trunk/kernel/ Kill arch/drivers/ega.h. Provide one-stop shopping
place for architectures with ia32 legacy I/O space.
 
3880 5797 d 21 h decky /trunk/kernel/arch/ simplify configuration
introduce arch_construct_function and inb/outb (sometimes empty) on all platforms
various code cleanup
 
3779 5837 d 3 h jermar /trunk/kernel/ Only one kernel EGA driver to rule them all.  
3707 5855 d 22 h decky /trunk/ kconsole is optional
kernel & uspace framebuffer rewrite with speedups (some things are slightly broken yet)
 
2725 6170 d 2 h decky /trunk/kernel/ remove config.memory_size, get_memory_size() and memory_init.{c|d}
the amount of available memory can be calculated from the sizes of the zones
add FRAMES2SIZE, SIZE2KB and SIZE2MB functions/macros (code readability)
 
2723 6171 d 1 h decky /trunk/kernel/arch/ remove memory_print_map(), as it duplicates functionality of physmem_print()  
2439 6420 d 19 h decky /trunk/kernel/arch/ia32/src/ fix ICC compilation  
2107 6537 d 19 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 6544 d 3 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2071 6554 d 20 h jermar /trunk/ (c) versus (C)  
1957 6637 d 4 h decky /trunk/kernel/ ia32: mouse support, mouse regrab is still broken  
1956 6637 d 5 h decky /trunk/kernel/ ia32: adopt new IRQ interface, mouse not tested yet  
1901 6668 d 1 h jermar /trunk/kernel/ Make SMP related parts of main.c more generic.
Move initialization of local APIC to architecture specific code.
Add arch_post_cpu_init() to support the above.
 
1888 6680 d 0 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1842 6716 d 3 h jermar /trunk/kernel/ i8042 and z8530 separated, the tree compiles again.
Now there is some duplicated code in i8042.c and z8530.c,
but that can be eliminated in slower pace.
 
1787 6744 d 22 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6751 d 23 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1705 6772 d 5 h cejka /kernel/trunk/ Added file with modules definitions and descriptions.
We are able to change modules order and their description in one place.
 
1704 6772 d 8 h cejka /kernel/trunk/ Fixed first letter size of subgroup name in Others.  
1702 6773 d 2 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1477 6785 d 11 h decky /kernel/trunk/arch/ cleanup  
1474 6785 d 18 h palkovsky /kernel/trunk/ Added syscall that lets kernel regain access to keyboard.  
1473 6785 d 21 h decky /kernel/trunk/ kernel support for text-only framebuffer  
1303 6807 d 22 h palkovsky /kernel/trunk/arch/ zone_merge_all must be called after frame_init is completed - otherwise
new zone information can be allocated over the not-yet-blacklisted areas.
 
1287 6812 d 6 h vana /kernel/trunk/ ia32 VESA FB support  
1184 6834 d 2 h jermar /kernel/trunk/ Move arch/thread.h to arch/proc/thread.h on all architectures.
Replace ARCH_THREAD_DATA with new thread_arch_t arch on all architectures.
Similarily, add task_arch_t arch on all architectures.
On amd64 and ia32, grow the TSS segment by 64K + 1B to support IO port
permission bitmap. For the same reason, define per task IO port permission bitmaps
on ia32 and amd64.
 
1121 6854 d 19 h jermar /kernel/trunk/ Small textual changes.  
1119 6854 d 19 h palkovsky /kernel/trunk/arch/ Fixed bad rflags masking in amd64.
Added TLS get address instruction emulation for mips.
 
1112 6855 d 6 h palkovsky /kernel/trunk/ Added basic kernel infrastructure for ThreadLocalStorage(TLS) for
ia32(complete),amd64(complete),mips32(missing emulation of rdhwr instruction).