RTEMS 6.1-rc1
mppkt.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: BSD-2-Clause */
2
12/*
13 * COPYRIGHT (c) 1989-2011.
14 * On-Line Applications Research Corporation (OAR).
15 *
16 * Redistribution and use in source and binary forms, with or without
17 * modification, are permitted provided that the following conditions
18 * are met:
19 * 1. Redistributions of source code must retain the above copyright
20 * notice, this list of conditions and the following disclaimer.
21 * 2. Redistributions in binary form must reproduce the above copyright
22 * notice, this list of conditions and the following disclaimer in the
23 * documentation and/or other materials provided with the distribution.
24 *
25 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
26 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
29 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
30 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
31 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
32 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
33 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
34 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
35 * POSSIBILITY OF SUCH DAMAGE.
36 */
37
38#ifndef _RTEMS_SCORE_MPPKT_H
39#define _RTEMS_SCORE_MPPKT_H
40
41#include <rtems/score/object.h>
44
45#ifdef __cplusplus
46extern "C" {
47#endif
48
73typedef enum {
74 MP_PACKET_MPCI_INTERNAL = 0,
75 MP_PACKET_TASKS = 1,
76 MP_PACKET_MESSAGE_QUEUE = 2,
77 MP_PACKET_SEMAPHORE = 3,
78 MP_PACKET_PARTITION = 4,
79 MP_PACKET_REGION = 5,
80 MP_PACKET_EVENT = 6,
81 MP_PACKET_SIGNAL = 7
83
87#define MP_PACKET_CLASSES_FIRST MP_PACKET_MPCI_INTERNAL
88
92#define MP_PACKET_CLASSES_LAST MP_PACKET_SIGNAL
93
102typedef struct {
112 uint32_t return_code;
114 uint32_t length;
116 uint32_t to_convert;
120
124#define MP_PACKET_MINIMUM_PACKET_SIZE 64
125
133#define MP_PACKET_MINIMUN_HETERO_CONVERSION \
134 ( sizeof( MP_packet_Prefix ) / sizeof( uint32_t ) )
135
138#ifdef __cplusplus
139}
140#endif
141
142#endif
143/* end of include file */
MP_packet_Classes
Definition: mppkt.h:73
uint32_t Objects_Id
Definition: object.h:101
uint32_t Watchdog_Interval
Type is used to specify the length of intervals.
Definition: watchdogticks.h:59
This header file provides interfaces of the Priority Handler which are used by the implementation and...
This header file provides interfaces of the Object Handler which are used by the implementation and t...
Definition: mppkt.h:102
Objects_Id source_tid
Definition: mppkt.h:108
uint32_t source_priority
Definition: mppkt.h:110
Objects_Id id
Definition: mppkt.h:106
MP_packet_Classes the_class
Definition: mppkt.h:104
uint32_t to_convert
Definition: mppkt.h:116
Watchdog_Interval timeout
Definition: mppkt.h:118
uint32_t length
Definition: mppkt.h:114
uint32_t return_code
Definition: mppkt.h:112
This header file provides the interfaces of the Watchdog Handler related to watchdog ticks which are ...