summaryrefslogtreecommitdiffstats
path: root/spec/rtems/scheduler/if/add-processor.yml
diff options
context:
space:
mode:
Diffstat (limited to 'spec/rtems/scheduler/if/add-processor.yml')
-rw-r--r--spec/rtems/scheduler/if/add-processor.yml52
1 files changed, 52 insertions, 0 deletions
diff --git a/spec/rtems/scheduler/if/add-processor.yml b/spec/rtems/scheduler/if/add-processor.yml
new file mode 100644
index 00000000..dab967ce
--- /dev/null
+++ b/spec/rtems/scheduler/if/add-processor.yml
@@ -0,0 +1,52 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+brief: |
+ Adds the processor to the set of processors owned by the scheduler instance.
+copyrights:
+- Copyright (C) 2016, 2020 embedded brains GmbH (http://www.embedded-brains.de)
+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: ../../task/if/header
+- role: interface-ingroup
+ uid: ../../task/if/group
+name: rtems_scheduler_add_processor
+notes: |
+ This directive shall be called from task context. It obtains and releases
+ the objects allocator lock.
+params:
+- description: is the scheduler instance identifier.
+ dir: null
+ name: scheduler_id
+- description: is the index of the processor to add.
+ dir: null
+ name: cpu_index
+return:
+ return: null
+ return-values:
+ - description: |
+ The requested operation was successful.
+ value: ${../../status/if/successful:/name}
+ - description: |
+ The processor was configured to be used by the application, however, it
+ was not online.
+ value: ${../../status/if/incorrect-state:/name}
+ - description: |
+ The scheduler instance identifier was invalid.
+ value: ${../../status/if/invalid-id:/name}
+ - description: |
+ The processor was not configured to be used by the application.
+ value: ${../../status/if/not-configured:/name}
+ - description: |
+ The processor was already assigned to a scheduler instance.
+ value: ${../../status/if/resource-in-use:/name}
+type: interface