-
Notifications
You must be signed in to change notification settings - Fork 59
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
psp Integration Candidate: 2021-03-23 #273
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Use the PSP module feature to allow selection/override of EEPROM accessors. The current code is converted to an "eeprom_direct" module which is included only on platforms where it is valid (e.g. mcp750, no mmu).
Fix #263, modular psp implementation
Fix #265, Use quotes for local includes
…_guide Fix #270, Add Contributing Guide
astrogeco
added a commit
to nasa/cFS
that referenced
this pull request
Mar 22, 2021
nasa/cFE#1243 v6.8.0-rc1+dev436 nasa/cFE#1225, Add coverage test fix nasa/cFE#1218, Adds a local definition of `SOFTWARE_BIG/LITTLE_BIT_ORDER` directly inside `cfe_endian.h` to provide a compatible symbol for apps that still require this. This allows CFE to build and run successfully when OSAL stops providing this in `common_types.h`. nasa/cFE#1193, Removes incorrect statements from Application Developers Guide nasa/cFE#1235, Fixes truncation handling on vsnprintf error by adding a cast to avoid implicit conversion nasa/cFE#1220, Clarify the documentation on SB MsgId regarding requirements for command and telemetry messages nasa/cFE#1230, Avoids undefined behavior and resolves static analysis warnings by casting `isspace` input to `unsigned char`. nasa/cFE#1231, Updates message module and msgid v1, `CFE_MSG_SetMsgId`, to use mask instead of cast to alter value. Resolves static analysis warning. nasa/cFE#1232, Updates `CFE_ES_FileWriteByteCntErr` to report status, not a `size_t` actual since `OS_write` returns `int32`. Use `int16` for local type from `CFE_TBL_FindTableInRegistry` since it's an index, not a status. nasa/cFE#1228, Replaces `<>` with `"` in local `#include`s nasa/cFE#1227, Adds `CONTRIBUING.md` that links to the main cFS contributing guide. nasa/PSP#273 v1.5.0-rc1+dev90 nasa/PSP#264, modular psp implementation nasa/PSP#272, Use quotes for local includes nasa/PSP#271, Add Contributing Guide nasa/osal#917 v5.1.0-rc1+dev347 nasa/osal#890, Move copyblock size to a #define and add comments nasa/osal#891, Removed rogue while loop nasa/osal#892, Scripted replacement for #include <os and #include <OSC_ matches of < and > with " nasa/osal#893, Consolidates the duplicated switch in OS_SocketOpen_Impl nasa/osal#894, Add `const` to input pointers nasa/osal#895, Removed network prototypes defined in osapi_sockets.h that are also in osapi_network.h nasa/osal#896, Removes NULL redefine from common_types.h nasa/osal#912, Add Contributing Guide nasa/osal#914, Utilize UTASSERT_CASETYPE_NA to report OS_ERR_NOT_IMPLEMENTED nasa/osal#898, correct interval calculation in DoSelect nasa/osal#909, comments describing select after connect nasa/osal#902, add check for EAGAIN in addition to EINTR nasa/osal#908, compile time assert for sockaddr size nasa/osal#910, check/report fcntl status nasa/osal#897, Add assert for FD_SET_SIZE in relation to OSAL_set nasa/osal#903, better error translation for ESPIPE errno nasa/osal#840, add shell functional test nasa/osal#901, rename OS_U32ValueWrapper_t nasa/osal#900, break up logic in return statement nasa/osal#906, return moduleInfoGet error nasa/osal#907, report timer_gettime error nasa/osal#899, remove unreachable test nasa/osal#905, make module comment same as other services nasa/osal#920 to fix test error check index inside fdset conversions nasa/osal#922, make non-selectable FD an error nasa/sample_app#137 v1.2.0-rc1+dev54 nasa/sample_app#134, Convert from <> to " for local includes nasa/sample_app#136, Added a contributing guide that links to the main cFS contributing guide. nasa/sample_app#132, Add context to the values for MsgIDs nasa/sample_lib#55 v1.2.0-rc1+dev30 nasa/sample_lib#54, Replace <> with " for local includes nasa/sample_lib#53, Adds CONTRIBUTING.md that links to the main cFS contributing guide. nasa/cFS-GroundSystem#171 v2.2.0-rc1+dev41 nasa/cFS-GroundSystem#166, Updated TBL and SB tlm for an operational TLM display nasa/cFS-GroundSystem#170, Add Contributing Guide nasa/cFS-GroundSystem#137, Create package for cfs-groundsystem
astrogeco
added a commit
to nasa/cFS
that referenced
this pull request
Mar 22, 2021
nasa/cFE#1243 v6.8.0-rc1+dev436 nasa/cFE#1225, Add coverage test fix nasa/cFE#1218, bit order macros nasa/cFE#1193, Removes incorrect statements from Application Developers Guide nasa/cFE#1235, Fixes truncation handling on vsnprintf error by adding a cast to avoid implicit conversion nasa/cFE#1220, Clarify the documentation on SB MsgId regarding requirements for command and telemetry messages nasa/cFE#1230, Cast isspace input to unsigned char to avoid undefined behavior nasa/cFE#1231, Updated message module, msgid v1 to use mask instead of cast to alter value nasa/cFE#1232, Coercion alters value caused by incorrect type - static analysis warning nasa/cFE#1228, Replaces `<>` with `"` in local `#include`s nasa/cFE#1227, Adds `CONTRIBUING.md` that links to the main cFS contributing guide. nasa/PSP#273 v1.5.0-rc1+dev90 nasa/PSP#264, modular psp implementation nasa/PSP#272, Use quotes for local includes nasa/PSP#271, Add Contributing Guide nasa/osal#917 v5.1.0-rc1+dev347 nasa/osal#890, Move copyblock size to a #define and add comments nasa/osal#891, Removed rogue while loop nasa/osal#892, Scripted replacement for #include <os and #include <OSC_ matches of < and > with " nasa/osal#893, Consolidates the duplicated switch in OS_SocketOpen_Impl nasa/osal#894, Add `const` to input pointers nasa/osal#895, Removed network prototypes defined in osapi_sockets.h that are also in osapi_network.h nasa/osal#896, Removes NULL redefine from common_types.h nasa/osal#912, Add Contributing Guide nasa/osal#914, Utilize UTASSERT_CASETYPE_NA to report OS_ERR_NOT_IMPLEMENTED nasa/osal#898, correct interval calculation in DoSelect nasa/osal#909, comments describing select after connect nasa/osal#902, add check for EAGAIN in addition to EINTR nasa/osal#908, compile time assert for sockaddr size nasa/osal#910, check/report fcntl status nasa/osal#897, Add assert for FD_SET_SIZE in relation to OSAL_set nasa/osal#903, better error translation for ESPIPE errno nasa/osal#840, add shell functional test nasa/osal#901, rename OS_U32ValueWrapper_t nasa/osal#900, break up logic in return statement nasa/osal#906, return moduleInfoGet error nasa/osal#907, report timer_gettime error nasa/osal#899, remove unreachable test nasa/osal#905, make module comment same as other services nasa/osal#920 to fix test error check index inside fdset conversions nasa/osal#922, make non-selectable FD an error nasa/sample_app#137 v1.2.0-rc1+dev54 nasa/sample_app#134, Convert from <> to " for local includes nasa/sample_app#136, Added a contributing guide that links to the main cFS contributing guide. nasa/sample_app#132, Add context to the values for MsgIDs nasa/sample_lib#55 v1.2.0-rc1+dev30 nasa/sample_lib#54, Replace <> with " for local includes nasa/sample_lib#53, Adds CONTRIBUTING.md that links to the main cFS contributing guide. nasa/cFS-GroundSystem#171 v2.2.0-rc1+dev41 nasa/cFS-GroundSystem#166, Updated TBL and SB tlm for an operational TLM display nasa/cFS-GroundSystem#170, Add Contributing Guide nasa/cFS-GroundSystem#137, Create package for cfs-groundsystem
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Describe the contribution
Fixes #263 - Make PSP more modular
Fix #265 - use quotes for local includes
Fix #270, Add Contributing Guide
Tests
Part of https://github.com/nasa/cFS/pull/223/checks
Behavior Changes
PR #264
This is a very simple approach to addressing the issue of incompatible/non-portable code blobs in "shared" directory of the PSP. It uses the same modular init pattern as is used elsewhere in CFE.
CMake is used to generate a list of "base" modules correlating with the selected PSP (i.e. pc-linux, mcp750-vxworks, etc).
These modules are then initialized (in order) before the rest of PSP runs.
The "direct write" EEPROM is not used unconditionally. Instead the proper eeprom implementation module is selected based on which PSP is selected. MCP750 uses direct write, pc-linux uses an mmap file, and pc-rtems uses a stub (not implemented).
It is currently not easy to override items in the "shared" directory even for platforms which it does not apply.
For example, in the "cfe_psp_ram.c" and "cfe_psp_port.c" files this contains code that directly writes to physical memory addresses, which may work on mcp750, but will likely segfault on an pc-linux system.
The code should be better structured as modules so the "correct" implementation can be used for each system without breaking the other system.
There really shouldn't be much in the
shared
directory (the existence of such a directory implies its not platform-specific, but yet its in the PSP).PR #272
Replaces
"
used on non-system header#include
s with<>
PR #271
Added a contributing guide that links to the main cFS contributing guide.
Additional context
Part of nasa/cFS#223
Authors
@ArielSAdamsNASA
@jphickey
@skliper