summaryrefslogtreecommitdiffstats
path: root/spec/rtems/dpmem/if
diff options
context:
space:
mode:
Diffstat (limited to 'spec/rtems/dpmem/if')
-rw-r--r--spec/rtems/dpmem/if/create.yml46
-rw-r--r--spec/rtems/dpmem/if/delete.yml30
-rw-r--r--spec/rtems/dpmem/if/external-to-internal.yml38
-rw-r--r--spec/rtems/dpmem/if/group.yml21
-rw-r--r--spec/rtems/dpmem/if/header.yml12
-rw-r--r--spec/rtems/dpmem/if/ident.yml59
-rw-r--r--spec/rtems/dpmem/if/internal-to-external.yml38
7 files changed, 244 insertions, 0 deletions
diff --git a/spec/rtems/dpmem/if/create.yml b/spec/rtems/dpmem/if/create.yml
new file mode 100644
index 00000000..4aafe886
--- /dev/null
+++ b/spec/rtems/dpmem/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}
+ - void *${.:/params[1]/name}
+ - void *${.:/params[2]/name}
+ - ${/c/if/uint32_t:/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_port_create
+notes: null
+params:
+- description: '%'
+ dir: null
+ name: name
+- description: '%'
+ dir: null
+ name: internal_start
+- description: '%'
+ dir: null
+ name: external_start
+- description: '%'
+ dir: null
+ name: length
+- description: '%'
+ dir: null
+ name: id
+return:
+ return: null
+ return-values: []
+type: interface
diff --git a/spec/rtems/dpmem/if/delete.yml b/spec/rtems/dpmem/if/delete.yml
new file mode 100644
index 00000000..7489f810
--- /dev/null
+++ b/spec/rtems/dpmem/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_port_delete
+notes: null
+params:
+- description: '%'
+ dir: null
+ name: id
+return:
+ return: null
+ return-values: []
+type: interface
diff --git a/spec/rtems/dpmem/if/external-to-internal.yml b/spec/rtems/dpmem/if/external-to-internal.yml
new file mode 100644
index 00000000..02bb92f3
--- /dev/null
+++ b/spec/rtems/dpmem/if/external-to-internal.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}
+ - void *${.:/params[1]/name}
+ - void **${.:/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_port_external_to_internal
+notes: null
+params:
+- description: '%'
+ dir: null
+ name: id
+- description: '%'
+ dir: null
+ name: external
+- description: '%'
+ dir: null
+ name: internal
+return:
+ return: null
+ return-values: []
+type: interface
diff --git a/spec/rtems/dpmem/if/group.yml b/spec/rtems/dpmem/if/group.yml
new file mode 100644
index 00000000..daa2c4e4
--- /dev/null
+++ b/spec/rtems/dpmem/if/group.yml
@@ -0,0 +1,21 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+brief: |
+ The Dual-Ported Memory Manager provides a mechanism for converting addresses
+ between internal and external representations for multiple dual-ported memory
+ areas (DPMA).
+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: RTEMSAPIClassicDPMem
+interface-type: group
+links:
+- role: interface-placement
+ uid: header
+- role: interface-ingroup
+ uid: ../../if/group
+name: Dual-Ported Memory Manager
+text: |
+ The Classic API shall provide an interface to the Dual-Ported Memory Manager.
+type: interface
diff --git a/spec/rtems/dpmem/if/header.yml b/spec/rtems/dpmem/if/header.yml
new file mode 100644
index 00000000..ba65718b
--- /dev/null
+++ b/spec/rtems/dpmem/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 Dual-Ported Memory 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/dpmem.h
+prefix: cpukit/include
+type: interface
diff --git a/spec/rtems/dpmem/if/ident.yml b/spec/rtems/dpmem/if/ident.yml
new file mode 100644
index 00000000..d013aa0a
--- /dev/null
+++ b/spec/rtems/dpmem/if/ident.yml
@@ -0,0 +1,59 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+brief: |
+ Identifies a port 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 port identifier associated with the port 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_port_ident
+notes: |
+ If the port name is not unique, then the port identifier will match the first
+ port with that name in the search order. However, this port identifier is
+ not guaranteed to correspond to the desired port. The port identifier is
+ used with other dual-ported memory related directives to access the port.
+
+ 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/dpmem/if/internal-to-external.yml b/spec/rtems/dpmem/if/internal-to-external.yml
new file mode 100644
index 00000000..39f8e97c
--- /dev/null
+++ b/spec/rtems/dpmem/if/internal-to-external.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}
+ - void *${.:/params[1]/name}
+ - void **${.:/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_port_internal_to_external
+notes: null
+params:
+- description: '%'
+ dir: null
+ name: id
+- description: '%'
+ dir: null
+ name: internal
+- description: '%'
+ dir: null
+ name: external
+return:
+ return: null
+ return-values: []
+type: interface