summaryrefslogtreecommitdiffstats
path: root/spec/rtems/message/if
diff options
context:
space:
mode:
Diffstat (limited to 'spec/rtems/message/if')
-rw-r--r--spec/rtems/message/if/broadcast.yml42
-rw-r--r--spec/rtems/message/if/create.yml46
-rw-r--r--spec/rtems/message/if/delete.yml30
-rw-r--r--spec/rtems/message/if/flush.yml34
-rw-r--r--spec/rtems/message/if/get-number-pending.yml34
-rw-r--r--spec/rtems/message/if/group.yml20
-rw-r--r--spec/rtems/message/if/header.yml12
-rw-r--r--spec/rtems/message/if/ident.yml86
-rw-r--r--spec/rtems/message/if/receive.yml46
-rw-r--r--spec/rtems/message/if/send.yml38
-rw-r--r--spec/rtems/message/if/urgent.yml38
11 files changed, 426 insertions, 0 deletions
diff --git a/spec/rtems/message/if/broadcast.yml b/spec/rtems/message/if/broadcast.yml
new file mode 100644
index 00000000..ab2e45d0
--- /dev/null
+++ b/spec/rtems/message/if/broadcast.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/id:/name} ${.:/params[0]/name}
+ - const void *${.:/params[1]/name}
+ - ${/c/if/size_t:/name} ${.:/params[2]/name}
+ - ${/c/if/uint32_t:/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_message_queue_broadcast
+notes: null
+params:
+- description: '%'
+ dir: null
+ name: id
+- description: '%'
+ dir: null
+ name: buffer
+- description: '%'
+ dir: null
+ name: size
+- description: '%'
+ dir: null
+ name: count
+return:
+ return: null
+ return-values: []
+type: interface
diff --git a/spec/rtems/message/if/create.yml b/spec/rtems/message/if/create.yml
new file mode 100644
index 00000000..88f0cdb1
--- /dev/null
+++ b/spec/rtems/message/if/create.yml
@@ -0,0 +1,46 @@
+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}
+ - ${/c/if/uint32_t:/name} ${.:/params[1]/name}
+ - ${/c/if/size_t:/name} ${.:/params[2]/name}
+ - ${../../attr/if/attribute:/name} ${.:/params[3]/name}
+ - ${../../type/if/id:/name} *${.:/params[4]/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_message_queue_create
+notes: null
+params:
+- description: '%'
+ dir: null
+ name: name
+- description: '%'
+ dir: null
+ name: count
+- description: '%'
+ dir: null
+ name: max_message_size
+- description: '%'
+ dir: null
+ name: attribute_set
+- description: '%'
+ dir: null
+ name: id
+return:
+ return: null
+ return-values: []
+type: interface
diff --git a/spec/rtems/message/if/delete.yml b/spec/rtems/message/if/delete.yml
new file mode 100644
index 00000000..3e6fb462
--- /dev/null
+++ b/spec/rtems/message/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_message_queue_delete
+notes: null
+params:
+- description: '%'
+ dir: null
+ name: id
+return:
+ return: null
+ return-values: []
+type: interface
diff --git a/spec/rtems/message/if/flush.yml b/spec/rtems/message/if/flush.yml
new file mode 100644
index 00000000..faeb0c81
--- /dev/null
+++ b/spec/rtems/message/if/flush.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_message_queue_flush
+notes: null
+params:
+- description: '%'
+ dir: null
+ name: id
+- description: '%'
+ dir: null
+ name: count
+return:
+ return: null
+ return-values: []
+type: interface
diff --git a/spec/rtems/message/if/get-number-pending.yml b/spec/rtems/message/if/get-number-pending.yml
new file mode 100644
index 00000000..aab16f4d
--- /dev/null
+++ b/spec/rtems/message/if/get-number-pending.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_message_queue_get_number_pending
+notes: null
+params:
+- description: '%'
+ dir: null
+ name: id
+- description: '%'
+ dir: null
+ name: count
+return:
+ return: null
+ return-values: []
+type: interface
diff --git a/spec/rtems/message/if/group.yml b/spec/rtems/message/if/group.yml
new file mode 100644
index 00000000..82c9944d
--- /dev/null
+++ b/spec/rtems/message/if/group.yml
@@ -0,0 +1,20 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+brief: |
+ The Message Manager provides communication and synchronization capabilities
+ using RTEMS message queues.
+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: RTEMSAPIClassicMessage
+interface-type: group
+links:
+- role: interface-placement
+ uid: header
+- role: interface-ingroup
+ uid: ../../if/group
+name: Message Manager
+text: |
+ The Classic API shall provide an interface to the Message Manager.
+type: interface
diff --git a/spec/rtems/message/if/header.yml b/spec/rtems/message/if/header.yml
new file mode 100644
index 00000000..519439da
--- /dev/null
+++ b/spec/rtems/message/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 Message 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/message.h
+prefix: cpukit/include
+type: interface
diff --git a/spec/rtems/message/if/ident.yml b/spec/rtems/message/if/ident.yml
new file mode 100644
index 00000000..a80d93d9
--- /dev/null
+++ b/spec/rtems/message/if/ident.yml
@@ -0,0 +1,86 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+brief: |
+ Identifies a message queue 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}
+ - ${/c/if/uint32_t:/name} ${.:/params[1]/name}
+ - ${../../type/if/id:/name} *${.:/params[2]/name}
+ return: ${../../status/if/code:/name}
+ variants: []
+description: |
+ This directive obtains the message queue identifier associated with the
+ message queue name specified in ``${.:/params[0]/name}``.
+
+ The node to search is specified in ``${.:/params[1]/name}``. It shall be
+
+ * a valid node number,
+
+ * the constant ${../../object/if/search-all-nodes:/name} to search in all nodes,
+
+ * the constant ${../../object/if/search-local-node:/name} to search in the local
+ node only, or
+
+ * the constant ${../../object/if/search-other-nodes:/name} to search in all nodes
+ except the local node.
+enabled-by: true
+interface-type: function
+links:
+- role: interface-placement
+ uid: header
+- role: interface-ingroup
+ uid: group
+name: rtems_message_queue_ident
+notes: |
+ If the message queue name is not unique, then the message queue identifier
+ will match the first message queue with that name in the search order.
+ However, this message queue identifier is not guaranteed to correspond to the
+ desired message queue. The message queue identifier is used with other
+ message related directives to access the message queue.
+
+ If node is ${../../object/if/search-all-nodes:/name}, all nodes are searched with
+ the local node being searched first. All other nodes are searched with the
+ lowest numbered node searched first.
+
+ If node is a valid node number which does not represent the local node, then
+ only the message queues exported by the designated node are searched.
+
+ This directive does not generate activity on remote nodes. It accesses only
+ the local copy of the global object table.
+params:
+- description: is the object name to look up.
+ dir: null
+ name: name
+- description: is the node or node set to search for a matching object.
+ dir: null
+ name: node
+- 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[2]/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 specified nodes.
+ value: ${../../status/if/invalid-name:/name}
+ - description: |
+ In multiprocessing configurations, the specified node was invalid.
+ value: ${../../status/if/invalid-node:/name}
+type: interface
diff --git a/spec/rtems/message/if/receive.yml b/spec/rtems/message/if/receive.yml
new file mode 100644
index 00000000..5c77dedf
--- /dev/null
+++ b/spec/rtems/message/if/receive.yml
@@ -0,0 +1,46 @@
+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}
+ - void *${.:/params[1]/name}
+ - ${/c/if/size_t:/name} *${.:/params[2]/name}
+ - ${../../option/if/option:/name} ${.:/params[3]/name}
+ - ${../../type/if/interval:/name} ${.:/params[4]/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_message_queue_receive
+notes: null
+params:
+- description: '%'
+ dir: null
+ name: id
+- description: '%'
+ dir: null
+ name: buffer
+- description: '%'
+ dir: null
+ name: size
+- description: '%'
+ dir: null
+ name: option_set
+- description: '%'
+ dir: null
+ name: timeout
+return:
+ return: null
+ return-values: []
+type: interface
diff --git a/spec/rtems/message/if/send.yml b/spec/rtems/message/if/send.yml
new file mode 100644
index 00000000..7ce5dd07
--- /dev/null
+++ b/spec/rtems/message/if/send.yml
@@ -0,0 +1,38 @@
+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}
+ - const void *${.:/params[1]/name}
+ - ${/c/if/size_t:/name} ${.:/params[2]/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_message_queue_send
+notes: null
+params:
+- description: '%'
+ dir: null
+ name: id
+- description: '%'
+ dir: null
+ name: buffer
+- description: '%'
+ dir: null
+ name: size
+return:
+ return: null
+ return-values: []
+type: interface
diff --git a/spec/rtems/message/if/urgent.yml b/spec/rtems/message/if/urgent.yml
new file mode 100644
index 00000000..bf21ed90
--- /dev/null
+++ b/spec/rtems/message/if/urgent.yml
@@ -0,0 +1,38 @@
+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}
+ - const void *${.:/params[1]/name}
+ - ${/c/if/size_t:/name} ${.:/params[2]/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_message_queue_urgent
+notes: null
+params:
+- description: '%'
+ dir: null
+ name: id
+- description: '%'
+ dir: null
+ name: buffer
+- description: '%'
+ dir: null
+ name: size
+return:
+ return: null
+ return-values: []
+type: interface