Subversion Repositories HelenOS

Rev

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

Filtering Options

Rev Age Author Path Log message Diff
4647 5642 d 0 h jermar /branches/arm/ Branch out a new arm branch.  
4272 5734 d 22 h jermar /trunk/ Prevent optimizing ia64's PIO away.
This solves the frequent hangs of HelenOS/ia64 in i8042_init().
 
4028 5775 d 2 h jermar /trunk/ Fix typo.  
4021 5775 d 22 h jermar /trunk/kernel/ There is no need to define ioport{8,16,32}_t types for each architecture separately.  
3929 5787 d 21 h jermar /trunk/kernel/arch/ Introduce ioport8_t, ioport16_t and ioport32_t. These types are to be used with
pio_read_n() and pio_write_n() functions. This breaks everything.
 
3902 5792 d 3 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.
 
3880 5794 d 23 h decky /trunk/kernel/arch/ simplify configuration
introduce arch_construct_function and inb/outb (sometimes empty) on all platforms
various code cleanup
 
3779 5834 d 5 h jermar /trunk/kernel/ Only one kernel EGA driver to rule them all.  
3774 5835 d 3 h jermar /trunk/kernel/arch/ia64/include/ More of ia64 cleanup.  
3577 5888 d 11 h vana /trunk/kernel/ Support for serial port console on IA64 as a compensation for keyboard - based on SPARC ns16550 driver  
3490 5919 d 1 h vana /trunk/kernel/arch/ia64/include/ Macro naming correction  
2726 6164 d 8 h vana /trunk/ Basic IA64 boot and kernel suport for real machines  
2515 6316 d 22 h vana /trunk/kernel/arch/ia64/include/ IA64 legacy I/O  
2082 6547 d 6 h decky /trunk/ __asm__ __volatile__ -> asm volatile  
2071 6551 d 22 h jermar /trunk/ (c) versus (C)  
1888 6677 d 2 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1787 6742 d 0 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6749 d 2 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1708 6767 d 8 h jermar /kernel/trunk/ Fix some broken doxygen comments.  
1702 6770 d 4 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1488 6782 d 1 h vana /kernel/trunk/arch/ia64/include/ Lost file  
1078 6858 d 1 h jermar /kernel/trunk/ Improved uspace threads.
ia64 needs fixing.
 
919 6866 d 6 h jermar /kernel/trunk/ ia64 work.
Changes to make userspace work (kernel part).
Use ski.conf from contrib directory to run Ski.

There is actually no appropriate syscall handler yet.
 
747 6907 d 20 h jermar /kernel/trunk/ ia64 work.
Add nice wrappers for thash and ttag instructions.
Add nice wrappers for accessing reion registers and PTA.
Fix set_vhpt_environment().
Allocate and initialize page_ht (a.k.a. VHPT).

Add missing header to sparc64.
Remove excessive header from debug.h.
 
746 6908 d 5 h jermar /kernel/trunk/ Page hash table modifications.  
534 6960 d 23 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6960 d 23 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
501 6973 d 4 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
472 6986 d 4 h jermar /SPARTAN/trunk/ Changes in build system.
For .S targets, always do -D__ASM__.
Remove unnecessary #define __ASM__ from various *.S files.
At the end of build, generate disassembler dump for kernel.raw.

ia64 work.
Better General Exception handler.
 
470 6986 d 17 h jermar /SPARTAN/trunk/ ia64 work.
Big cleanup of IA-64 interrupt processing.
Merge of interrupt.c and interrupt_handler.c.
Rewrite of ivt.S and interrupt.c.
Higher level interrupt handlers are now passed a vector number and a pointer to stack structure.

ia32 work.
ia32 has ordered writes. Until it deploys weaker memory ordering model, write_barrier() can be empty statement.
 
433 6991 d 21 h jermar /SPARTAN/trunk/arch/ia64/ ia64 work.
Fix definition of __u32.
Add more register manipulation functions.
Add unions describing bit-structured registers.
Distinguish between timer, unhandled and spurious external interrupts.
Initialize interval timer to generate first timer interrupt.
 
432 6991 d 22 h jermar /SPARTAN/trunk/arch/ IA-64 work.
Add some asm functions for manipulation with PSR, AR and CR registers.
 
431 6992 d 7 h jermar /SPARTAN/trunk/arch/ IA-64 work.
Exclude external interrupt from universal_handler() scope.
 
272 7053 d 1 h vana /SPARTAN/trunk/arch/ia64/ Symtab support for ia64  
238 7055 d 1 h vana /SPARTAN/trunk/ Register dump on IA-64 exceptions  
195 7056 d 23 h vana /SPARTAN/trunk/ 1) memcopy and _memcopy functions rewriten to ANSI C norm.
2) Repaired ia32,ia64 and mips version of SPARTAN to work with this memcopy functions
3) Warning for non declared funcions added and repaired ia32,ia64 and mips versions to pass build process with this warning and Werror option
 
180 7057 d 22 h jermar /SPARTAN/trunk/ Globalize 'size' and 'delta' and rename them to 'kernel_size' and 'heap_delta'.

Fix heap initialization to take 'heap_delta' into account.

Implement IA-64 get_stack_base().

Adjust SP_DELTA's to consider one extra word on stack.
(So that the stack pointer is within appropriate limits even on IA-64).

More #include cleanup.
 
173 7061 d 22 h jermar /SPARTAN/trunk/ Preparations for weaker preemption model.
Make all kernel stacks (i.e. startup, scheduler and thread) be STACK_SIZE bytes long.
Reincarnate "the" structure. This time, it is planned to be located at the base of each and every kernel stack.
On IA-32 and MIPS, implement get_stack_base() functions. On the rest of supported platforms, define it to be dummy.
 
35 7178 d 8 h jermar /SPARTAN/trunk/ Early support for IA-64 architecture.