Commit Graph

446 Commits

Author SHA1 Message Date
Bahadir Balban
2bbb963848 Added untracked crt0.S 2009-08-29 15:09:48 +03:00
Bahadir Balban
5892fba52a Fixed linker scripts on broken crt0.S path 2009-08-29 15:07:12 +03:00
Bahadir Balban
763d4c7012 Removed accidentally added config file. 2009-08-29 14:31:03 +03:00
Bahadir Balban
779429d289 Intermediate stage in reincorporating old libc into userspace tasks. 2009-08-29 14:29:57 +03:00
Russel Winder
9e894274a3 Refactor the build to try and get as much material as possible out of SConstruct. 2009-08-28 14:10:24 +01:00
Russel Winder
c311cf72e6 Rearrange the environment construction to support changing toolchain. 2009-08-28 11:49:05 +01:00
Russel Winder
03205855cc Generalize the configuration processing so that the top-level SConstruct only processes the ARCH symbol and prepares the PLATFORM and SUBARCH entries so as to write the config.h. Everything is now entered in the environment so the SConscript files can be responsible fo rthe processing. 2009-08-28 10:39:19 +01:00
Russel Winder
f6707e3ca7 Simplify the configuration file parsing so as to prepare for more generality. 2009-08-28 10:19:45 +01:00
Russel Winder
079b031616 Add check to ensure the source for the required device driver is actually present. 2009-08-28 09:55:55 +01:00
Russel Winder
591cac56cf Change the name of the IRQ symbol in the CML2 configuration so that the DRIVER_... symbol name structure matches the name structure of the kernel source hierarchy. 2009-08-28 09:55:20 +01:00
Russel Winder
34a804eb4d Trivial changes to sync up. 2009-08-28 09:28:24 +01:00
Russel Winder
187b70a829 Remove redundant comments. 2009-08-28 09:23:56 +01:00
Russel Winder
9033503283 Merge branch 'containers' into containersBuildDevel 2009-08-27 17:01:29 +01:00
Russel Winder
673b41c3a6 Simplify the top-level SConstruct a bit by transfering responsibility for ensuring the dependency on the configuration files to the SConscript files. 2009-08-27 16:59:52 +01:00
Russel Winder
6ca0f2607a Switch to using a different strategy for building the kernel. 2009-08-27 16:43:47 +01:00
Bahadir Balban
7b27d7f996 Turned off verbose test printout 2009-08-27 17:37:51 +03:00
Russel Winder
34c2156bc4 Remove redundant file. 2009-08-27 15:35:52 +01:00
Bahadir Balban
a41caeebd2 Created libc under containers/posix which now all tasks use to build.
There is a problem in the new libc that test0 now misbehaves. Going to be fixed.
2009-08-27 12:00:04 +03:00
Bahadir Balban
87e2aeaf58 Moved tasks/* into containers/posix 2009-08-25 14:34:21 +03:00
Bahadir Balban
117e3482b6 Capabilities for quantitative resources working.
Status:
- Capability initialization is a bit hacky with dummy current etc.
- All container caps belong to the pager
- Tasks refer to their pager's capabilities for mutex allocation - Hacky.
- Kernel container keeps quantitative caps and memory caps in separate lists - Hacky.

These will all evolve and get fixed.
2009-08-22 23:41:53 +03:00
Bahadir Balban
d3d072e47d Capability accounting for quantitative capabilities - First part done.
Need to make sure accounting charges correct containers during init.
Therefore kernel resource spending must also be accounted for.
2009-08-22 12:09:51 +03:00
Bahadir Balban
de087eb1f8 Clean up to kernel code, Added `used' field to capabilities
With the addition of used field, capability structure can be
used for resource accounting over the capability.
2009-08-21 12:10:34 +03:00
Bahadir Balban
d14f91c668 Cleaned up pager initialization code. 2009-08-19 17:07:08 +03:00
Bahadir Balban
dabc448c4e Added freeing of pager init memory, but this memory is currently not utilized. 2009-08-19 16:26:44 +03:00
Bahadir Balban
9c03d57d63 Carried over pager's virtual address alloc range to its own address space area. 2009-08-19 15:18:10 +03:00
Bahadir Balban
95b7b65c89 Pager virtual address pool bookkeeping added for all pager virtual addresses
Previously virt_to_phys/phys_to_virt macros were used such that they did a
blind offset translation for creating a pager internal virtual address for
user mappings.

This is now changed such that a properly bookkeeped virtual address pool is
used which will avoid any clashes on the virtual space.
2009-08-19 14:44:36 +03:00
Bahadir Balban
d351d6846a Merge branch 'buildDevel' of http://www.russel.org.uk/Git/Codezero into devel
Conflicts:

	tasks/test0/SConscript
	tasks/test0/test_exec.S
2009-08-17 22:57:41 +03:00
Russel Winder
ce62459d13 Correct the problem of not loading test_exec.
Remove the linker script and assembler load source in favour of generating
the source so that the correct path is in the source.
2009-08-17 19:24:18 +01:00
Bahadir Balban
13d14bca89 Includes the test_exec.axf in test0 elf file.
Cannot build test_exec.axf yet.
2009-08-17 19:30:33 +03:00
Bahadir Balban
c7e572a11c Merge branch 'buildDevel' of http://www.russel.org.uk/Git/Codezero into devel
Conflicts:

	loader/SConscript
2009-08-17 15:58:25 +03:00
Bahadir Balban
c64c1a4515 MM0 do_close() without IO was segfaulting. now fixed.
This was triggered by incorrect test0 build that omits to embed
the test executable.
2009-08-17 15:36:09 +03:00
Bahadir Balban
931c9b2587 Removed extra L from autogenerated start.axf.S break_virtual symbol value 2009-08-17 12:19:18 +03:00
Bahadir Balban
89c50d17f2 Fixed bootdesc relocation - Needs revising.
- Used os.system to call objcopy
- Changed source image to mm0.axf instead of start.axf
2009-08-17 12:10:09 +03:00
Russel Winder
5d8a35ad4d Make the address conversion for start.axf.S creation more sophisticated to deal with Python writing a Python literal. 2009-08-15 08:18:52 +01:00
Russel Winder
1c9dfe8030 Add the constructed config.h file as a dependency of the compiled objects so that it actually gets built. 2009-08-15 08:05:28 +01:00
Russel Winder
8777333664 Some trivial changes to the comments. 2009-08-15 07:27:45 +01:00
Bahadir Balban
0bfe0071f8 Changed linker script name to linker.lds from mylink.lds 2009-08-14 17:13:25 +03:00
Bahadir Balban
5bee43ae99 Merge branch 'newBuild' of /opt/c0-trees/codezero-russel into devel
Conflicts:

	SConstruct
	src/api/SConscript
	src/arch/arm/SConscript
	src/generic/SConscript
	tasks/bootdesc/SConstruct
2009-08-14 17:09:58 +03:00
Bahadir Balban
6a42491751 Fixed uninitialized local vars. 2009-08-14 12:54:54 +03:00
Russel Winder
31d61caea4 Fix error about inclusion of start.afx.S -- there was a dependencies error in the SConscript leading to incorect multiple inclusion in the constructed kernel.S. 2009-08-12 10:35:47 +01:00
Bahadir Balban
c7404c7322 Fixed boot messages 2009-08-11 15:28:39 +03:00
Bahadir Balban
f82db61519 Added freeing/unmapping of boot memory 2009-08-11 15:01:27 +03:00
Russel Winder
e5a0da2bbe Add in the import to allow the with statement in Python 2.5. 2009-08-11 11:55:39 +01:00
Bahadir Balban
f4d9520fef First working Codezero & POSIX Services with container/capability changes 2009-08-11 11:23:26 +03:00
Bahadir Balban
4f4532210a Fixed a bug with page_map size by dynamically allocating it. 2009-08-10 23:47:58 +03:00
Bahadir Balban
15b659eaf0 Removed any refs to global id pools.
Also added container reference setup to thread creation
2009-08-10 15:16:57 +03:00
Russel Winder
9cb2b7470f Generate the final link linker scripts. 2009-08-10 11:30:53 +01:00
Russel Winder
52962b5b19 Remove replication of main.c in the final link. 2009-08-10 11:07:15 +01:00
Russel Winder
9781f49f5d Construct main.c from a template. 2009-08-10 11:03:17 +01:00
Russel Winder
b833381c4a The todo in this todo file is now done. 2009-08-10 11:02:43 +01:00