Commit graph

163 commits

Author SHA1 Message Date
Stefan Lankes
3a0e42eef1 add ping pong test and some bug fixes in the ICC part 2011-04-24 07:27:27 -07:00
Stefan Lankes
29ab43f289 First steps to realize Inter-Core-Communication via RCCE 2011-04-23 00:13:12 -07:00
Stefan Lankes
900c67c2a0 remove obsolete flags 2011-04-22 09:31:33 +02:00
Stefan Lankes
ea4a7477c5 set CR0's MP flag to monitor the coprocessor 2011-04-21 19:46:55 +02:00
Stefan Lankes
a563c756ee fix bug in the setup of the caching strategy 2011-04-21 09:33:49 -07:00
Stefan Lankes
f3b620a9be add rudimental support of the system call times
- no full support of the POSIX API
- however, the libc function clock works correctly
2011-04-21 10:13:58 +02:00
Stefan Lankes
0c411fd702 add basic support of sbrk and fix bug in saving of the fpu context 2011-04-21 07:32:20 +02:00
Stefan Lankes
7cb05d8f4a first version to support the FPU
- seems to work
- currently, we didn't support SIMD instructions
2011-04-21 07:32:10 +02:00
Stefan Lankes
d8ad0b8dce add space to store the FPU context 2011-04-21 07:31:46 +02:00
Jacek Galowicz
a9c4b5ddc0 Encapsulated IDT-/GDT-descriptor configuring code into helper functions. 2011-04-21 07:31:45 +02:00
Stefan Lankes
23313590be use logical operations instead of / and % to increase the performance 2011-04-21 07:31:45 +02:00
Stefan Lankes
145c2e91be enables runtime debug messages for RCCE library calls 2011-04-21 07:31:45 +02:00
Stefan Lankes
ed22678011 add code to initialize (i)RCCE and to test RCCE 2011-04-21 07:31:44 +02:00
Stefan Lankes
373d663fd0 add iRCCE code 2011-04-21 07:31:38 +02:00
Stefan Lankes
4fc507bc6b fix bug in the TSS initialization for a new task, which is a copy of the current task 2011-04-18 12:18:59 -07:00
Stefan Lankes
68564c3238 Merge branch 'tests'
Conflicts:
	include/metalsvm/spinlock.h
	include/metalsvm/spinlock_types.h
	kernel/tasks.c
2011-04-18 15:36:22 +02:00
Stefan Lankes
68281c8ad0 cosmetic changes, minor code optimization 2011-04-18 15:10:24 +02:00
Stefan Lankes
47f37e3b00 use memory barriers instead of read memory barriers to determine the current TSC
=> more accurate caclculation of the timer frequency
+ minor cosmetic changes
2011-04-18 15:07:45 +02:00
Stefan Lankes
624afd187c by entering a system call, we need also to push the segment descriptor on the stack 2011-04-18 15:05:27 +02:00
Stefan Lankes
04a0dfb114 enable the support of the system call "fork"
remove obsolete file
2011-04-18 15:03:35 +02:00
Jacek Galowicz
b9b7841dc3 Moved IDT related structs from idt.c to idt.h. 2011-04-15 15:08:41 +02:00
Stefan Lankes
02cf1d87f2 resolve some merge conflicts 2011-04-14 08:58:07 +02:00
Stefan Lankes
b5908af744 Merge branch 'master' of git.lfbs.rwth-aachen.de:metalsvm into doxygen
Conflicts:
	.gitignore
	arch/x86/include/asm/apic.h
	arch/x86/include/asm/page.h
	arch/x86/include/asm/processor.h
	arch/x86/kernel/idt.c
2011-04-14 08:40:52 +02:00
Stefan Lankes
eeb49cdb90 add the SCC support of a initial ramdisk 2011-04-13 11:03:34 -07:00
Stefan Lankes
12fb2a60f2 create a dynamic region, which specifies the boot parameters 2011-04-13 07:04:50 -07:00
Stefan Lankes
0fbf2df5ac use inline assembler to load the IDT 2011-04-08 10:45:26 -07:00
Stefan Lankes
ba1388c13d Merge branch 'master' of git.lfbs.rwth-aachen.de:metalsvm into rcce 2011-04-08 07:26:55 -07:00
Stefan Lankes
e3e06fe523 set APICID of the boot processor to 0 2011-04-08 16:02:29 +02:00
Stefan Lankes
92c5917ef4 add support to map kernel pages above 1GB 2011-04-08 16:02:29 +02:00
Stefan Lankes
ab78beb859 cosemtic changes 2011-04-08 16:02:28 +02:00
Stefan Lankes
8868900e19 redesign of nested if flag handling
=> only clearing and setting of the IF flag
2011-04-08 16:02:28 +02:00
Stefan Lankes
1ff9c397a9 fix bug in the debug messages 2011-04-08 16:02:08 +02:00
Stefan Lankes
ea5b7e4930 reset APIC before timer initialization 2011-04-08 16:02:01 +02:00
Stefan Lankes
e96a549349 more accurate calculation of the processor frequency 2011-04-08 16:01:54 +02:00
Stefan Lankes
030243f200 introduce the hlt instruction 2011-04-08 16:01:44 +02:00
Stefan Lankes
6b86f3c572 add the address of error status register 2011-04-08 16:01:36 +02:00
Stefan Lankes
683f8cca1e add macro to simplify the using of th hlt instruction 2011-04-06 05:38:44 -07:00
Stefan Lankes
f0e4a2b833 add the support of the memory type MPBT
=> seesection "10.1.2 Internal Cache Changes" of SCC External Architecture Specification (R1.1)
2011-04-05 23:43:44 -07:00
Stefan Lankes
e599063dd2 cosmetic changes 2011-04-05 11:37:20 +02:00
Stefan Lankes
b46664b375 increasing the readability 2011-04-05 11:33:41 +02:00
Stefan Lankes
e8abd6f336 minor improvements and cosmetic changes to increase the readability 2011-04-05 02:00:02 -07:00
Stefan Lankes
9918db81ec fix bugs in initialization of RCCE
at first, we have to enable paging and to disable caching for the configuration registers
2011-04-05 01:55:02 -07:00
Jacek Galowicz
f411498368 Commented another bunch of header files. 2011-04-04 18:12:08 +02:00
Jacek Galowicz
dfe2c817de Continued the small documentation journey.
Edited Doxyfile - will show static functions and vars now, because some
of them were interesting for documentation.
2011-04-04 11:27:49 +02:00
Jacek Galowicz
60fd07542f Documented GDT and IDT files and optimized doxygen-output by fixing
__attribute__ misparsings as structure names
2011-04-03 20:46:53 +02:00
Jacek Galowicz
6a9ca105f1 recently forgot to document page flags. This commit catches up. 2011-04-03 18:58:01 +02:00
Jacek Galowicz
1581d3e075 Added a doxyfile and documented arch/x86/include/asm/page.h 2011-04-01 20:13:26 +02:00
Stefan Lankes
3729433b37 Fix bug in wrong using of synchronisation primitives
=> reported by Jacek...
2011-04-01 19:33:41 +02:00
Stefan Lankes
27ddfb29e6 set default frequency to 533 MHz 2011-04-01 00:26:14 -07:00
Stefan Lankes
f14c693e10 fix bug in the routine, which calculates the apic timer frequecy 2011-04-01 00:24:03 -07:00