diff options
Diffstat (limited to 'spec/if/rtems/scheduler')
-rw-r--r-- | spec/if/rtems/scheduler/add-processor.yml | 52 | ||||
-rw-r--r-- | spec/if/rtems/scheduler/get-maximum-priority.yml | 46 | ||||
-rw-r--r-- | spec/if/rtems/scheduler/get-processor-maximum.yml | 33 | ||||
-rw-r--r-- | spec/if/rtems/scheduler/get-processor-set.yml | 58 | ||||
-rw-r--r-- | spec/if/rtems/scheduler/get-processor.yml | 35 | ||||
-rw-r--r-- | spec/if/rtems/scheduler/ident-by-processor-set.yml | 63 | ||||
-rw-r--r-- | spec/if/rtems/scheduler/ident-by-processor.yml | 51 | ||||
-rw-r--r-- | spec/if/rtems/scheduler/ident.yml | 47 | ||||
-rw-r--r-- | spec/if/rtems/scheduler/map-priority-from-posix.yml | 53 | ||||
-rw-r--r-- | spec/if/rtems/scheduler/map-priority-to-posix.yml | 53 | ||||
-rw-r--r-- | spec/if/rtems/scheduler/remove-processor.yml | 52 |
11 files changed, 0 insertions, 543 deletions
diff --git a/spec/if/rtems/scheduler/add-processor.yml b/spec/if/rtems/scheduler/add-processor.yml deleted file mode 100644 index a13eb90b..00000000 --- a/spec/if/rtems/scheduler/add-processor.yml +++ /dev/null @@ -1,52 +0,0 @@ -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: - - ${../types/id:/name} ${.:/params[0]/name} - - ${/if/c/uint32_t:/name} ${.:/params[1]/name} - return: ${../status/code:/name} - variants: [] -description: null -enabled-by: true -interface-type: function -links: -- role: interface-placement - uid: ../tasks/header -- role: interface-ingroup - uid: ../tasks/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/successful:/name} - - description: | - The processor was configured to be used by the application, however, it - was not online. - value: ${../status/incorrect-state:/name} - - description: | - The scheduler instance identifier was invalid. - value: ${../status/invalid-id:/name} - - description: | - The processor was not configured to be used by the application. - value: ${../status/not-configured:/name} - - description: | - The processor was already assigned to a scheduler instance. - value: ${../status/resource-in-use:/name} -type: interface diff --git a/spec/if/rtems/scheduler/get-maximum-priority.yml b/spec/if/rtems/scheduler/get-maximum-priority.yml deleted file mode 100644 index 60b67db3..00000000 --- a/spec/if/rtems/scheduler/get-maximum-priority.yml +++ /dev/null @@ -1,46 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -brief: | - Gets the maximum task priority of the scheduler instance. -copyrights: -- Copyright (C) 2018, 2020 embedded brains GmbH (http://www.embedded-brains.de) -definition: - default: - body: null - params: - - ${../types/id:/name} ${.:/params[0]/name} - - ${../tasks/priority:/name} *${.:/params[1]/name} - return: ${../status/code:/name} - variants: [] -description: null -enabled-by: true -interface-type: function -links: -- role: interface-placement - uid: ../tasks/header -- role: interface-ingroup - uid: ../tasks/group -name: rtems_scheduler_get_maximum_priority -notes: null -params: -- description: is the scheduler instance identifier. - dir: null - name: scheduler_id -- description: | - is the pointer to a task priority variable. The maximum priority of the - scheduler instance will be stored in this variable, if the operation is - successful. - dir: out - name: priority -return: - return: null - return-values: - - description: | - The requested operation was successful. - value: ${../status/successful:/name} - - description: | - The ${.:/params[1]/name} parameter was ${/if/c/null:/name}. - value: ${../status/invalid-address:/name} - - description: | - The scheduler instance identifier was invalid. - value: ${../status/invalid-id:/name} -type: interface diff --git a/spec/if/rtems/scheduler/get-processor-maximum.yml b/spec/if/rtems/scheduler/get-processor-maximum.yml deleted file mode 100644 index 3c9f6ae4..00000000 --- a/spec/if/rtems/scheduler/get-processor-maximum.yml +++ /dev/null @@ -1,33 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -brief: | - Returns the processor maximum supported by the system. -copyrights: -- Copyright (C) 2013, 2020 embedded brains GmbH (http://www.embedded-brains.de) -definition: - default: ${/if/impl/smp/get-processor-maximum:/name}() - variants: [] -description: | - In uniprocessor configurations, this macro evaluates to a compile time - constant of one. - - In SMP configurations, this macro returns the minimum of the processors - (physically or virtually) available by the platform and the configured - processor maximum. Not all processors in the range from processor index zero - to the last processor index (which is the processor maximum minus one) may be - configured to be used by a scheduler or may be online (online processors have - a scheduler assigned). -enabled-by: true -interface-type: macro -links: -- role: interface-placement - uid: ../tasks/header -- role: interface-ingroup - uid: ../tasks/group -name: rtems_scheduler_get_processor_maximum -notes: null -params: [] -return: - return: | - The processor maximum supported by the system is returned. - return-values: [] -type: interface diff --git a/spec/if/rtems/scheduler/get-processor-set.yml b/spec/if/rtems/scheduler/get-processor-set.yml deleted file mode 100644 index d54af6e8..00000000 --- a/spec/if/rtems/scheduler/get-processor-set.yml +++ /dev/null @@ -1,58 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -brief: | - Gets the set of processors owned by the scheduler instance. -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -- Copyright (C) 1988, 2017 On-Line Applications Research Corporation (OAR) -definition: - default: - body: null - params: - - ${../types/id:/name} ${.:/params[0]/name} - - ${/if/c/size_t:/name} ${.:/params[1]/name} - - ${/if/c/cpu_set_t:/name} *${.:/params[2]/name} - return: ${../status/code:/name} - variants: [] -description: null -enabled-by: true -interface-type: function -links: -- role: interface-placement - uid: ../tasks/header -- role: interface-ingroup - uid: ../tasks/group -name: rtems_scheduler_get_processor_set -notes: null -params: -- description: is the scheduler instance identifier. - dir: null - name: scheduler_id -- description: | - is the size of the referenced processor set variable in bytes. This value - shall be positive. - dir: null - name: cpusetsize -- description: | - is the pointer to a processor set variable. The processor set of the - scheduler instance will be stored in this variable, in case of a successful - operation. A set bit in the processor set means that the corresponding - processor is owned by the scheduler instance, otherwise the bit is cleared. - dir: out - name: cpuset -return: - return: null - return-values: - - description: | - The requested operation was successful. - value: ${../status/successful:/name} - - description: | - The ${.:/params[2]/name} parameter was ${/if/c/null:/name}. - value: ${../status/invalid-address:/name} - - description: | - The scheduler instance identifier was invalid. - value: ${../status/invalid-id:/name} - - description: | - The provided processor set was too small for the set of processors owned - by the scheduler instance. - value: ${../status/invalid-number:/name} -type: interface diff --git a/spec/if/rtems/scheduler/get-processor.yml b/spec/if/rtems/scheduler/get-processor.yml deleted file mode 100644 index 52168a03..00000000 --- a/spec/if/rtems/scheduler/get-processor.yml +++ /dev/null @@ -1,35 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -brief: | - Returns the index of the current processor. -copyrights: -- Copyright (C) 2014, 2020 embedded brains GmbH (http://www.embedded-brains.de) -definition: - default: ${/if/impl/smp/get-current-processor:/name}() - variants: [] -description: | - In uniprocessor configurations, this macro evaluates to a compile time - constant of zero. - - In SMP configurations, an architecture-specific method is used to obtain the - index of the current processor in the system. The set of processor indices - is the range of integers starting with zero up to - ${get-processor-maximum:/name} minus one. -enabled-by: true -interface-type: macro -links: -- role: interface-placement - uid: ../tasks/header -- role: interface-ingroup - uid: ../tasks/group -name: rtems_scheduler_get_processor -notes: | - Outside of sections with disabled thread dispatching the current processor - index may change after every instruction since the thread may migrate from - one processor to another. Sections with disabled interrupts are sections - with thread dispatching disabled. -params: [] -return: - return: | - The index of the current processor is returned. - return-values: [] -type: interface diff --git a/spec/if/rtems/scheduler/ident-by-processor-set.yml b/spec/if/rtems/scheduler/ident-by-processor-set.yml deleted file mode 100644 index bc9e9ff9..00000000 --- a/spec/if/rtems/scheduler/ident-by-processor-set.yml +++ /dev/null @@ -1,63 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -brief: | - Identifies a scheduler instance by a processor set. -copyrights: -- Copyright (C) 2017, 2020 embedded brains GmbH (http://www.embedded-brains.de) -definition: - default: - body: null - params: - - ${/if/c/size_t:/name} ${.:/params[0]/name} - - const ${/if/c/cpu_set_t:/name} *${.:/params[1]/name} - - ${../types/id:/name} *${.:/params[2]/name} - return: ${../status/code:/name} - variants: [] -description: | - The scheduler instance is selected according to the highest numbered online - processor in the specified processor set. -enabled-by: true -interface-type: function -links: -- role: interface-placement - uid: ../tasks/header -- role: interface-ingroup - uid: ../tasks/group -name: rtems_scheduler_ident_by_processor_set -notes: null -params: -- description: | - is the size of the referenced processor set variable in bytes. This value - shall be positive. - dir: null - name: cpusetsize -- description: | - is the pointer to a processor set variable. The referenced processor set - will be used to identify the scheduler instance. - dir: null - name: cpuset -- description: | - is the pointer to an object identifier variable. The identifier of the - scheduler instance 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/successful:/name} - - description: | - The processor set was valid, however, the highest numbered online - processor in the processor set was not owned by a scheduler instance. - value: ${../status/incorrect-state:/name} - - description: | - The ${.:/params[2]/name} parameter was ${/if/c/null:/name}. - value: ${../status/invalid-address:/name} - - description: | - The processor set contained no online processor. - value: ${../status/invalid-name:/name} - - description: | - The processor set size was invalid. - value: ${../status/invalid-size:/name} -type: interface diff --git a/spec/if/rtems/scheduler/ident-by-processor.yml b/spec/if/rtems/scheduler/ident-by-processor.yml deleted file mode 100644 index 1c41f1ee..00000000 --- a/spec/if/rtems/scheduler/ident-by-processor.yml +++ /dev/null @@ -1,51 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -brief: | - Identifies a scheduler instance by a processor index. -copyrights: -- Copyright (C) 2017, 2020 embedded brains GmbH (http://www.embedded-brains.de) -definition: - default: - body: null - params: - - ${/if/c/uint32_t:/name} ${.:/params[0]/name} - - ${../types/id:/name} *${.:/params[1]/name} - return: ${../status/code:/name} - variants: [] -description: null -enabled-by: true -interface-type: function -links: -- role: interface-placement - uid: ../tasks/header -- role: interface-ingroup - uid: ../tasks/group -name: rtems_scheduler_ident_by_processor -notes: null -params: -- description: | - is the processor index to identify the scheduler instance. - dir: null - name: cpu_index -- description: | - is the pointer to an object identifier variable. The identifier of the - scheduler instance 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/successful:/name} - - description: | - The processor index was valid, however, the corresponding processor was - not owned by a scheduler instance. - value: ${../status/incorrect-state:/name} - - description: | - The ${.:/params[1]/name} parameter was ${/if/c/null:/name}. - value: ${../status/invalid-address:/name} - - description: | - The processor index was invalid. - value: ${../status/invalid-name:/name} -type: interface diff --git a/spec/if/rtems/scheduler/ident.yml b/spec/if/rtems/scheduler/ident.yml deleted file mode 100644 index 8136bff3..00000000 --- a/spec/if/rtems/scheduler/ident.yml +++ /dev/null @@ -1,47 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -brief: | - Identifies a scheduler instance by its name. -copyrights: -- Copyright (C) 2014, 2020 embedded brains GmbH (http://www.embedded-brains.de) -definition: - default: - body: null - params: - - ${../types/name:/name} ${.:/params[0]/name} - - ${../types/id:/name} *${.:/params[1]/name} - return: ${../status/code:/name} - variants: [] -description: null -enabled-by: true -interface-type: function -links: -- role: interface-placement - uid: ../tasks/header -- role: interface-ingroup - uid: ../tasks/group -name: rtems_scheduler_ident -notes: | - The scheduler name is determined by the scheduler configuration. -params: -- description: is the scheduler name. - dir: null - name: name -- description: | - is the pointer to an object identifier variable. The identifier of the - scheduler instance 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/successful:/name} - - description: | - The ${.:/params[1]/name} parameter was ${/if/c/null:/name}. - value: ${../status/invalid-address:/name} - - description: | - The scheduler name was invalid. - value: ${../status/invalid-name:/name} -type: interface diff --git a/spec/if/rtems/scheduler/map-priority-from-posix.yml b/spec/if/rtems/scheduler/map-priority-from-posix.yml deleted file mode 100644 index 3280985f..00000000 --- a/spec/if/rtems/scheduler/map-priority-from-posix.yml +++ /dev/null @@ -1,53 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -brief: | - Maps a POSIX thread priority to the corresponding Classic API task priority. -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -definition: - default: - body: null - params: - - ${../types/id:/name} ${.:/params[0]/name} - - int ${.:/params[1]/name} - - ${../tasks/priority:/name} *${.:/params[2]/name} - return: ${../status/code:/name} - variants: [] -description: null -enabled-by: true -interface-type: function -links: -- role: interface-placement - uid: ../tasks/header -- role: interface-ingroup - uid: ../tasks/group -name: rtems_scheduler_map_priority_from_posix -notes: null -params: -- description: is the scheduler instance identifier. - dir: null - name: scheduler_id -- description: is the POSIX thread priority to map. - dir: null - name: posix_priority -- description: | - is the pointer to a Classic API task priority variable. The Classic API - task priority value corresponding to the specified POSIX thread priority - value will be stored in this variable, in case of a successful operation. - dir: out - name: priority -return: - return: null - return-values: - - description: | - The requested operation was successful. - value: ${../status/successful:/name} - - description: | - The ${.:/params[2]/name} parameter was ${/if/c/null:/name}. - value: ${../status/invalid-address:/name} - - description: | - The scheduler instance identifier was invalid. - value: ${../status/invalid-id:/name} - - description: | - The POSIX thread priority was invalid. - value: ${../status/invalid-priority:/name} -type: interface diff --git a/spec/if/rtems/scheduler/map-priority-to-posix.yml b/spec/if/rtems/scheduler/map-priority-to-posix.yml deleted file mode 100644 index ecd1d64e..00000000 --- a/spec/if/rtems/scheduler/map-priority-to-posix.yml +++ /dev/null @@ -1,53 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -brief: | - Maps a Classic API task priority to the corresponding POSIX thread priority. -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -definition: - default: - body: null - params: - - ${../types/id:/name} ${.:/params[0]/name} - - ${../tasks/priority:/name} ${.:/params[1]/name} - - int *${.:/params[2]/name} - return: ${../status/code:/name} - variants: [] -description: null -enabled-by: true -interface-type: function -links: -- role: interface-placement - uid: ../tasks/header -- role: interface-ingroup - uid: ../tasks/group -name: rtems_scheduler_map_priority_to_posix -notes: null -params: -- description: is the scheduler instance identifier. - dir: null - name: scheduler_id -- description: is the Classic API task priority to map. - dir: null - name: priority -- description: | - is the pointer to a POSIX thread priority variable. The POSIX thread - priority value corresponding to the specified Classic API task priority - value will be stored in this variable, in case of a successful operation. - dir: out - name: posix_priority -return: - return: null - return-values: - - description: | - The requested operation was successful. - value: ${../status/successful:/name} - - description: | - The ${.:/params[2]/name} parameter was ${/if/c/null:/name}. - value: ${../status/invalid-address:/name} - - description: | - The scheduler instance identifier was invalid. - value: ${../status/invalid-id:/name} - - description: | - The Classic API task priority was invalid. - value: ${../status/invalid-priority:/name} -type: interface diff --git a/spec/if/rtems/scheduler/remove-processor.yml b/spec/if/rtems/scheduler/remove-processor.yml deleted file mode 100644 index 6fbbde1f..00000000 --- a/spec/if/rtems/scheduler/remove-processor.yml +++ /dev/null @@ -1,52 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -brief: | - Removes a processor from 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: - - ${../types/id:/name} ${.:/params[0]/name} - - ${/if/c/uint32_t:/name} ${.:/params[1]/name} - return: ${../status/code:/name} - variants: [] -description: null -enabled-by: true -interface-type: function -links: -- role: interface-placement - uid: ../tasks/header -- role: interface-ingroup - uid: ../tasks/group -name: rtems_scheduler_remove_processor -notes: | - This directive shall be called from task context. It obtains and releases - the objects allocator lock. Removing a processor from a scheduler instance - is a complex operation that involves all tasks of the system. -params: -- description: is the scheduler instance identifier. - dir: null - name: scheduler_id -- description: is the index of the processor to remove. - dir: null - name: cpu_index -return: - return: null - return-values: - - description: | - The requested operation was successful. - value: ${../status/successful:/name} - - description: | - The scheduler instance identifier was invalid. - value: ${../status/invalid-id:/name} - - description: | - The processor was not owned by the specified scheduler instance. - value: ${../status/invalid-number:/name} - - description: | - The set of processors owned by the specified scheduler instance would - have been empty after the processor removal and there was at least one - non-idle task that used this scheduler instance as its home scheduler - instance. - value: ${../status/resource-in-use:/name} -type: interface |