RTEMS: cpukit/include/rtems/rtems/taskmp.h Source File

| RTEMS 5.4-rc2

Loading...
Searching...
No Matches
taskmp.h
Go to the documentation of this file.
1
10/* COPYRIGHT (c) 1989-2013.
11 * On-Line Applications Research Corporation (OAR).
12 *
13 * The license and distribution terms for this file may be
14 * found in the file LICENSE in this distribution or at
15 * http://www.rtems.org/license/LICENSE.
16 */
17
18#ifndef _RTEMS_RTEMS_TASKMP_H
19#define _RTEMS_RTEMS_TASKMP_H
20
21#ifndef _RTEMS_RTEMS_TASKSIMPL_H
22# error "Never use <rtems/rtems/taskmp.h> directly; include <rtems/rtems/tasksimpl.h> instead."
23#endif
24
25#include <rtems/score/mpciimpl.h>
26
27#ifdef __cplusplus
28extern "C" {
29#endif
30
45 typedef enum {
46 RTEMS_TASKS_MP_ANNOUNCE_CREATE = 0,
47 RTEMS_TASKS_MP_ANNOUNCE_DELETE = 1,
48 RTEMS_TASKS_MP_SUSPEND_REQUEST = 2,
49 RTEMS_TASKS_MP_SUSPEND_RESPONSE = 3,
50 RTEMS_TASKS_MP_RESUME_REQUEST = 4,
51 RTEMS_TASKS_MP_RESUME_RESPONSE = 5,
52 RTEMS_TASKS_MP_SET_PRIORITY_REQUEST = 6,
53 RTEMS_TASKS_MP_SET_PRIORITY_RESPONSE = 7,
54} RTEMS_tasks_MP_Remote_operations;
55
64void _RTEMS_tasks_MP_Send_process_packet (
65 RTEMS_tasks_MP_Remote_operations operation,
66 Objects_Id task_id,
67 rtems_name name
68);
69
73 rtems_status_code _RTEMS_tasks_MP_Set_priority(
74 rtems_id id,
75 rtems_task_priority new_priority,
76 rtems_task_priority *old_priority
77);
78
82 rtems_status_code _RTEMS_tasks_MP_Suspend( rtems_id id );
83
87 rtems_status_code _RTEMS_tasks_MP_Resume( rtems_id id );
88
100/*
101 * _RTEMS_tasks_MP_Send_extract_proxy
102 *
103 * This routine is invoked when a task is deleted and it
104 * has a proxy which must be removed from a thread queue and
105 * the remote node must be informed of this.
106 *
107 * This routine is not needed since there are no objects
108 * deleted by this manager.
109 *
110 */
111
112#ifdef __cplusplus
113}
114#endif
115
118#endif
119/* end of file */
rtems_status_code
rtems_status_code
Classic API Status.
Definition: status.h:43
_RTEMS_tasks_MP_Set_priority
rtems_status_code _RTEMS_tasks_MP_Set_priority(rtems_id id, rtems_task_priority new_priority, rtems_task_priority *old_priority)
Issues a remote rtems_task_set_priority() request.
Definition: taskmp.c:123
RTEMS_tasks_MP_Remote_operations
RTEMS_tasks_MP_Remote_operations
Definition: taskmp.h:45
_RTEMS_tasks_MP_Suspend
rtems_status_code _RTEMS_tasks_MP_Suspend(rtems_id id)
Issues a remote rtems_task_suspend() request.
Definition: taskmp.c:145
_RTEMS_tasks_MP_Resume
rtems_status_code _RTEMS_tasks_MP_Resume(rtems_id id)
Issues a remote rtems_task_resume() request.
Definition: taskmp.c:161
_RTEMS_tasks_MP_Send_process_packet
void _RTEMS_tasks_MP_Send_process_packet(RTEMS_tasks_MP_Remote_operations operation, Objects_Id task_id, rtems_name name)
RTEMS Tasks MP Send Process Packet.
Definition: taskmp.c:67
rtems_name
uint32_t rtems_name
Classic API object name type.
Definition: types.h:77
rtems_task_priority
uint32_t rtems_task_priority
Definition: tasks.h:55
rtems_id
Objects_Id rtems_id
Used to manage and manipulate RTEMS object identifiers.
Definition: types.h:83
Objects_Id
uint32_t Objects_Id
Definition: object.h:80
mpciimpl.h
MPCI Layer Implementation.