stefan
9a9df5ed2e
- merge current eduOS branch to MetalSVM
...
=> add the support of "real" user-space applications, which could be loaded via initrd
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@394 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-02-08 18:37:56 +00:00
stefan
98769944c8
- remove bug in initrd_read
...
=> fix the using of the argument "offset"
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@377 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-01-19 17:12:20 +00:00
stefan
2bfc5a49dc
- move 32bit elf header to arch/x86
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@376 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-01-19 07:04:50 +00:00
stefan
40d7774f77
- remove typos
...
- add missing Copyright statement
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@375 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-01-13 08:07:55 +00:00
stefan
d931830aa1
- fix bug in the routine which determines the free page frames on the SCC
...
(wrong break condition)
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@371 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-01-07 05:45:01 +00:00
stefan
810b13f37e
- use the function lapic_read instead of direct memory access to the apic entries
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@370 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-01-07 05:37:42 +00:00
stefan
15487b4817
- remove wrong multiplicator
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@369 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-01-07 05:34:48 +00:00
stefan
b921da960a
- use the record scc_info to determine the cpu frequency
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@368 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-01-06 10:49:04 +00:00
stefan
91bdd4a38b
- remove typo
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@367 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-01-06 10:39:29 +00:00
stefan
9d2b73c6cb
- add a workaround to use paging and the apic at the same time
...
(we don't use __attribute__((optimize(0))))
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@366 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-01-05 20:12:07 +00:00
stefan
8646b56a63
- minor changes to support APIC
...
(currently, we got page fault by entering apic_calibration)
- first steps to realize a loader
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@365 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-01-05 10:16:53 +00:00
stefan
81d0b19726
- add application processors' boot code
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@347 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-12-15 20:55:56 +00:00
stefan
7ff346df44
- remove typo
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@344 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-12-15 13:39:37 +00:00
stefan
2127c42070
- remove typo
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@340 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-12-15 12:08:37 +00:00
stefan
2dd61c1da6
- move entry point of applications to the user space
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@335 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-12-14 06:41:59 +00:00
stefan
ab442041c1
- remove bug in the network driver
...
=> now, we use correct irq number
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@334 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-12-13 21:58:46 +00:00
stefan
7336c60767
- set svn properties to ignore Makefile.dep
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@328 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-12-10 06:22:40 +00:00
stefan
9a7e2a89b9
- add forgotten files to the project
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@327 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-12-10 06:19:18 +00:00
stefan
45219bce2e
- huge commit
...
- enable the paging support
- redesign of the APIC code
TODO:
- Currently, we are not able to start user-level applications.
- The RTL8139 driver does not longer work. Perhaps, a bug in the output function.
- The APIC codes doesn't work on all systems. Therefore, the code is currently disabled.
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@326 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-12-10 06:16:58 +00:00
stefan
d4ac31f5bf
- add the svn property "ignore" to ignore Makefile.dep
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@305 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-30 19:52:58 +00:00
stefan
dc8a0e808c
- add svn property "ignore" to ignore Makefile.dep
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@304 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-30 19:51:56 +00:00
stefan
7ba3a994b6
- remove some wrong definitions
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@303 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-30 19:50:03 +00:00
stefan
34e28a36f6
- add some debug messages
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@302 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-30 19:48:57 +00:00
stefan
c3c7468208
- some code cleanup
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@301 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-30 19:47:46 +00:00
stefan
71be663e2d
- remove some compiler warnings
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@299 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-30 08:14:11 +00:00
stefan
6f8e291f45
- by default we enable the PCI support
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@298 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-30 06:07:40 +00:00
stefan
12bfcd2f87
- add lwIP-based echo and ping servers
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@297 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-30 06:06:28 +00:00
stefan
6dc323dd6e
- Add a quick and dirty driver for the RTL8139 network adapters
...
- Currently, the driver detects only one adapter card. But the driver is already prepared to support several adapters.
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@296 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-30 06:04:56 +00:00
stefan
55bec7a933
- enable the DHCP support
...
- optimize the memory alignments
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@295 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-30 05:52:23 +00:00
stefan
2df0313f16
- remove obsolete ;
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@294 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-30 01:16:04 +00:00
stefan
f28fd84c68
- redesign of the apic code
...
- add ioapic support
- currently, all irq will forwarded to the boot processor
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@293 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-29 02:39:10 +00:00
stefan
3e1c151b5f
- remove an awful bug in the calculation of the io address
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@292 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-29 02:36:40 +00:00
stefan
645ce10ed4
- cleanup pci code
...
- add function to determine the iobase address and the irq number of a specific device
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@291 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-27 17:28:32 +00:00
stefan
7871ef692a
- add workaround to run the apic code correctly on qemu 12.5
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@290 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-26 18:15:09 +00:00
stefan
0dd542dc47
- code cleanup
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@289 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-26 18:14:13 +00:00
stefan
aec80ba9e4
- remove typo
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@274 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-26 05:38:01 +00:00
stefan
bc67c946af
- add APIC support for the SCC
...
- seems to work, only the APIC timer doesn't work!
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@273 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-26 05:33:02 +00:00
stefan
1cfc42c5a6
- add automatic conversion form a elf to a flat binary format
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@270 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-25 03:55:44 +00:00
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