Commit Graph

568 Commits

Author SHA1 Message Date
Bahadir Balban
bd448babaa Moved scheduler from containers back to being a global.
It makes more sense to have a scheduler (or runqueue pair) per-cpu
rather than per-container. This provides more flexible global scheduling
policy that is also simpler due to all scheduling details being controlled
from a single point.
2009-09-27 13:50:48 +03:00
Bahadir Balban
fa6629800f Coding style changes in kernel startup 2009-09-27 11:47:40 +03:00
Bahadir Balban
6dc68c1776 Force rebuild of bare containers when their linker script changes.
Small change but useful since linker address configuration changes
should force relinking of container executables.
2009-09-26 22:12:11 +03:00
Bahadir Balban
aae84b5eb3 Fixed updating of reconfigured bare projects
Reconfigured bare projects now update with config data
correctly. A path issue was fixed.
2009-09-26 21:52:29 +03:00
Bahadir Balban
b6676b9acd Fixed loader for kernel loading
Fix for the error that kernel start address wasn't passed
correctly and kernel wasn't started.
2009-09-26 21:18:19 +03:00
Bahadir Balban
a1fa446ef2 Improved on option parsing help + added it to configure.py as well. 2009-09-26 17:01:44 +03:00
Bahadir Balban
10d2d7269f CML2 rule file is autogenerated from arm.cml and the containers template
Container rules are too many and repetitive for each container. With this
change, the cml file is autogenerated from a container template cml and
the architecture cml, e.g. arm.cml. -c option determines the number of
containers. See build.py -h for more.
2009-09-26 16:39:04 +03:00
Bahadir Balban
fbb1800562 Updated projpaths to have cml rule file paths. 2009-09-25 16:29:55 +03:00
Bora Sahin
9bb96108ed Container number is received from the configuration system. 2009-09-25 13:43:33 +03:00
Bora Sahin
9917d52dfb Some more minor modifications to .gitignore. 2009-09-25 13:40:26 +03:00
Bahadir Balban
52e718f8c0 Added kernel image dependency to loader build 2009-09-25 10:48:59 +03:00
Bahadir Balban
37507c006a All address parameters in class Container converted to integers 2009-09-24 19:07:29 +03:00
Bahadir Balban
8ce7aef6b7 Minor mods to .gitignore 2009-09-24 18:36:11 +03:00
Bahadir Balban
fdb5ec15de Merge branch 'linux' of git://www.b-labs.co.uk/home/bora/web/git/codezero into linux 2009-09-24 18:10:26 +03:00
Bahadir Balban
8e3852473f Added linux configuration parameters to configuration class 2009-09-24 18:09:50 +03:00
Bora Sahin
251328ae96 .gitignore is updated to reflect the changes in the working tree. 2009-09-24 17:32:16 +03:00
Bora Sahin
eaf3face47 Removes CONFIG_ prefix from arm.cml, the main configuration file. 2009-09-24 17:20:51 +03:00
Bahadir Balban
42278c6429 CML2 fix for pre-loaded configurations to be written without visibility check.
Symbols loaded from old configuration were written back without visibility check.
2009-09-24 15:03:39 +03:00
Bahadir Balban
a5a75270c0 Fixed the problem that loader final.elf dependency wasn't detected
final.elf should now depend on build/conts/containers.elf
2009-09-24 14:12:11 +03:00
Bahadir Balban
b91286dcd4 Added a dependency on loader_images_S from final.elf
This ensures final.elf builds whenever containers.elf file changes.
2009-09-24 12:56:12 +03:00
Bahadir Balban
2c003da964 Changed configuration background to black on white...
Seemed fairly difficult, but luckily it works.
2009-09-23 17:55:03 +03:00
Bahadir Balban
84a75866f1 NCurses cml2 interface now always white.
Could not figure out how to make black on white. It is currently white on black
2009-09-23 17:06:48 +03:00
Bahadir Balban
b39d2abb39 Relevant change to last change 2009-09-23 16:24:30 +03:00
Bahadir Balban
becdfde7b5 Separated configuration input and output to 2 stages 2009-09-23 16:23:59 +03:00
Bahadir Balban
8e0080be16 Included a mapsize field for LINUX pager parameters
This is to determine how much the kernel should map from the container
during initialization.
2009-09-23 15:30:31 +03:00
Bahadir Balban
a2d2676303 Removed unnecessary shutil.rmtree for CONFIG_SHELVE file. 2009-09-23 15:19:36 +03:00
Bahadir Balban
7d1719e080 Updated generate kernel info script to include all other standard capabilities.
Currently only virtmem and physmem capabilities are configurable.
	modified:   scripts/conts/generate_kernel_cinfo.py
2009-09-23 15:17:50 +03:00
Bahadir Balban
9bd265c7ec Cannot straightforwardly derive symbols conditionally from multiple sources in CML2
Ternary expressions on derive statements cause type errors (CML2 Bug?).
	modified:   config/cml/arm.cml
	modified:   scripts/conts/generate_kernel_cinfo.py
2009-09-23 12:57:43 +03:00
Bahadir Balban
041190b5f2 More fixes to arm.cml, particularly deriving symbols work
Deriving symbols didn't work because cml2 silently ignored symbols
that were declared previously for derivations. Not pre-declaring derived
symbols have solved the problem.
2009-09-23 11:16:53 +03:00
Bahadir Balban
9bdd951cae Integrated cinfo generation to configure.py 2009-09-22 22:01:25 +03:00
Bahadir Balban
f29d86b5ff Added autogeneration of cinfo.c with memory capabilities
Also fixed a bug with configurator in that the containers
were not sorted properly and consequently an already filled
in container was getting overwritten by the new one.
	modified:   config/configuration.py
	modified:   configure.py
	new file:   generate_kernel_cinfo.py
	deleted:    src/generic/cinfo.c
2009-09-22 19:35:18 +03:00
Bahadir Balban
4f65fc0fa9 Added visibility rules for container virtual/physical memory regions
Virtual and physical memory region symbols are now visible depending
on the number of such regions defined.
2009-09-22 15:32:33 +03:00
Bahadir Balban
7c84aefecc Added multiple physical and virtual memory regions to configuration and parsing 2009-09-22 15:08:06 +03:00
Bahadir Balban
2da7b16412 Moved all crt0.S to .text.head 2009-09-21 20:26:01 +03:00
Bahadir Balban
6b582be876 Fixed bare container linking issue on libgcc not finding definition of `raise' 2009-09-21 20:04:07 +03:00
Bahadir Balban
c49dd29a41 Missing libc added back 2009-09-21 14:30:19 +03:00
Bahadir Balban
3b08ce304d Merge branch 'linux' of ssh://www.b-labs.co.uk/git/codezero into linux 2009-09-21 14:25:48 +03:00
Bahadir Balban
73653bdc27 Added missing SConstruct.userlibs 2009-09-21 14:25:10 +03:00
Bahadir Balban
db494f244b Linux build is commented in 2009-09-21 14:03:36 +03:00
Bahadir Balban
f34be923e9 Removed files that doesn't belong to this repo 2009-09-21 13:46:15 +03:00
Bahadir Balban
2e35b7a901 CML2 configuration file is saved and brought up until deleted. 2009-09-20 23:01:17 +03:00
Bahadir Balban
893b68c643 CML2 value width increased to 32.
This little patch increases the notorious 8-char wide value width in
the cml2 configurator to 32 characters. Now all values are properly visible.
2009-09-19 21:28:24 +03:00
Bahadir Balban
b2c93979ba Packing of bare container done. 2009-09-19 20:53:29 +03:00
Bahadir Balban
6c54c3f059 Added default linker script input file for bare containers 2009-09-19 12:37:59 +03:00
Bahadir Balban
19a84b02da Test program for bare repos now links with libl4 and libc.
The userspace bare libc has been re-added to the repo.
2009-09-19 12:30:37 +03:00
Bahadir Balban
e4f80c4579 Added generation of .container informative file for bare containers 2009-09-19 00:01:30 +03:00
Bahadir Balban
99ebb7c50d Bare container correctly autogenerates from `test' sources and builds.
new file:   conts/test/SConstruct
	new file:   conts/test/container.c
	new file:   conts/test/include/linker.lds
	new file:   conts/test/include/test.h
	new file:   conts/test/main.c
	new file:   conts/test/src/test.c
	modified:   scripts/bare/bare_generator.py
2009-09-18 18:49:56 +03:00
Bahadir Balban
0d2ec30f9c Added functionality to create a bare container 2009-09-18 17:47:37 +03:00
Bahadir Balban
34650259da Default values for container directories determined by container type expression
Resolved CML2 language issues such that now default parameters
for containers can be set by expressions on their type.
2009-09-18 12:28:54 +03:00
Bahadir Balban
f99c5108e0 Added container-specific options 2009-09-18 11:48:51 +03:00