Commit graph

141 commits

Author SHA1 Message Date
stefan
0419142d83 - add an inline C function for the assembler operation CL1FLUSHMB
- works only on the SCC


git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@269 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-24 22:00:03 +00:00
stefan
6346f54594 - redesign of the function cpuid to avoid unintentional overriding of registers
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@268 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-24 19:05:04 +00:00
stefan
94ae01747c - avoid needless using of reschedule
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@267 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-24 19:00:46 +00:00
stefan
d741ef36c8 - now, get_cpu_frequency returns MHz instead of Hz
- more suitable for future architecture


git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@266 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-24 18:58:42 +00:00
stefan
a0acab9861 - use %u instead of %d to print the processor frequency
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@255 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-14 10:38:31 +00:00
stefan
3683e9c84c - use uint32_t instead of an int to detect the processor frequency
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@254 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-13 13:04:57 +00:00
stefan
3ed27e697d - add some comments
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@236 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-05 06:51:19 +00:00
stefan
02ffdc2796 - add special memcpy functions for the RockCreek processor (aka SCC)
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@235 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-05 06:14:51 +00:00
stefan
b78b2349eb - add some error checks
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@234 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-05 06:07:39 +00:00
stefan
c8c3035a4d - complete redesign of the APIC code
- MetalSVM detects the APIC and initializes the APIC timer
- If an a APIC is available, the PIC timer will be disabled
- SMP is currently not supported



git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@233 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-04 20:15:39 +00:00
stefan
141c2c194e - add a unique build number
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@227 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-04 08:27:53 +00:00
stefan
8b725cd6d8 - add some NOPs in an endless loop
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@215 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-10-28 13:15:04 +00:00
stefan
e723234595 - substantiate the NOTICE file
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@214 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-10-28 07:11:05 +00:00
stefan
3570166889 - add missing file apic.h
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@208 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-10-27 10:18:46 +00:00
stefan
94406fc740 automatic creation of a seperate file, which includes all debug symbols
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@207 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-10-27 05:57:39 +00:00
stefan
9cbe8781b2 - add implementation of ksprintf and ksnprintf
- remove some typos


git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@201 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-10-26 08:09:43 +00:00
stefan
6baf5119fb - add some comments
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@200 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-10-25 17:11:46 +00:00
stefan
e527a3ccb6 - switched to an ELF kernel
- simplified the linker script


git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@199 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-10-25 17:10:16 +00:00
stefan
1a4eb2ff5c - add compiler flag -march=i386
- this flags avoids the generation of SSE or MMX code


git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@198 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-10-25 17:02:06 +00:00
stefan
ae16dc414b - remove some typos in the comments
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@197 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-10-25 16:59:23 +00:00
stefan
08cbc0a257 - add the first steps to support the (local and IO) APIC
- remove some typos in the comments


git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@196 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-10-25 16:58:31 +00:00
stefan
01ff479e11 - remove some typos in the comments
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@195 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-10-25 16:56:27 +00:00
stefan
d66ac69333 - use "add esp,4" to remove the last element on the stack
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@186 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-10-20 15:39:36 +00:00
stefan
b0e600da99 - prepare MetalSVM for multicore environments
- create the variable current_task on each core


git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@159 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-12 14:45:03 +00:00
stefan
c4ed163f9d - cosmetic changes
- use inline functions instead of macros


git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@158 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-11 11:29:30 +00:00
stefan
17c61b4a23 - update of the example files
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@157 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-10 22:24:02 +00:00
stefan
81df510743 - add comments
- use readable macros instead of constants
- use the same error number like newlib


git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@156 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-10 22:18:55 +00:00
stefan
c882b28f03 - remove unused variable
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@155 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-09 05:58:57 +00:00
stefan
9d4971226f - add compiler options "-fno-zero-initialized-in-bss" to put all 0-initialized elements into the .data section
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@154 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-08 18:10:36 +00:00
stefan
b058e19f47 - remove typo
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@153 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-08 12:16:39 +00:00
stefan
0f72be1a9e - simplifies the array intialization
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@152 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-08 12:11:11 +00:00
stefan
ef1abb5612 - simplify the array intialization
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@151 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-08 12:07:42 +00:00
stefan
806ad22a8a - remove bug
- the function timer_set_frequency ignored its parameter


git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@150 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-08 08:36:02 +00:00
stefan
a75d5932e5 - add kflush to force all write operations
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@149 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-08 07:23:36 +00:00
stefan
794dde279a - remove obsolete liness
- remove typos
- add comments



git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@148 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-08 07:12:54 +00:00
stefan
e7865175bd - add the SCC support in our memory management unit
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@147 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-08 07:10:02 +00:00
stefan
af556712bd - remove endless loop
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@146 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-08 07:08:21 +00:00
stefan
bb075ea130 - add macros for cache flushing and memory barriers
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@145 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-07 21:10:59 +00:00
stefan
2819d27885 - specify output architecture
- rename entry section


git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@144 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-07 21:07:27 +00:00
stefan
e482442e36 - add bootloader for Rock Creek
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@143 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-07 21:04:31 +00:00
stefan
b209403ccb - add initial version of the SCC bootloader
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@127 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-25 07:36:20 +00:00
stefan
3c0a4afd43 - remove some obsolete debug messages
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@126 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-24 19:10:12 +00:00
stefan
77aaeb77b8 - remove linker problems by using non-initialized arrays
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@125 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-24 09:10:12 +00:00
stefan
857ea8d28b - cosmetic changes
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@124 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-24 06:18:14 +00:00
stefan
6e0bbaf55e - increase the readability by using macros instead of some hard-coded numbers
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@123 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-24 05:43:39 +00:00
stefan
2d1ff7482b - add a more precise calculation of the kernel position
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@122 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-22 11:00:56 +00:00
stefan
d69807cbdc - remove obsolete line
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@121 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-22 10:14:21 +00:00
stefan
7398111913 - add the definition "__KERNEL__" to avoid redifinition of ssize_t and off_t
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@120 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-22 10:08:38 +00:00
stefan
da2b895d68 - redesign of the initial ram disk
- now, we could map file in subdirectories


git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@119 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-22 09:56:02 +00:00
stefan
dadfc19de6 - include at last metalsvm/syscall.h to avoid redifinition of off_t and ssize_t
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@118 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-22 09:54:22 +00:00