Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cfe2cos, the mega-merge #333

Open
wants to merge 156 commits into
base: ppos
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 138 commits
Commits
Show all changes
156 commits
Select commit Hold shift + click to select a range
9388ff3
Add Vagrantfile and fix case sensitivity in src/Makefile
Others Oct 20, 2016
a5a4420
Create a new cFE_boot component and script
Others Oct 23, 2016
8214daa
Implement printc for the cFE booter, and clean up its Makefile
Others Oct 27, 2016
01b1f19
Change the cFE_booter Makefile to include the core-composite cFE object
Others Nov 3, 2016
5132ac3
Fix build issues in the cFE_booter component
Others Nov 3, 2016
4362aa2
Added a directory and empty methods for OSAL's queues
base0x10 Nov 5, 2016
545f25d
Add cFE mocks to the cFE_booter component
Others Nov 7, 2016
454243b
Add hack in the cFE for the missing sscanf function, and improve the …
Others Nov 8, 2016
4087a1d
Split up osal methods better in the cFE_booter
Others Nov 8, 2016
a06dab4
the meager sum of my efforts to implement nothing more than a simple …
base0x10 Nov 10, 2016
efcf1de
Write out a stub for the cFE's entrypoint
Others Nov 11, 2016
b365e98
Revert "the meager sum of my efforts to implement nothing more than a…
Others Nov 12, 2016
0b80327
Add more information to cFE panics
Others Nov 13, 2016
786ba2b
Improve stubs so the cFE can get to its real entrypoint
Others Nov 14, 2016
fdc75ab
Add testing infrastructure to the cFE entrypoint
Others Nov 17, 2016
449b2d6
Improve the cFE entrypoint
Others Nov 19, 2016
1fce2f5
Preliminary queue implementation
zacharied Apr 18, 2017
9a51c19
Add an ugly hack that makes the reset area work
Others Apr 26, 2017
7ee5df4
Add thread API implementations
Others May 30, 2017
b43d2ef
Implement CFE_PSP_GetTime
Others May 30, 2017
9258b1a
Add hacky implementations of many of the psp methods
Others May 30, 2017
6077404
Ensure scheduler methods enter the critical section
Others May 31, 2017
77bab05
Remove unnesessary queue stubs that were ressurected
Others May 31, 2017
69b4266
Merge remote-tracking branch 'upstream/ppos' into HEAD
Others Jun 1, 2017
a532cec
Fix the broken build
Others Jun 2, 2017
e9b0183
Fix the osal GetLocalTime/SetLocalTime routines
Others Jun 5, 2017
ba48792
Merge remote-tracking branch 'upstream/ppos' into HEAD
Others Jun 5, 2017
af7d350
Merge remote-tracking branch 'upstream/ppos' into HEAD
Others Jun 5, 2017
313afb1
Update thread methods to use new sl improvements
Others Jun 5, 2017
0884f59
Implement several of the mutex methods
Others Jun 5, 2017
12251d6
Add preliminary semaphore implementation
Others Jun 6, 2017
9690464
Implement a few more ostask methods
Others Jun 6, 2017
b75a93a
Implemented unit testing
zacharied Jun 6, 2017
bc402ea
Merge remote-tracking branch 'refs/remotes/origin/cFE2cos' into cFE2cos
zacharied Jun 6, 2017
14552bd
Implement OS_BinSemFlush
Others Jun 6, 2017
60042be
Merge branch 'cFE2cos' of https://github.com/Others/composite into cF…
zacharied Jun 6, 2017
ad69a1a
Fix some task_id handling bugs
Others Jun 6, 2017
939e44e
Merge branch 'cFE2cos' of https://github.com/Others/composite into cF…
zacharied Jun 6, 2017
62655e3
Fixed an unused variable warning in
zacharied Jun 6, 2017
2ea12ed
Fix obvious build error
Others Jun 7, 2017
323c382
Merge branch 'cFE2cos' of https://github.com/Others/composite into HEAD
Others Jun 7, 2017
3642436
Revert "Fix obvious build error"
Others Jun 7, 2017
1cc24c6
Fix obvious build error
Others Jun 7, 2017
027e727
Implemented conditional conditional compilation of unit test calls.
zacharied Jun 7, 2017
d8cdca3
Increase stack size to fix overflow errors
Others Jun 8, 2017
2552fc0
Increase the number of priorities to match cFE's expectations
Others Jun 8, 2017
a34e6d5
Fixed #17: build breaking when building without compiling unit tests …
zacharied Jun 13, 2017
3d8a74b
Implement read only filesystem and tar parsing
base0x10 Jun 9, 2017
bf8bd5d
Merge pull request #1 from base0x10/cFE2cos
Others Jun 15, 2017
8e15b2c
Clean up unit test process and run tests in a Composite-friendly way
zacharied Jun 16, 2017
69938ee
Remove duplicated call to OS_API_Init, preventing a fault
Others Jun 16, 2017
30ea6b6
Fix crashing task unit tests
Others Jun 19, 2017
fa71ced
Add missing null guards to the LocalTime functions
Others Jun 19, 2017
0d5c45e
Fix broken unit tests
Others Jun 19, 2017
a6f3148
Insert missing id bounds checks in Semaphore creation methods
Others Jun 20, 2017
f352952
Add `INVALID_SIZE` fail case to `OS_QueueGet`.
zacharied Jun 20, 2017
f9f0c75
Add some saftey asserts to sl
Others Jun 20, 2017
b9a0c8e
Merge branch 'cFE2cos' of https://github.com/Others/composite into HEAD
Others Jun 20, 2017
298660c
Bring in shared implementations of many of the psp routines
Others Jun 26, 2017
8ac36a6
Merge remote-tracking branch 'upstream/ppos' into HEAD
Others Jun 26, 2017
75e0315
Implement a bunch of psp routines, and add hacks to ostask
Others Jun 26, 2017
ba87ec9
Add error checking to OSAL methods in `osloader.c`
zacharied Jun 26, 2017
6afe189
Merge branch 'cFE2cos' of https://github.com/Others/composite into cF…
zacharied Jun 26, 2017
b3f3e78
Fix incorrect number of arguments in `strncpy`.
zacharied Jun 26, 2017
9491cba
Fix no-free-ID error on uninitialized queues
zacharied Jun 26, 2017
bfedf77
Flag time base methods as unimplemented
Others Jun 26, 2017
0a16241
Merge branch 'ppos' of github.com:gparmer/composite into HEAD
Others Jun 27, 2017
5f3ae27
Fix NULL redefinition warnings in the cFE
Others Jun 27, 2017
aef5c63
index on (no branch): 5f3ae279 Fix NULL redefinition warnings in the cFE
Others Jun 27, 2017
aa092ee
WIP on (no branch): 5f3ae279 Fix NULL redefinition warnings in the cFE
Others Jun 27, 2017
170a02f
Implement sl_lock
Others Jun 27, 2017
8648c1d
Remove the sscanf stubs, and add free and realloc stubs
Others Jun 28, 2017
9eb4bcc
Fix linker error by reintroducing the sscanf stub
Others Jun 28, 2017
32326a4
Add sl_lock and integrate it with ostask
Others Jul 11, 2017
758dfdb
Merge remote-tracking branch 'upstream/ppos' into HEAD
Others Jul 12, 2017
beab83b
Fix the ps submodule, which had changes that were lost in the merge
Others Jul 12, 2017
40a9bb9
Increase the default max number of symbols for the linker
base0x10 Jul 12, 2017
effa171
Implement a functional filesystem for the cFE
base0x10 Jul 15, 2017
5a533f5
Update cFE_booter's copy of the sl library
Others Jul 16, 2017
7146b84
Store symbol names in `cobj`
zacharied Jul 17, 2017
5fc4f0f
Merge branch 'cFE2cos' of https://github.com/Others/composite into cF…
zacharied Jul 17, 2017
4d650bc
Fix broken OSAL thread unit tests
Others Jul 18, 2017
6852394
Merge branch 'cFE2cos' of https://github.com/Others/composite into HEAD
Others Jul 18, 2017
0f5be70
Remove debugging prints in cFE_booter/ostask.c
Others Jul 18, 2017
205956c
fix filesystem directory api and style issues
base0x10 Jul 19, 2017
cf43ad8
Merge branch 'cFE2cos' of https://github.com/Others/composite into cF…
base0x10 Jul 20, 2017
30bb538
Merge remote-tracking branch 'upstream/ppos' into HEAD
Others Jul 25, 2017
01a70ef
Update cFE_booter to use sl as a library, and deleted the copied version
Others Jul 25, 2017
381ab1a
Merge branch 'cFE2cos' of https://github.com/Others/composite into cF…
base0x10 Jul 26, 2017
232627d
Update filesystem including good filedescripters, permissions, and fi…
base0x10 Aug 8, 2017
437088d
Update name of tar function to read header
base0x10 Aug 8, 2017
f330c26
Store undefined symbols in `ST_user_caps`
zacharied Aug 15, 2017
d91ab81
Merge branch 'cFE2cos' of https://github.com/Others/composite into cF…
base0x10 Aug 16, 2017
bea3a91
Update to file system for musl libc and minor changes
base0x10 Aug 16, 2017
25c5e4a
Tiny style changes in cos osal cFE code.
base0x10 Aug 16, 2017
742b4a3
Merge pull request #4 from base0x10/cFE2cos
base0x10 Aug 16, 2017
5a5ba6e
Fix error in code to create filesystem from tar
base0x10 Aug 22, 2017
7dd5112
Add initial implementation of osloader in the cFE_booter
Others Aug 25, 2017
6caddb5
Refine app loading in `osloader`
zacharied Aug 25, 2017
06b7f8f
Add diagnostic information, and add queue waiting hack
Others Aug 28, 2017
db97cdd
Merge remote-tracking branch 'upstream/ppos' into HEAD
Others Aug 28, 2017
497f0eb
Add locking to `OS_QueueGet`
zacharied Aug 28, 2017
a5d45cb
Fix timeout handling in OS_QueueCreate
Others Sep 3, 2017
9a366d8
Fix some inelegence in the queue implementation
Others Sep 12, 2017
3c91590
Increased usability by cleaning up old code
base0x10 Sep 27, 2017
75af8e6
Remove broken ifdefs in the cFE loader code
Others Oct 25, 2017
d2b1a6f
Add more symbols to cFE assembly stubs
zacharied Nov 4, 2017
b34d539
Add task for starting 1hz timer
zacharied Nov 16, 2017
993190f
Fix buffer overrun in sl_thd_policy array + cleanup redundant code
Others Nov 27, 2017
4392a50
Merge remote-tracking branch 'origin/cFE2cos' into HEAD
Others Nov 27, 2017
cf3f3a8
Merge remote-tracking branch 'upstream/ppos' into HEAD
Others Jan 18, 2018
4c557d6
Add logging to llbooter
Others Jan 21, 2018
e743543
Merge remote-tracking branch 'robbie/ppos' into cFE2cos
Others Feb 12, 2018
dcdddf1
Convert the cFE to boot multicomponent
Others Feb 16, 2018
a60b702
Stub out some cFE methods in cFE_emu
Others Feb 18, 2018
610cec6
Fix capitalization of includes, which was a problem
Others Feb 18, 2018
12b3926
Merge branch 'ppos' into cFE2cos
Others Feb 22, 2018
4b5be40
Merge remote-tracking branch 'phani/resmgr' into cFE2cos
Others Feb 27, 2018
9993fdc
Merge remote-tracking branch 'phani/resmgr' into cFE2cos
Others Feb 27, 2018
3a5920b
Switch the cFE to using the res_mgr for resource requests
Others Mar 1, 2018
dbff2f5
Fix bugs in cFE res_mgr usage
Others Mar 2, 2018
71a8d17
Implement emulation for many cFE methods
Others Mar 3, 2018
9db1fba
Merge remote-tracking branch 'phani/resmgr' into cFE2cos
Others Mar 3, 2018
02293f9
Emulate the final few cFE methods
Others Mar 3, 2018
284585f
Finalize build system changes, so cFE is under composite
Others Mar 19, 2018
8e24b16
Merge remote-tracking branch 'phani/resmgr' into cFE2cos
Others Mar 20, 2018
cb3b1ac
Merge remote-tracking branch 'upstream/ppos' into cFE2cos
Others Mar 20, 2018
8622869
change symbol names for linking filesystem
base0x10 Mar 20, 2018
cd45f00
Fix apps failing to boot
Others Mar 20, 2018
453b680
Make the simple 'make init', 'make', 'make run' process work
Others Mar 20, 2018
6fe1bb7
Fix cFE_booter code formatting
Others Mar 20, 2018
0aa12f3
Refactor cFE_emu to use c_stubs instead of a library
Others Mar 23, 2018
aa50fd7
Fix the location of cFE_emu.h
Others Mar 24, 2018
6bb6eb5
Alphabetize cFE stubs
Others Mar 24, 2018
480e92c
Implement more cFE interface stubs
Others Mar 25, 2018
badba1a
Implement many more stub functions
Others Mar 27, 2018
99dba05
Address PR comments on the first half of ostask.c
Others Mar 30, 2018
edcdb78
Get rid of sl overrides in the cFE_booter
Others Mar 30, 2018
bb134b1
WIP Made apps that kinda work
base0x10 Mar 31, 2018
16896bd
Merge branch 'cFE2cos' of https://github.com/Others/composite into cF…
base0x10 Mar 31, 2018
1fecd4a
Address more PR comments in ostask.c
Others Mar 31, 2018
1067a29
Fix scheduling oddeties within the cFE
Others Mar 31, 2018
67fb31e
Implement more missing stubs, bump INTERFACE_UNDEF_SYMBS
Apr 12, 2018
fc1095b
Implement CDS stubs for the cFE interface
Others Apr 14, 2018
6869ec4
Implement support for TIME_SyncCallback in the cFE api
Others Apr 16, 2018
1913e01
Manually fixup the formatting in the cFE
Others Apr 16, 2018
939705b
Implement child task creation for the cFE interface
Others Apr 16, 2018
80e6639
Implement TBL api for the cFE interface (also autoformat it)
Others Apr 18, 2018
419497e
small makefile update
base0x10 Apr 20, 2018
3b183d1
Merge branch 'cFE2cos' of https://github.com/Others/composite into cF…
base0x10 Apr 20, 2018
5df1cda
Move cFE configuration to real componentized apps
base0x10 Apr 23, 2018
51051c8
Make open sat kit apps run on the system
Others Apr 23, 2018
6d5c47f
Expand cFE_booter functionality for newly created apps
Others Apr 24, 2018
caf490c
Fix bug in CFE_TBL_Register stub, address more PR comments
Others Apr 28, 2018
acd7422
Merge remote-tracking branch 'upstream/ppos' into cFE2cos
Others Feb 27, 2020
176901c
Fixup problems created after merge
Others Feb 27, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
*.sw*
*#
.#*
**/.DS_Store
.fn_dependencies
.fn_exports
.exported_interfaces
Expand All @@ -28,6 +29,7 @@ GPATH
GRTAGS
GSYMS
GTAGS
tools/.vagrant
.vagrant
.clang_complete
Vagrantfile
Expand Down
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
[submodule "src/components/lib/ps"]
path = src/components/lib/ps
url = https://github.com/gwsystems/ps.git
[submodule "src/extern/cFE"]
path = src/extern/cFE
url = https://github.com/Others/cFE.git
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be sourced from gwsystems instead?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No. This is not the cFE repository on gwsystems. (Which really should be changed back to cFE2cos...) This cFE repo just has cFE code in it.

15 changes: 13 additions & 2 deletions src/Makefile
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
MAKEFLAGS=--no-print-directory --section-alignment 0x1000 -I$(PWD)
#$(info Make flags $(MAKEFLAGS))

.PHONY: default all extern comps plat init_extern
default: | all cp

all: comps plat
all: | extern comps plat

extern:
$(MAKE) $(MAKEFLAGS) -C extern

comps:
$(info )
Expand Down Expand Up @@ -36,8 +40,15 @@ distclean: clean
$(MAKE) $(MAKEFLAGS) -C components distclean
@rm -f `pwd`/../transfer/*

init:
init: | ensure_config init_extern init_composite
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Never used | in such a rule before. I'll need to look up what that does.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It sequences the dependencies


ensure_config:
test -f PLATFORM_ID || $(MAKE) $(MAKEFLAGS) config

init_extern:
$(MAKE) $(MAKEFLAGS) -C extern init

init_composite:
$(MAKE) $(MAKEFLAGS) -C components init
$(MAKE) $(MAKEFLAGS) PLATFORM=$(shell cat PLATFORM_ID) -C platform init

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
gen
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why another .gitignore in the same git repo?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's more flexible. We don't need super long paths in the top level .gitignore

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see. I'm not sure how this works, does git ignore files from both local .gitignore and the global repository .gitignore?
Also, this is probably the longest path we can have in our build system (in terms of levels, not names), so it's not super-long if you think of it.

test
*.d.[0-9]*
12 changes: 12 additions & 0 deletions src/components/implementation/no_interface/cFE_booter/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# C_OBJS=cFE_entrypoint.o cFE_stub.o osapi.o osfiles.o osloader.o osqueue.o ostask.o ostimer.o osnetwork.o psp.o scheddev/sl.c scheddev/sl_mod_fprr.c
ASM_OBJS=
COMPONENT=cFE_booter.o
INTERFACES=cFE
DEPENDENCIES=capmgr
IF_LIB:=./composite_cFE.o ./cFE_fs.o $(wildcard test/*.o)
ADDITIONAL_LIBS=-lcobj_format $(LIBSLCAPMGR) -lheap -lsl_lock -lsl_thd_static_backend

include ../../Makefile.subsubdir
CFLAGS += -I./gen -I ./test/shared $(CPPFLAGS)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

don't think there's supposed to be a space between -I .test.... I'm wondering what this test dir is. We'll see!


MANDITORY_LIB=simple_stklib.o
Loading