summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoel Sherrill <joel@rtems.org>2022-09-02 11:25:09 -0500
committerSebastian Huber <sebastian.huber@embedded-brains.de>2022-09-05 08:45:34 +0200
commitb1fd62357742decea316972fd15d475606ee6009 (patch)
tree6eb537af6a55c409b2f2d1eb79439db3f5c3f8e6
parentspecview.py: Use augment_with_test_case_links() (diff)
downloadrtems-central-b1fd62357742decea316972fd15d475606ee6009.tar.bz2
Add POSIX Timer FACE Behavior Configuration
Updates #4691.
-rw-r--r--config.yml2
-rw-r--r--spec/acfg/if/group-face.yml30
-rw-r--r--spec/acfg/if/posix-timer-face-behavior.yml23
3 files changed, 55 insertions, 0 deletions
diff --git a/config.yml b/config.yml
index bbf8c316..acd88d00 100644
--- a/config.yml
+++ b/config.yml
@@ -92,6 +92,8 @@ appl-config:
target: modules/rtems-docs/c-user/config/device-driver.rst
- uid: /acfg/if/group-eventrecord
target: modules/rtems-docs/c-user/config/event-record.rst
+ - uid: /acfg/if/group-face
+ target: modules/rtems-docs/c-user/config/face-technical-standard.rst
- uid: /acfg/if/group-filesystem
target: modules/rtems-docs/c-user/config/filesystem.rst
- uid: /acfg/if/group-general
diff --git a/spec/acfg/if/group-face.yml b/spec/acfg/if/group-face.yml
new file mode 100644
index 00000000..752c7159
--- /dev/null
+++ b/spec/acfg/if/group-face.yml
@@ -0,0 +1,30 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2022 On-Line Applications Research Corporation (OAR)
+description: |
+ This section describes configuration options related to adapting
+ RTEMS behavior to be aligned with the FACE Technical Standard.
+ The FACE Technical Standard is a product of the FACE Consortium
+ which operates under the Open Group. The FACE Consortium was founded
+ by avionics organizations to improve the portability of cockpit software
+ across various platforms. It addresses technical and business concerns.
+
+ Most important from an RTEMS perspective, the FACE Technical Standard
+ defines four POSIX profiles: Security, Safety Base, Safety Extended, and
+ the General Purpose Profile. Each has an increasingly larger subset of
+ POSIX APIs. In the Security and Safety profiles, ARINC 653 is required.
+ It is optional in the General Purpose Profile.
+
+ The RTEMS Project has been tracking alignment with the FACE POSIX profiles
+ and they are included in the "RTEMS POSIX 1003.1 Compliance Guide."
+enabled-by: true
+index-entries: []
+interface-type: appl-config-group
+links:
+- role: interface-placement
+ uid: ../../if/domain
+- role: requirement-refinement
+ uid: ../../req/applconfig
+name: FACE Technical Standard Related Configuration
+text: ''
+type: interface
diff --git a/spec/acfg/if/posix-timer-face-behavior.yml b/spec/acfg/if/posix-timer-face-behavior.yml
new file mode 100644
index 00000000..3ab094f8
--- /dev/null
+++ b/spec/acfg/if/posix-timer-face-behavior.yml
@@ -0,0 +1,23 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+appl-config-option-type: feature-enable
+copyrights:
+- Copyright (C) 2022 On-Line Applications Research Corporation (OAR)
+description: |
+ If this configuration option is defined, then POSIX timers may
+ not be created to use the CLOCK_REALTIME. Per POSIX, this is allowed
+ behavior but per the FACE Technical Standard, it is not. Using POSIX
+ timers based on CLOCK_REALTIME (e.g., time of day) is unsafe for
+ real-time safety systems as setting CLOCK_REALTIME will perturb any
+ active timers.
+
+ If this option is not defined, POSIX timers may be created to use the
+ CLOCK_REALTIME in compliance with the POSIX specification.
+enabled-by: true
+index-entries: []
+interface-type: appl-config-option
+links:
+- role: appl-config-group-member
+ uid: group-face
+name: CONFIGURE_POSIX_TIMERS_FACE_BEHAVIOR
+notes: null
+type: interface