versadac
1
versadac - Scalable Recorder Firmware
Main Page
Classes
Files
File List
File Members
core
profinet_io
src
addin
mrp
mrp_pkg.h
1
/***************************************************************************************
2
*********** Copyright 2005 Zurich University of Applied Sciences / InES **************
3
***************************************************************************************
4
**
5
** File : mrp_pkg.h
6
**
7
** Description : This file defines constants and needed enums
8
**
9
***************************************************************************************
10
** Department : Institute of Embedded Systems
11
** Project : MRP
12
** Modul : MRP Pkg
13
** Author : Christian Schaer
14
** Contact : scc@zhwin.ch
15
** Date : 10.04.2006
16
****************************** Modifications ******************************************
17
**
18
** Date : Who : Comment :
19
** 10.05.06 scc initial release
20
**************************************************************************************/
21
/* $Workfile:: mrp_pkg.h $*/
22
/* $Revision:: 4 $*/
23
/* $Date:: 16/12/10 14:44 $*/
24
25
#ifndef MRP_PKG_H
26
#define MRP_PKG_H
27
28
29
#include "mrp_datatypes.h"
30
31
#include <stdio.h>
32
/*#include <netinet/in.h>*/
33
34
35
36
37
#define TIMER_TICK_INTERVAL 1
/* Value in ms*/
38
39
40
/*----------------------------------------------------------------------------*/
41
/* mrp_pkg.h */
42
/*----------------------------------------------------------------------------*/
43
struct
MRP_EnvEvent_T
;
44
typedef
struct
MRP_EnvEvent_T
MRP_EnvEvent_T
;
45
46
struct
MRP_Environment_T
;
47
typedef
struct
MRP_Environment_T
MRP_Environment_T
;
48
49
struct
MRP_PDUFrames_T
;
50
typedef
struct
MRP_PDUFrames_T
MRP_PDUFrames_T
;
51
52
struct
MRP_ProtocolEvent_T
;
53
typedef
struct
MRP_ProtocolEvent_T
MRP_ProtocolEvent_T
;
54
55
struct
MRP_ProtocolMachine_T
;
56
typedef
struct
MRP_ProtocolMachine_T
MRP_ProtocolMachine_T
;
57
58
struct
MRP_Timer_T
;
59
typedef
struct
MRP_Timer_T
MRP_Timer_T
;
60
61
struct
MRP_FrameAnalyser_T
;
62
typedef
struct
MRP_FrameAnalyser_T
MRP_FrameAnalyser_T
;
63
64
struct
MRP_PDU_T
;
65
typedef
struct
MRP_PDU_T
MRP_PDU_T
;
66
67
struct
MRP_QueueSynchronized_T;
68
typedef
struct
MRP_QueueSynchronized_T MRP_QueueSynchronized_T;
69
70
struct
MRP_Domain_T
;
71
typedef
struct
MRP_Domain_T
MRP_Domain_T
;
72
73
struct
MRP_ForwardingDataBaseItf_T;
74
typedef
struct
MRP_ForwardingDataBaseItf_T MRP_ForwardingDataBaseItf_T;
75
76
struct
MRP_PortItf_T;
77
struct
MRP_ForwardingDataBaseItf_T;
78
79
80
typedef
struct
DomainID
DomainID
;
81
struct
DomainID
82
{
83
Unsigned32 Data1;
84
Unsigned16 Data2;
85
Unsigned16 Data3;
86
Unsigned8 Data4[8];
87
};
88
89
typedef
struct
DomainID
ST_MRP_UUID
, *
LPST_MRP_UUID
;
90
91
typedef
enum
MRPPortRole {
92
MRP_PRIMARY,
93
MRP_SECONDARY
94
} MRPPortRole;
95
96
typedef
enum
MRPRoleState
97
{
98
MRP_CLIENT,
99
MRP_MANAGER
100
} MRPRoleState;
101
102
typedef
enum
MRPRingState
103
{
104
MRP_RING_OPEN_STATE,
105
MRP_RING_CLOSED_STATE,
106
MRP_RING_UNDEFINED_STATE
107
} MRPRingState;
108
109
typedef
enum
MRPPortState
110
{
111
MRP_DISABLED = 1,
112
MRP_BLOCKED,
113
MRP_FORWARDING
114
} MRPPortState;
115
116
typedef
enum
MRPLinkState
117
{
118
MRP_LNK_DOWN,
119
MRP_LNK_UP
120
} MRPLinkState;
121
122
typedef
enum
MRPError
123
{
124
MRP_NO_ERROR,
125
MRP_NOT_INITIALISED,
126
MRP_NOT_ENABLED,
127
MRP_DOMAIN_ID_MISMATCH,
128
MRP_ROLE_NOT_SUPPORTED,
129
MRP_INVALID_RINGPORT,
130
MRP_MANAGER_ROLE_FAIL,
131
MRP_CLIENT_ROLE_FAIL,
132
MRP_RING_OPEN,
133
MRP_MULTIPLE_MANAGERS,
134
MRP_MANAGER_READ_FAIL,
135
MRP_CLIENT_READ_FAIL,
136
MRP_INTERNAL_ERROR
137
} MRPError;
138
139
140
#define MRP_VER 0x0001
141
#define MRP_LT 0x88E3
142
#define MRP_VLAN_LT 0x8100
143
#define MRP_VLAN_PRIORITY 0x07
144
#define MRP_FDB_PRIORITY 0xFFFF
145
146
#define MRP_END_TLV_TYPE 0x00
147
#define MRP_COMMON_TLV_TYPE 0x01
148
#define MRP_TEST_TLV_TYPE 0x02
149
#define MRP_TOPOLOGYCHANGE_TLV_TYPE 0x03
150
#define MRP_LINKDOWN_TLV_TYPE 0x04
151
#define MRP_LINKUP_TLV_TYPE 0x05
152
#define MRP_OPTION_TLV_TYPE 0x7F
153
154
#define MRP_ENV_EVENT_QUEUE_SIZE 64
155
#define MRP_FRAME_BUFFER_SIZE 100
156
#define MRP_REACT_ON_LINK_CHANGE 1
157
#define MRP_BLOCKED_SUPPORTED 1
158
159
#define MRP_DOMAIN_COUNT 2
160
161
/* Helper Functions */
162
MRPBoolean equals(UChar var1[], UChar var2[],
int
n );
163
MRPBoolean compareDomainID(
DomainID
* id1,
DomainID
* id2);
164
165
166
#endif
167
168
169
170
171
MRP_Environment_T
Definition:
mrp_environment.h:44
MRP_Timer_T
Definition:
mrp_timer.h:47
MRP_PDUFrames_T
Definition:
mrp_pduframes.h:40
MRP_PDU_T
Definition:
mrp_pdu.h:118
MRP_ProtocolMachine_T
Definition:
mrp_protocolmachine.h:61
DomainID
Definition:
mrp_pkg.h:81
MRP_Domain_T
Definition:
mrp_domain.h:54
MRP_EnvEvent_T
Definition:
mrp_envevent.h:53
MRP_FrameAnalyser_T
Definition:
mrp_frameanalyser.h:41
MRP_ProtocolEvent_T
Definition:
mrp_protocolevent.h:79
Generated on Wed Aug 19 2020 10:33:44 for versadac by
1.8.9.1