Commit Graph

53 Commits

Author SHA1 Message Date
Amit Mahajan
1a62b92a8d Minor bug, introduced in loader while merging, fixed!! 2010-03-31 11:14:46 +05:30
Amit Mahajan
ab728dd1d5 Added separate toolchains for userspace and kernel. 2010-03-30 20:15:39 +05:30
Bahadir Balban
74b5963fcb Kernel updates since December 2009 2010-03-25 01:12:40 +02:00
Amit Mahajan
d8f480fd1b Compilation errors resolved for 2009Q3 toolchains. 2009-11-11 02:02:27 +05:30
Amit Mahajan
c44d25b596 Taking UART code out from libc and loader and putting in libdev 2009-11-11 02:02:26 +05:30
Amit Mahajan
8d9f5f82d0 Patch for comments by bahadir 2009-11-02 21:31:07 +05:30
Amit Mahajan
e120e7c552 Selecting UART0 base address based on platform selected 2009-11-02 21:29:55 +05:30
Amit Mahajan
a81574b899 Cleaning loader libc and uart 2009-11-02 21:29:55 +05:30
Amit Mahajan
91c617d0b2 Removed hard coded values of toolchain and gcc cpu flags 2009-11-02 21:29:54 +05:30
Amit Mahajan
dc57472538 Correcting the symbol pattern for finding start/end of various physical
regions in use by various containers
2009-11-02 21:15:40 +05:30
Bahadir Balban
c6bdd65e48 Minor mods on linux patches 2009-10-21 21:27:41 +03:00
Amit Mahajan
89a937fc9c Generating LMA for final.elf dynamically 2009-10-21 16:47:56 +05:30
Bahadir Balban
a3a90530df Fixed a few minor issues. 2009-10-18 16:16:32 +03:00
Bahadir Balban
f54747a208 All posix tests running as before. 2009-10-10 00:23:13 +03:00
Bahadir Balban
ea9c399dda Progress on executing test0 from memfs file as an elf.
Elf is recognised OK, but somehow section table is not read correctly.
2009-10-06 18:30:36 +03:00
Bahadir Balban
da5f4dcff3 Changes in merged posix pager mm0 initialization.
- Moved rootfs from being embedded to mm0 image to being an independent image.
- MM0 boots up to start_init_process with updated boot convention.
2009-10-05 13:25:32 +03:00
Bahadir Balban
e5cde20ca9 Fixed a fault with posix tasks not getting their LMA correctly 2009-10-01 13:13:27 +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
52e718f8c0 Added kernel image dependency to loader build 2009-09-25 10:48:59 +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
2da7b16412 Moved all crt0.S to .text.head 2009-09-21 20:26:01 +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
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
943e4a520c Loader can now load all containers.
The container image addresses seem to clash with kernel.
Currently no checking done for that.
2009-09-18 11:27:03 +03:00
Bahadir Balban
6538e70b39 Fixed few issues with loader and basic image loading.
Declaring section of the form:

.align 4
.section "kernel"
.incbin "path-to-kernel"

And defining a linker variable before the section output does not always seem to work.
The linker seems to add padding even though .align directive comes before .section

	modified:   SConstruct.loader
	modified:   loader/linker.lds
	modified:   loader/main.c
2009-09-17 19:19:03 +03:00
Bahadir Balban
b2531dc725 Created images.S for loader with a script so that kernel.elf and containers.elf are not hard-coded 2009-09-17 11:14:26 +03:00
Bahadir Balban
136bdcdc54 Minor fixes to loader build scripts 2009-09-16 19:40:31 +03:00
Bahadir Balban
0f1dc5a982 Added generation of ksyms.S to loader SConscript as a call to generate_break_virtual
File creation and cleanup works correctly.
	modified:   loader/SConscript
	modified:   scripts/loader/generate_break_virtual.py
2009-09-16 19:01:57 +03:00
Bahadir Balban
1925cd5704 Autogenerating the break_virtual symbol 2009-09-16 18:04:09 +03:00
Bahadir Balban
ee44a2007a Containers packed in single .elf file 2009-09-16 16:24:56 +03:00
Bahadir Balban
0142677c81 Simplified loader, elf, and c library SConscripts 2009-09-14 19:15:32 +03:00
Bahadir Balban
e08ab58b09 Can now compile loader, libl4, libelf, libc from SConstruct.loader 2009-09-14 19:07:12 +03:00
Bahadir Balban
15f12ce38f Loader building from top-level SConstruct.loader
Need to add libc and libelf to it as well.
2009-09-14 17:57:14 +03:00
Bahadir Balban
c4c3fb1e6c Mods for improvements 2009-09-12 18:54:35 +03:00
Bahadir Balban
59f30a175a More progress on build scripts
Created a config directory for configuration files.
Moved all absolute path variables to a projpaths.py file
All scripts can now universally learn absolute paths via projpaths.py
Moved the config_symbols class to the configuration.py file.
Moved libs to loader since they are only referred by the loader
2009-09-12 13:42:30 +03:00
Bahadir Balban
16f20a9d3a Copying the way source, target files are referred, loader/SConscript now works with new setup.
modified:   loader/SConscript
	new file:   loader/main.c
	deleted:    loader/main.c.in
2009-09-08 22:18:04 +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
Bahadir Balban
87e2aeaf58 Moved tasks/* into containers/posix 2009-08-25 14:34:21 +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
8777333664 Some trivial changes to the comments. 2009-08-15 07:27:45 +01: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
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
Russel Winder
5fcf173ae6 Get the baremetal crt0 included in the final link. 2009-08-10 09:43:09 +01:00
Russel Winder
163baa31ea Got the first part of the packing phase in place.
Generate kernel.S rather than have it as a manually maintained file.
2009-08-10 09:33:05 +01:00
Russel Winder
d40c76de84 Remove all the SCons files pending starting a new build system. 2009-07-28 14:47:00 +01:00
Bahadir Balban
70d5ff33cd This patch adds ipc_sendrecv() and opens the way for client/server communication.
ipc_sendrecv() replaces ipc_sendwait() which was flawed. See ipc_sendrecv() for
how client/server communication works. Tested with page faults where the kernel
does an ipc_sendrecv() to faulty thread's pager and the pager successfully handles
the request, and returns back the result, which effectively restarts the faulty
thread.
2008-02-04 21:03:51 +00:00