Rev |
Age |
Author |
Path |
Log message |
Diff |
4638 |
5515 d 20 h |
rimsky |
/branches/sparc/kernel/ |
SMP on Niagara made working: debugged the problem with the 'non-deterministic' symptoms, implemented the IPI mechanism. |
|
4614 |
5522 d 17 h |
rimsky |
/branches/sparc/kernel/arch/sparc64/ |
Waking CPUs up on sun4v. Weird errors occur when accessing the THE structure. |
|
4433 |
5562 d 18 h |
rimsky |
/branches/sparc/kernel/arch/sparc64/ |
Fixed a TSB problem. |
|
4383 |
5575 d 22 h |
rimsky |
/branches/sparc/kernel/arch/sparc64/ |
Fixed instruction access exception and data access exception in the trap table. Added new traps defined by UltraSPARC Architecture 2007 (which UltraSPARC T2 follows). |
|
4369 |
5579 d 16 h |
rimsky |
/branches/sparc/kernel/arch/sparc64/ |
Kernel stack and userspace window buffer pointers are stored in scratchpad registers instead of memory. |
|
4130 |
5635 d 16 h |
rimsky |
/branches/sparc/ |
Cleanup of the Niagara port. The main purpose of these changes is to make it easy to find out which code is generic, which is sun4u-specific and which is sun4v-specific. |
|
4129 |
5636 d 12 h |
rimsky |
/branches/sparc/kernel/arch/sparc64/ |
Implemented missing features in Niagara memory management, minor cleanup. |
|
4073 |
5638 d 16 h |
rimsky |
/branches/sparc/ |
Implemented input and output drivers for Niagara. Written in the old-fashion style (do not use the new DDI infrastructure nor the new keyboard driver). Anyway, tetris can be played. |
|
4068 |
5640 d 14 h |
rimsky |
/branches/sparc/kernel/arch/sparc64/src/trap/sun4v/ |
Fixed a stupid bug. |
|
4065 |
5641 d 14 h |
rimsky |
/branches/sparc/kernel/arch/sparc64/src/ |
minor cleanup |
|
4064 |
5641 d 14 h |
rimsky |
/branches/sparc/kernel/arch/sparc64/src/trap/sun4v/ |
Workaround for the bug which usually caused rewriting saved register window data on the uspace stack. More investigation needed. |
|
3993 |
5648 d 13 h |
rimsky |
/branches/sparc/kernel/ |
Implemented preemptible trap handler for userspace (including syscalls - did not forget enabling interrupts for them) and the ralated stuff. Implemented handlers of instruction/data MMU miss/protection. Now some userspace tasks are run; there are, however, still some bugs causing unexpected data MMU misses. |
|
3864 |
5669 d 14 h |
rimsky |
/branches/sparc/kernel/arch/sparc64/src/sun4v/ |
Allocated bigger memory block for the Machine Description. This was the problem which prevented running HelenOS on real Niagara. Now all kernel tests except for 'slab2' pass on real Niagara. |
|
3863 |
5670 d 13 h |
rimsky |
/branches/sparc/ |
Simics machine: modifications needed to run userspace (the next step will be to implement the trap handler for uspace); real machine: small fixes, after them the machine passes some parts of the initialization, but fails to determine CPU frequency (probably due to a different format of Machine Description). |
|
3862 |
5673 d 14 h |
rimsky |
/branches/sparc/kernel/ |
Changed the structure of header files, which have sun4u and sun4v versions. Implemented some sun4v TSB functions. |
|
3835 |
5678 d 13 h |
rimsky |
/branches/sparc/kernel/arch/sparc64/ |
Niagara: Implemented (and debugged) installing identity mapping for kernel. Now all the kernel tests pass on Simics. |
|
3817 |
5686 d 13 h |
rimsky |
/branches/sparc/kernel/ |
Progress on Niagara: Commented out portions of mm, which are not required for kernel threads (temporarily). Scheduler is working. Implemented a driver of hypervisor's standard input. Kernel console is usable. |
|
3801 |
5690 d 15 h |
rimsky |
/branches/sparc/kernel/arch/sparc64/src/trap/sun4v/ |
Minor fixes in the preemptible trap handler. |
|
3798 |
5691 d 14 h |
rimsky |
/branches/sparc/kernel/ |
Implemented preemptible trap handler for sun4v for trapping from kernel (not userspace). Not properly tested/debugged yet. HelenOS now reaches the as_install_arch function (where it, of course, fails). |
|
3783 |
5703 d 14 h |
rimsky |
/branches/sparc/kernel/arch/sparc64/ |
Machine description traversal implemented. Now used to detect CPU frequency. |
|