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
4687 5424 d 10 h jermar /tags/0.4.1/ Tag 0.4.1  
4267 5540 d 8 h svoboda /trunk/kernel/ str_ncpy() vs str_cpy(). TODO: The same in userspace.  
4220 5546 d 23 h decky /trunk/kernel/ update for string changes  
4207 5548 d 12 h svoboda /trunk/kernel/ strlen() -> str_size().  
4193 5550 d 12 h decky /trunk/kernel/genarch/src/multiboot/ more sanity checks  
4022 5577 d 10 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 5577 d 18 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 5580 d 12 h jermar /trunk/kernel/ Do not set sysinfo for uspace drivers directly in the kernel drivers.  
3964 5584 d 18 h decky /trunk/kernel/ switch between the preference of kernel/uspace IRQ hash table  
3963 5586 d 15 h jermar /trunk/kernel/ The kernel i8042 driver should be instance-neutral.  
3947 5587 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
 
3932 5589 d 9 h jermar /trunk/kernel/ Kill arch/drivers/ega.h. Provide one-stop shopping
place for architectures with ia32 legacy I/O space.
 
3880 5596 d 11 h decky /trunk/kernel/arch/ simplify configuration
introduce arch_construct_function and inb/outb (sometimes empty) on all platforms
various code cleanup
 
3779 5635 d 17 h jermar /trunk/kernel/ Only one kernel EGA driver to rule them all.  
3707 5654 d 12 h decky /trunk/ kconsole is optional
kernel & uspace framebuffer rewrite with speedups (some things are slightly broken yet)
 
2725 5968 d 17 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 5969 d 15 h decky /trunk/kernel/arch/ remove memory_print_map(), as it duplicates functionality of physmem_print()  
2439 6219 d 10 h decky /trunk/kernel/arch/ia32/src/ fix ICC compilation  
2107 6336 d 10 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 6342 d 18 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2071 6353 d 10 h jermar /trunk/ (c) versus (C)  
1957 6435 d 19 h decky /trunk/kernel/ ia32: mouse support, mouse regrab is still broken  
1956 6435 d 20 h decky /trunk/kernel/ ia32: adopt new IRQ interface, mouse not tested yet  
1901 6466 d 16 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 6478 d 14 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1842 6514 d 18 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 6543 d 13 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6550 d 14 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1705 6570 d 20 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 6570 d 23 h cejka /kernel/trunk/ Fixed first letter size of subgroup name in Others.  
1702 6571 d 17 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1477 6584 d 2 h decky /kernel/trunk/arch/ cleanup  
1474 6584 d 9 h palkovsky /kernel/trunk/ Added syscall that lets kernel regain access to keyboard.  
1473 6584 d 11 h decky /kernel/trunk/ kernel support for text-only framebuffer  
1303 6606 d 13 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 6610 d 21 h vana /kernel/trunk/ ia32 VESA FB support  
1184 6632 d 17 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 6653 d 10 h jermar /kernel/trunk/ Small textual changes.  
1119 6653 d 10 h palkovsky /kernel/trunk/arch/ Fixed bad rflags masking in amd64.
Added TLS get address instruction emulation for mips.
 
1112 6653 d 21 h palkovsky /kernel/trunk/ Added basic kernel infrastructure for ThreadLocalStorage(TLS) for
ia32(complete),amd64(complete),mips32(missing emulation of rdhwr instruction).