Rev |
Age |
Author |
Path |
Log message |
Diff |
414 |
6879 d 17 h |
jermar |
/SPARTAN/trunk/ |
Create generic context_save() and context_restore().
These two functions are defined inline and only call context_save_arch() and context_restore_arch(), respectively.
The main purpose of this is to enable centralized commenting of these important and tricky functions. |
|
413 |
6880 d 3 h |
jermar |
/SPARTAN/trunk/ |
Rename cpu_priority_{high|low|restore|read} functions to interrupts_{disable|enable|restore|read}.
Rename pri_t to ipl_t (Interrupt Priority Level).
Rename thread_t::pri to thread_t::priority. |
|
403 |
6887 d 6 h |
jermar |
/SPARTAN/trunk/arch/ |
Small improvement in pte_t type definition. |
|
402 |
6887 d 15 h |
jermar |
/SPARTAN/trunk/ |
Add ALIGN() macro.
Fix usage of early_mapping() in main.c.
The previous version would not map part of the heap.
Please, review. |
|
354 |
6909 d 12 h |
jermar |
/SPARTAN/trunk/ |
Physical memory management work.
Define structures for frame zones and frames.
Add some comments. |
|
322 |
6919 d 4 h |
jermar |
/SPARTAN/trunk/arch/ia64/ |
Reduce IA-64 context_t according to IA-64 ABI.
Make IA-64 port compile again. |
|
180 |
6929 d 6 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 |
6933 d 5 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. |
|
97 |
7025 d 14 h |
jermar |
/SPARTAN/trunk/ |
Add context_set() macro to support extended behaviour for architectures with more than one stack (e.g. IA-64).
Now there is one generic context_set() defined in include/context.h and one IA-64 specific defined in arch/ia64/include/context.h. |
|
94 |
7030 d 5 h |
jermar |
/SPARTAN/trunk/ |
IA-64 work.
Add application registers ar.lc, ar.ec, ar.ccv, ar.csd, ar.ssd to context_t.
Add store/load operations for ar.lc, ar.ec, ar.ccv, ar.csd, ar.ssd to context_save()/restore().
Add application registers ar.rcs, ar.bsp and ar.rnat to context_t.
Proper store/load operations for ar.rcs, ar.bsp and ar.rnat is in the works.
FPU cleanup.
Remove call set_TS_flag() from cpu_identify().
Remove unneeded includes from FPU test #1. |
|
83 |
7032 d 10 h |
jermar |
/SPARTAN/trunk/arch/ia64/ |
IA-64 work.
Add ar.pfs and ar.unat (caller and callee) application registers to context_t.
Change st8/ld8 instructions on general registers to st8.spill and ld8.fill instructions. |
|
82 |
7033 d 4 h |
jermar |
/SPARTAN/trunk/arch/ |
IA-64 work.
Add the rest of branch registers to context_t.
Add predicate registers to context_t.
Modify context_save()/context_restore() to save/restore branch registers and predicate registers.
Change SP_DELTA to 0 since both context_save() and context_restore() are leaf procedures and as such don't use the scratch area.
Change pri_t to be __u64 instead of __u32. |
|
81 |
7033 d 6 h |
jermar |
/SPARTAN/trunk/ |
Add SP_DELTA macro for each architecture.
On IA-32, this macro represents two doublewords that must be on the stack when switching to a new stack.
On MIPS, there is no need to fix sp when switching to a new stack.
On IA-64, this macro is used to allocate the 16-byte scratch area.
IA-64 work.
Changes in start.S. More changes to come.
Define memcopy().
Janitorial fixes.
Add missing #include <panic.h> to rwlock4/test.c.
Remove wrong use of inline keyword from both declaration and definition of l_apic_id(). |
|
59 |
7040 d 2 h |
jermar |
/SPARTAN/trunk/ |
Move architecture independent memcopy() and memsetb() out of MIPS subtree and place them in src/lib/ as _memcopy() and _memsetb().
Add MIPS native memsetb().
Add IA-64 native memcpy().
More complete and *almost* functional versions of IA-64 context_save() and context_restore(). |
|
56 |
7042 d 3 h |
vana |
/SPARTAN/trunk/ |
Added fpu_context.h arch dep files and removed struct fpu_context from context.h files |
|
51 |
7042 d 7 h |
jermar |
/SPARTAN/trunk/ |
Small changes, fix last few wrong indentations.
TODO cleanup.
IA-64 bits.
Call main_bsp from kernel_image_start().
Prepare for IA-64 context_save and context_restore. |
|
45 |
7042 d 16 h |
vana |
/SPARTAN/trunk/ |
Added fpu_context_t type.
IA-32's version of this type contains array of 512 bytes to be used by FXSAVE ... instructions. |
|
35 |
7049 d 15 h |
jermar |
/SPARTAN/trunk/ |
Early support for IA-64 architecture. |
|