diff options
Diffstat (limited to 'spec/rtems/barrier/if')
-rw-r--r-- | spec/rtems/barrier/if/create.yml | 42 | ||||
-rw-r--r-- | spec/rtems/barrier/if/delete.yml | 30 | ||||
-rw-r--r-- | spec/rtems/barrier/if/group.yml | 20 | ||||
-rw-r--r-- | spec/rtems/barrier/if/header.yml | 12 | ||||
-rw-r--r-- | spec/rtems/barrier/if/ident.yml | 60 | ||||
-rw-r--r-- | spec/rtems/barrier/if/release.yml | 34 | ||||
-rw-r--r-- | spec/rtems/barrier/if/wait.yml | 34 |
7 files changed, 232 insertions, 0 deletions
diff --git a/spec/rtems/barrier/if/create.yml b/spec/rtems/barrier/if/create.yml new file mode 100644 index 00000000..b0dabd18 --- /dev/null +++ b/spec/rtems/barrier/if/create.yml @@ -0,0 +1,42 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: '%' +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +- Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR) +definition: + default: + body: null + params: + - ${../../type/if/name:/name} ${.:/params[0]/name} + - ${../../attr/if/attribute:/name} ${.:/params[1]/name} + - ${/c/if/uint32_t:/name} ${.:/params[2]/name} + - ${../../type/if/id:/name} *${.:/params[3]/name} + return: ${../../status/if/code:/name} + variants: [] +description: null +enabled-by: true +interface-type: function +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: rtems_barrier_create +notes: null +params: +- description: '%' + dir: null + name: name +- description: '%' + dir: null + name: attribute_set +- description: '%' + dir: null + name: maximum_waiters +- description: '%' + dir: null + name: id +return: + return: null + return-values: [] +type: interface diff --git a/spec/rtems/barrier/if/delete.yml b/spec/rtems/barrier/if/delete.yml new file mode 100644 index 00000000..50bcfd86 --- /dev/null +++ b/spec/rtems/barrier/if/delete.yml @@ -0,0 +1,30 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: '%' +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +- Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR) +definition: + default: + body: null + params: + - ${../../type/if/id:/name} ${.:/params[0]/name} + return: ${../../status/if/code:/name} + variants: [] +description: null +enabled-by: true +interface-type: function +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: rtems_barrier_delete +notes: null +params: +- description: '%' + dir: null + name: id +return: + return: null + return-values: [] +type: interface diff --git a/spec/rtems/barrier/if/group.yml b/spec/rtems/barrier/if/group.yml new file mode 100644 index 00000000..b46c4745 --- /dev/null +++ b/spec/rtems/barrier/if/group.yml @@ -0,0 +1,20 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: | + The Barrier Manager provides a unique synchronization capability which can be + used to have a set of tasks block and be unblocked as a set. +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +- Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR) +description: null +enabled-by: true +identifier: RTEMSAPIClassicBarrier +interface-type: group +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: ../../if/group +name: Barrier Manager +text: | + The Classic API shall provide an interface to the Barrier Manager. +type: interface diff --git a/spec/rtems/barrier/if/header.yml b/spec/rtems/barrier/if/header.yml new file mode 100644 index 00000000..0c34ed64 --- /dev/null +++ b/spec/rtems/barrier/if/header.yml @@ -0,0 +1,12 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: This header file defines the Barrier Manager API. +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +interface-type: header-file +links: +- role: interface-placement + uid: /if/domain +path: rtems/rtems/barrier.h +prefix: cpukit/include +type: interface diff --git a/spec/rtems/barrier/if/ident.yml b/spec/rtems/barrier/if/ident.yml new file mode 100644 index 00000000..5fba7108 --- /dev/null +++ b/spec/rtems/barrier/if/ident.yml @@ -0,0 +1,60 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: | + Identifies a barrier object by the specified object name. +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +- Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR) +definition: + default: + body: null + params: + - ${../../type/if/name:/name} ${.:/params[0]/name} + - ${../../type/if/id:/name} *${.:/params[1]/name} + return: ${../../status/if/code:/name} + variants: [] +description: | + This directive obtains the barrier identifier associated with the barrier + name specified in ``${.:/params[0]/name}``. +enabled-by: true +interface-type: function +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: rtems_barrier_ident +notes: | + If the barrier name is not unique, then the barrier identifier will match the + first barrier with that name in the search order. However, this barrier + identifier is not guaranteed to correspond to the desired barrier. The + barrier identifier is used with other barrier related directives to access + the barrier. + + The objects are searched from lowest to the highest index. Only the local + node is searched. +params: +- description: is the object name to look up. + dir: null + name: name +- description: | + is the pointer to an object identifier variable. The object identifier of + an object with the specified name will be stored in this variable, in case + of a successful operation. + dir: out + name: id +return: + return: null + return-values: + - description: | + The requested operation was successful. + value: ${../../status/if/successful:/name} + - description: | + The ${.:/params[1]/name} parameter was ${/c/if/null:/name}. + value: ${../../status/if/invalid-address:/name} + - description: | + The ${.:/params[0]/name} parameter was 0. + value: ${../../status/if/invalid-name:/name} + - description: | + There was no object with the specified name on the local node. + value: ${../../status/if/invalid-name:/name} +type: interface diff --git a/spec/rtems/barrier/if/release.yml b/spec/rtems/barrier/if/release.yml new file mode 100644 index 00000000..1aa1915c --- /dev/null +++ b/spec/rtems/barrier/if/release.yml @@ -0,0 +1,34 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: '%' +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +- Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR) +definition: + default: + body: null + params: + - ${../../type/if/id:/name} ${.:/params[0]/name} + - ${/c/if/uint32_t:/name} *${.:/params[1]/name} + return: ${../../status/if/code:/name} + variants: [] +description: null +enabled-by: true +interface-type: function +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: rtems_barrier_release +notes: null +params: +- description: '%' + dir: null + name: id +- description: '%' + dir: null + name: released +return: + return: null + return-values: [] +type: interface diff --git a/spec/rtems/barrier/if/wait.yml b/spec/rtems/barrier/if/wait.yml new file mode 100644 index 00000000..acc51cb5 --- /dev/null +++ b/spec/rtems/barrier/if/wait.yml @@ -0,0 +1,34 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: '%' +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +- Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR) +definition: + default: + body: null + params: + - ${../../type/if/id:/name} ${.:/params[0]/name} + - ${../../type/if/interval:/name} ${.:/params[1]/name} + return: ${../../status/if/code:/name} + variants: [] +description: null +enabled-by: true +interface-type: function +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: rtems_barrier_wait +notes: null +params: +- description: '%' + dir: null + name: id +- description: '%' + dir: null + name: timeout +return: + return: null + return-values: [] +type: interface |