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
4021 5725 d 10 h jermar /trunk/kernel/ There is no need to define ioport{8,16,32}_t types for each architecture separately.  
3953 5735 d 9 h jermar /trunk/kernel/arch/mips32/include/ Add missing PIO functions for mips32.  
3929 5737 d 8 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.
 
3913 5739 d 16 h decky /trunk/ mips32: basic SMP support  
3902 5741 d 15 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 5744 d 10 h decky /trunk/kernel/arch/ simplify configuration
introduce arch_construct_function and inb/outb (sometimes empty) on all platforms
various code cleanup
 
2089 6490 d 17 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2082 6496 d 17 h decky /trunk/ __asm__ __volatile__ -> asm volatile  
2071 6501 d 9 h jermar /trunk/ (c) versus (C)  
1888 6626 d 13 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1881 6628 d 17 h jermar /trunk/ sparc64 work:
- find a CPU node and read its clock_frequency attribute
- implement asm_delay_loop()
- set TICK_COMPARE register according to processor frequency
- small improvements at random places

OpenFirmware work:
- two new functions for walking the device tree

Generic boot loader work:
- added basic string functions

Usual pile of indentation and formatting fixes.
 
1787 6691 d 12 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6698 d 13 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1769 6701 d 8 h jermar /kernel/trunk/arch/ Change cache_error exception to take istate * as a parameter.
Make cache_error() print epc in the panic message.
Do not rely on the compiler to generate 'nop' after 'beq' in atomic_add()
and put it there explicitly.
Indentation fixes and cosmetic changes.
 
1702 6719 d 16 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1122 6801 d 5 h palkovsky /kernel/trunk/arch/mips32/ Set up T9 to entry point on entry to userspace to facilitate better
PIC running.
 
1078 6807 d 12 h jermar /kernel/trunk/ Improved uspace threads.
ia64 needs fixing.
 
534 6910 d 10 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6910 d 11 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
501 6922 d 15 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
341 6993 d 16 h jermar /SPARTAN/trunk/ Rename mips port to mips32.  
326 6996 d 5 h palkovsky /SPARTAN/trunk/ Cleanup of makefiles to have common options in one main makefile.

Add simple build process for different simulators for MIPS.
Added FPU context & lazy FPU context switching to MIPS.
Cleanup of MIPS linker script.
Moved MIPS kernel above 1MB. Not tested on real machine yet, but it might help.

There is something broken with gcc inlined memcpy (either simulator or gcc), it is disabled on BigEndian mips now.
 
319 6998 d 20 h jermar /SPARTAN/trunk/arch/mips/ Copyright notices changes.  
313 6999 d 7 h palkovsky /SPARTAN/trunk/arch/ MIPS bug fixes.
Added usermode to MIPS, unfortunately impossible to test until
MM is ready.
 
256 7002 d 21 h decky /SPARTAN/trunk/arch/mips/include/ fix MIPS build error  
195 7006 d 10 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 7007 d 9 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 7011 d 9 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.
 
1 7199 d 12 h jermar /SPARTAN/ Initial import