Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
cntrl_SignalingInterface.h
Go to the documentation of this file.
1 #ifndef CNTRL_SIGNALING_INTERFACE_
2 #define CNTRL_SIGNALING_INTERFACE_
3 
4 #define DSA_REQ 11
5 #define DSA_RSP 12
6 #define DSA_ACK 13
7 #define DSC_REQ 14
8 #define DSC_RSP 15
9 #define DSC_ACK 16
10 #define DSD_REQ 17
11 #define DSD_RSP 18
12 #define DSD_ACK 19
13 #define MAX_CLASSIFIERS_IN_SF 4
14 
15 #define MAX_STRING_LEN 20
16 #define MAX_PHS_LENGTHS 255
17 #define VENDOR_PHS_PARAM_LENGTH 10
18 #define MAX_NUM_ACTIVE_BS 10
19 #define AUTH_TOKEN_LENGTH 10
20 #define NUM_HARQ_CHANNELS 16 /* Changed from 10 to 16 to accommodate all HARQ channels */
21 #define VENDOR_CLASSIFIER_PARAM_LENGTH 1 /* Changed the size to 1 byte since we dnt use it */
22 #define VENDOR_SPECIF_QOS_PARAM 1
23 #define VENDOR_PHS_PARAM_LENGTH 10
24 #define MBS_CONTENTS_ID_LENGTH 10
25 #define GLOBAL_SF_CLASSNAME_LENGTH 6
26 
27 #define TYPE_OF_SERVICE_LENGTH 3
28 #define IP_MASKED_SRC_ADDRESS_LENGTH 32
29 #define IP_MASKED_DEST_ADDRESS_LENGTH 32
30 #define PROTOCOL_SRC_PORT_RANGE_LENGTH 4
31 #define PROTOCOL_DEST_PORT_RANGE_LENGTH 4
32 #define ETHERNET_DEST_MAC_ADDR_LENGTH 12
33 #define ETHERNET_SRC_MAC_ADDR_LENGTH 12
34 #define NUM_ETHERTYPE_BYTES 3
35 #define NUM_IPV6_FLOWLABLE_BYTES 3
36 
38  /* 16bit UserPriority Of The Service Flow */
40  /* 16bit VLANID Of The Service Flow */
42  /* 16bit Packet Classification RuleIndex Of The Service Flow */
44  /* 8bit Classifier Rule Priority Of The Service Flow */
46  /* Length of IP TypeOfService field */
48  /* 3bytes IP TypeOfService */
50  /* Protocol used in classification of Service Flow */
52  /* Length of IP Masked Source Address */
54  /* IP Masked Source Address used in classification for the Service Flow */
56  /* Length of IP Destination Address */
58  /* IP Destination Address used in classification for the Service Flow */
60  /* Length of Protocol Source Port Range */
62  /* Protocol Source Port Range used in the Service Flow */
64  /* Length of Protocol Dest Port Range */
66  /* Protocol Dest Port Range used in the Service Flow */
68  /* Length of Ethernet Destination MAC Address */
70  /* Ethernet Destination MAC Address used in classification of the Service Flow */
72  /* Length of Ethernet Source MAC Address */
74  /* Ethernet Source MAC Address used in classification of the Service Flow */
76  /* Length of Ethertype */
78  /* 3bytes Ethertype Of The Service Flow */
80  /* 8bit Associated PHSI Of The Service Flow */
82  /* Length of Vendor Specific Classifier Param length Of The Service Flow */
84  /* Vendor Specific Classifier Param Of The Service Flow */
86  /* Length Of IPv6 Flow Lable of the Service Flow */
88  /* IPv6 Flow Lable Of The Service Flow */
90  /* Action associated with the classifier rule */
93 };
94 
95 struct bcm_phs_rules {
96  /* 8bit PHS Index Of The Service Flow */
98  /* PHSF Length Of The Service Flow */
100  /* String of bytes containing header information to be suppressed by the sending CS and reconstructed by the receiving CS */
102  /* PHSM Length Of The Service Flow */
104  /* PHS Mask for the SF */
106  /* 8bit Total number of bytes to be suppressed for the Service Flow */
108  /* 8bit Indicates whether or not Packet Header contents need to be verified prior to suppression */
110  /* Vendor Specific PHS param Length Of The Service Flow */
112  /* Vendor Specific PHS param Of The Service Flow */
115 };
116 
118  /* 8bit Phs Classfier Action Of The Service Flow */
120  /* 8bit Phs DSC Action Of The Service Flow */
122  /* 16bit Padding */
124  /* Packet classification rules structure */
126  /* Payload header suppression rules structure */
128 };
129 
131  /* 32bitSFID Of The Service Flow */
133  /* 32bit Maximum Sustained Traffic Rate of the Service Flow */
135  /* 32bit Maximum Traffic Burst allowed for the Service Flow */
137  /* 32bit Minimum Reserved Traffic Rate of the Service Flow */
139  /* 32bit Tolerated Jitter of the Service Flow */
141  /* 32bit Maximum Latency of the Service Flow */
143  /* 16bitCID Of The Service Flow */
145  /* 16bit SAID on which the service flow being set up shall be mapped */
147  /* 16bit ARQ window size negotiated */
149  /* 16bit Total Tx delay incl sending, receiving & processing delays */
151  /* 16bit Total Rx delay incl sending, receiving & processing delays */
153  /* 16bit ARQ block lifetime */
155  /* 16bit ARQ Sync loss timeout */
157  /* 16bit ARQ Purge timeout */
159  /* TODO::Remove this once we move to a new CORR2 driver
160  * brief Size of an ARQ block
161  */
163  /* #endif */
164  /* 16bit Nominal interval b/w consecutive SDU arrivals at MAC SAP */
166  /* 16bit Specifies the time base for rate measurement */
168  /* 16bit Interval b/w Successive Grant oppurtunities */
170  /* 16bit Interval b/w Successive Polling grant oppurtunities */
172  /* internal var to get the overhead */
174  /* MBS contents Identifier */
176  /* MBS contents Identifier length */
178  /* ServiceClassName Length Of The Service Flow */
180  /* 32bytes ServiceClassName Of The Service Flow */
182  /* 8bit Indicates whether or not MBS service is requested for this Serivce Flow */
184  /* 8bit QOS Parameter Set specifies proper application of QoS parameters to Provisioned, Admitted and Active sets */
186  /* 8bit Traffic Priority Of the Service Flow */
188  /* 8bit Uplink Grant Scheduling Type of The Service Flow */
190  /* 8bit Request transmission Policy of the Service Flow */
192  /* 8bit Specifies whether SDUs for this Service flow are of FixedLength or Variable length */
194  /* 8bit Length of the SDU for a fixed length SDU service flow */
196  /* 8bit Indicates whether or not ARQ is requested for this connection */
198  /* < 8bit Indicates whether or not data has tobe delivered in order to higher layer */
200  /* 8bit Receiver ARQ ACK processing time */
202  /* 8bit Convergence Sublayer Specification Of The Service Flow */
204  /* 8 bit Type of data delivery service */
206  /* 8bit Specifies whether a service flow may generate Paging */
208  /* 8bit Indicates the MBS Zone through which the connection or virtual connection is valid */
210  /* 8bit Specifies whether traffic on SF should generate MOB_TRF_IND to MS in sleep mode */
212  /* 8bit Speciifes the length of predefined Global QoS parameter set encoding for this SF */
214  /* 6 byte Speciifes the predefined Global QoS parameter set encoding for this SF */
216  /* 8bit Indicates whether or not SN feedback is enabled for the conn */
218  /* Indicates the size of the Fragment Sequence Number for the connection */
220  /* 8bit Number of CIDs in active BS list */
222  /* CIDs of BS in the active list */
224  /* Specifies if PDU extended subheader should be applied on every PDU on this conn */
226  /* 8bit Specifies whether the connection uses HARQ or not */
228  /* Specifies the length of Authorization token */
230  /* Specifies the Authorization token */
232  /* specifes Number of HARQ channels used to carry data length */
234  /* specifes HARQ channels used to carry data */
236  /* 8bit Length of Vendor Specific QoS Params */
238  /* 1byte Vendor Specific QoS Param Of The Service Flow */
240  /* indicates total classifiers in the SF */
241  B_UINT8 u8TotalClassifiers; /* < Total number of valid classifiers */
242  B_UINT8 bValid; /* < Validity flag */
243  B_UINT8 u8Padding; /* < Padding byte */
244  /*
245  * Structure for Convergence SubLayer Types with a maximum of 4 classifiers
246  */
248 };
249 
251  B_UINT8 u8Type; /* < Type */
252  B_UINT8 eConnectionDir; /* < Connection direction */
253  /* brief 16 bit TID */
254  B_UINT16 u16TID; /* < 16bit TID */
255  /* brief 16bitCID */
256  B_UINT16 u16CID; /* < 16bit CID */
257  /* brief 16bitVCID */
258  B_UINT16 u16VCID; /* < 16bit VCID */
259  struct bcm_connect_mgr_params *psfParameterSet; /* < connection manager parameters */
260 };
261 
263  B_UINT8 u8Type; /* < Type */
264  B_UINT8 eConnectionDir; /* < Connection Direction */
265  /* brief 16 bit TID */
266  B_UINT16 u16TID; /* < TID */
267  /* brief 16bitCID */
268  B_UINT16 u16CID; /* < 16bitCID */
269  /* brief 16bitVCID */
270  B_UINT16 u16VCID; /* < 16bitVCID */
271  struct bcm_connect_mgr_params *psfAuthorizedSet; /* Authorized set of connection manager parameters */
272  struct bcm_connect_mgr_params *psfAdmittedSet; /* Admitted set of connection manager parameters */
273  struct bcm_connect_mgr_params *psfActiveSet; /* Activeset of connection manager parameters */
274  B_UINT8 u8CC; /* <Confirmation Code */
275  B_UINT8 u8Padd; /* < 8-bit Padding */
276  B_UINT16 u16Padd; /* < 16 bit Padding */
277 };
278 
280  B_UINT8 u8Type; /* < Type */
281  B_UINT8 u8Padding; /* < Padding byte */
282  B_UINT16 u16TID; /* < TID */
283  /* brief 32bitSFID */
284  B_UINT32 u32SFID; /* < SFID */
285 };
286 
288  B_UINT8 u8Type; /* < Type */
289  B_UINT8 u8Padding; /* < Padding */
290  B_UINT16 u16TID; /* < TID */
291  /* brief 16bitCID */
292  B_UINT16 u16CID; /* < CID */
293  /* brief 16bitVCID */
294  B_UINT16 u16VCID; /* < VCID */
295  /* brief 32bitSFID */
296  B_UINT32 u32SFID; /* < SFID */
297  /* brief 8bit Confirmation code */
298  B_UINT8 u8ConfirmationCode; /* < Confirmation code */
299  B_UINT8 u8Padding1[3]; /* < 3 byte Padding */
300 };
301 
303  B_UINT32 SFID; /* SFID of the service flow */
304  B_UINT16 newCID; /* the new/changed CID */
305  B_UINT16 VCID; /* Get new Vcid if the flow has been made active in CID update TLV, but was inactive earlier or the orig vcid */
306  B_UINT8 RetainSF; /* Indication to Host if the SF is to be retained or deleted; if TRUE-retain else delete */
307  B_UINT8 QoSParamSet; /* QoS paramset of the retained SF */
308  B_UINT16 u16reserved; /* For byte alignment */
309 };
310 
311 #endif