Root/drivers/staging/csr/csr_wifi_router_ctrl_lib.h

1/*****************************************************************************
2
3            (c) Cambridge Silicon Radio Limited 2012
4            All rights reserved and confidential information of CSR
5
6            Refer to LICENSE.txt included with this source for details
7            on the license terms.
8
9*****************************************************************************/
10
11/* Note: this is an auto-generated file. */
12
13#ifndef CSR_WIFI_ROUTER_CTRL_LIB_H__
14#define CSR_WIFI_ROUTER_CTRL_LIB_H__
15
16#include "csr_sched.h"
17#include "csr_macro.h"
18#include "csr_msg_transport.h"
19
20#include "csr_wifi_lib.h"
21
22#include "csr_wifi_router_ctrl_prim.h"
23#include "csr_wifi_router_task.h"
24
25
26#ifdef __cplusplus
27extern "C" {
28#endif
29
30/*----------------------------------------------------------------------------*
31 * CsrWifiRouterCtrlFreeUpstreamMessageContents
32 *
33 * DESCRIPTION
34 * Free the allocated memory in a CSR_WIFI_ROUTER_CTRL upstream message. Does not
35 * free the message itself, and can only be used for upstream messages.
36 *
37 * PARAMETERS
38 * Deallocates the resources in a CSR_WIFI_ROUTER_CTRL upstream message
39 *----------------------------------------------------------------------------*/
40void CsrWifiRouterCtrlFreeUpstreamMessageContents(u16 eventClass, void *message);
41
42/*----------------------------------------------------------------------------*
43 * CsrWifiRouterCtrlFreeDownstreamMessageContents
44 *
45 * DESCRIPTION
46 * Free the allocated memory in a CSR_WIFI_ROUTER_CTRL downstream message. Does not
47 * free the message itself, and can only be used for downstream messages.
48 *
49 * PARAMETERS
50 * Deallocates the resources in a CSR_WIFI_ROUTER_CTRL downstream message
51 *----------------------------------------------------------------------------*/
52void CsrWifiRouterCtrlFreeDownstreamMessageContents(u16 eventClass, void *message);
53
54/*----------------------------------------------------------------------------*
55 * Enum to string functions
56 *----------------------------------------------------------------------------*/
57const char* CsrWifiRouterCtrlBlockAckRoleToString(CsrWifiRouterCtrlBlockAckRole value);
58const char* CsrWifiRouterCtrlControlIndicationToString(CsrWifiRouterCtrlControlIndication value);
59const char* CsrWifiRouterCtrlListActionToString(CsrWifiRouterCtrlListAction value);
60const char* CsrWifiRouterCtrlLowPowerModeToString(CsrWifiRouterCtrlLowPowerMode value);
61const char* CsrWifiRouterCtrlMediaStatusToString(CsrWifiRouterCtrlMediaStatus value);
62const char* CsrWifiRouterCtrlModeToString(CsrWifiRouterCtrlMode value);
63const char* CsrWifiRouterCtrlPeerStatusToString(CsrWifiRouterCtrlPeerStatus value);
64const char* CsrWifiRouterCtrlPortActionToString(CsrWifiRouterCtrlPortAction value);
65const char* CsrWifiRouterCtrlPowersaveTypeToString(CsrWifiRouterCtrlPowersaveType value);
66const char* CsrWifiRouterCtrlProtocolDirectionToString(CsrWifiRouterCtrlProtocolDirection value);
67const char* CsrWifiRouterCtrlQoSControlToString(CsrWifiRouterCtrlQoSControl value);
68const char* CsrWifiRouterCtrlQueueConfigToString(CsrWifiRouterCtrlQueueConfig value);
69const char* CsrWifiRouterCtrlTrafficConfigTypeToString(CsrWifiRouterCtrlTrafficConfigType value);
70const char* CsrWifiRouterCtrlTrafficPacketTypeToString(CsrWifiRouterCtrlTrafficPacketType value);
71const char* CsrWifiRouterCtrlTrafficTypeToString(CsrWifiRouterCtrlTrafficType value);
72
73
74/*----------------------------------------------------------------------------*
75 * CsrPrim Type toString function.
76 * Converts a message type to the String name of the Message
77 *----------------------------------------------------------------------------*/
78const char* CsrWifiRouterCtrlPrimTypeToString(CsrPrim msgType);
79
80/*----------------------------------------------------------------------------*
81 * Lookup arrays for PrimType name Strings
82 *----------------------------------------------------------------------------*/
83extern const char *CsrWifiRouterCtrlUpstreamPrimNames[CSR_WIFI_ROUTER_CTRL_PRIM_UPSTREAM_COUNT];
84extern const char *CsrWifiRouterCtrlDownstreamPrimNames[CSR_WIFI_ROUTER_CTRL_PRIM_DOWNSTREAM_COUNT];
85
86/*******************************************************************************
87
88  NAME
89    CsrWifiRouterCtrlBlockAckDisableReqSend
90
91  DESCRIPTION
92
93  PARAMETERS
94    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
95    interfaceTag -
96    clientData -
97    macAddress -
98    trafficStreamID -
99    role -
100
101*******************************************************************************/
102#define CsrWifiRouterCtrlBlockAckDisableReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, macAddress__, trafficStreamID__, role__) \
103    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlBlockAckDisableReq), GFP_KERNEL); \
104    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_BLOCK_ACK_DISABLE_REQ, dst__, src__); \
105    msg__->interfaceTag = (interfaceTag__); \
106    msg__->clientData = (clientData__); \
107    msg__->macAddress = (macAddress__); \
108    msg__->trafficStreamID = (trafficStreamID__); \
109    msg__->role = (role__);
110
111#define CsrWifiRouterCtrlBlockAckDisableReqSendTo(dst__, src__, interfaceTag__, clientData__, macAddress__, trafficStreamID__, role__) \
112    { \
113        CsrWifiRouterCtrlBlockAckDisableReq *msg__; \
114        CsrWifiRouterCtrlBlockAckDisableReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, macAddress__, trafficStreamID__, role__); \
115        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
116    }
117
118#define CsrWifiRouterCtrlBlockAckDisableReqSend(src__, interfaceTag__, clientData__, macAddress__, trafficStreamID__, role__) \
119    CsrWifiRouterCtrlBlockAckDisableReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, interfaceTag__, clientData__, macAddress__, trafficStreamID__, role__)
120
121/*******************************************************************************
122
123  NAME
124    CsrWifiRouterCtrlBlockAckDisableCfmSend
125
126  DESCRIPTION
127
128  PARAMETERS
129    queue - Destination Task Queue
130    clientData -
131    interfaceTag -
132    status -
133
134*******************************************************************************/
135#define CsrWifiRouterCtrlBlockAckDisableCfmCreate(msg__, dst__, src__, clientData__, interfaceTag__, status__) \
136    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlBlockAckDisableCfm), GFP_KERNEL); \
137    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_BLOCK_ACK_DISABLE_CFM, dst__, src__); \
138    msg__->clientData = (clientData__); \
139    msg__->interfaceTag = (interfaceTag__); \
140    msg__->status = (status__);
141
142#define CsrWifiRouterCtrlBlockAckDisableCfmSendTo(dst__, src__, clientData__, interfaceTag__, status__) \
143    { \
144        CsrWifiRouterCtrlBlockAckDisableCfm *msg__; \
145        CsrWifiRouterCtrlBlockAckDisableCfmCreate(msg__, dst__, src__, clientData__, interfaceTag__, status__); \
146        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
147    }
148
149#define CsrWifiRouterCtrlBlockAckDisableCfmSend(dst__, clientData__, interfaceTag__, status__) \
150    CsrWifiRouterCtrlBlockAckDisableCfmSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, status__)
151
152/*******************************************************************************
153
154  NAME
155    CsrWifiRouterCtrlBlockAckEnableReqSend
156
157  DESCRIPTION
158
159  PARAMETERS
160    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
161    interfaceTag -
162    clientData -
163    macAddress -
164    trafficStreamID -
165    role -
166    bufferSize -
167    timeout -
168    ssn -
169
170*******************************************************************************/
171#define CsrWifiRouterCtrlBlockAckEnableReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, macAddress__, trafficStreamID__, role__, bufferSize__, timeout__, ssn__) \
172    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlBlockAckEnableReq), GFP_KERNEL); \
173    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_BLOCK_ACK_ENABLE_REQ, dst__, src__); \
174    msg__->interfaceTag = (interfaceTag__); \
175    msg__->clientData = (clientData__); \
176    msg__->macAddress = (macAddress__); \
177    msg__->trafficStreamID = (trafficStreamID__); \
178    msg__->role = (role__); \
179    msg__->bufferSize = (bufferSize__); \
180    msg__->timeout = (timeout__); \
181    msg__->ssn = (ssn__);
182
183#define CsrWifiRouterCtrlBlockAckEnableReqSendTo(dst__, src__, interfaceTag__, clientData__, macAddress__, trafficStreamID__, role__, bufferSize__, timeout__, ssn__) \
184    { \
185        CsrWifiRouterCtrlBlockAckEnableReq *msg__; \
186        CsrWifiRouterCtrlBlockAckEnableReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, macAddress__, trafficStreamID__, role__, bufferSize__, timeout__, ssn__); \
187        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
188    }
189
190#define CsrWifiRouterCtrlBlockAckEnableReqSend(src__, interfaceTag__, clientData__, macAddress__, trafficStreamID__, role__, bufferSize__, timeout__, ssn__) \
191    CsrWifiRouterCtrlBlockAckEnableReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, interfaceTag__, clientData__, macAddress__, trafficStreamID__, role__, bufferSize__, timeout__, ssn__)
192
193/*******************************************************************************
194
195  NAME
196    CsrWifiRouterCtrlBlockAckEnableCfmSend
197
198  DESCRIPTION
199
200  PARAMETERS
201    queue - Destination Task Queue
202    clientData -
203    interfaceTag -
204    status -
205
206*******************************************************************************/
207#define CsrWifiRouterCtrlBlockAckEnableCfmCreate(msg__, dst__, src__, clientData__, interfaceTag__, status__) \
208    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlBlockAckEnableCfm), GFP_KERNEL); \
209    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_BLOCK_ACK_ENABLE_CFM, dst__, src__); \
210    msg__->clientData = (clientData__); \
211    msg__->interfaceTag = (interfaceTag__); \
212    msg__->status = (status__);
213
214#define CsrWifiRouterCtrlBlockAckEnableCfmSendTo(dst__, src__, clientData__, interfaceTag__, status__) \
215    { \
216        CsrWifiRouterCtrlBlockAckEnableCfm *msg__; \
217        CsrWifiRouterCtrlBlockAckEnableCfmCreate(msg__, dst__, src__, clientData__, interfaceTag__, status__); \
218        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
219    }
220
221#define CsrWifiRouterCtrlBlockAckEnableCfmSend(dst__, clientData__, interfaceTag__, status__) \
222    CsrWifiRouterCtrlBlockAckEnableCfmSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, status__)
223
224/*******************************************************************************
225
226  NAME
227    CsrWifiRouterCtrlBlockAckErrorIndSend
228
229  DESCRIPTION
230
231  PARAMETERS
232    queue - Destination Task Queue
233    clientData -
234    interfaceTag -
235    trafficStreamID -
236    peerMacAddress -
237    status -
238
239*******************************************************************************/
240#define CsrWifiRouterCtrlBlockAckErrorIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, trafficStreamID__, peerMacAddress__, status__) \
241    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlBlockAckErrorInd), GFP_KERNEL); \
242    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_BLOCK_ACK_ERROR_IND, dst__, src__); \
243    msg__->clientData = (clientData__); \
244    msg__->interfaceTag = (interfaceTag__); \
245    msg__->trafficStreamID = (trafficStreamID__); \
246    msg__->peerMacAddress = (peerMacAddress__); \
247    msg__->status = (status__);
248
249#define CsrWifiRouterCtrlBlockAckErrorIndSendTo(dst__, src__, clientData__, interfaceTag__, trafficStreamID__, peerMacAddress__, status__) \
250    { \
251        CsrWifiRouterCtrlBlockAckErrorInd *msg__; \
252        CsrWifiRouterCtrlBlockAckErrorIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, trafficStreamID__, peerMacAddress__, status__); \
253        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
254    }
255
256#define CsrWifiRouterCtrlBlockAckErrorIndSend(dst__, clientData__, interfaceTag__, trafficStreamID__, peerMacAddress__, status__) \
257    CsrWifiRouterCtrlBlockAckErrorIndSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, trafficStreamID__, peerMacAddress__, status__)
258
259/*******************************************************************************
260
261  NAME
262    CsrWifiRouterCtrlCapabilitiesReqSend
263
264  DESCRIPTION
265
266  PARAMETERS
267    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
268    clientData -
269
270*******************************************************************************/
271#define CsrWifiRouterCtrlCapabilitiesReqCreate(msg__, dst__, src__, clientData__) \
272    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlCapabilitiesReq), GFP_KERNEL); \
273    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_CAPABILITIES_REQ, dst__, src__); \
274    msg__->clientData = (clientData__);
275
276#define CsrWifiRouterCtrlCapabilitiesReqSendTo(dst__, src__, clientData__) \
277    { \
278        CsrWifiRouterCtrlCapabilitiesReq *msg__; \
279        CsrWifiRouterCtrlCapabilitiesReqCreate(msg__, dst__, src__, clientData__); \
280        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
281    }
282
283#define CsrWifiRouterCtrlCapabilitiesReqSend(src__, clientData__) \
284    CsrWifiRouterCtrlCapabilitiesReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, clientData__)
285
286/*******************************************************************************
287
288  NAME
289    CsrWifiRouterCtrlCapabilitiesCfmSend
290
291  DESCRIPTION
292    The router sends this primitive to confirm the size of the queues of the
293    HIP.
294
295  PARAMETERS
296    queue - Destination Task Queue
297    clientData -
298    commandQueueSize - Size of command queue
299    trafficQueueSize - Size of traffic queue (per AC)
300
301*******************************************************************************/
302#define CsrWifiRouterCtrlCapabilitiesCfmCreate(msg__, dst__, src__, clientData__, commandQueueSize__, trafficQueueSize__) \
303    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlCapabilitiesCfm), GFP_KERNEL); \
304    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_CAPABILITIES_CFM, dst__, src__); \
305    msg__->clientData = (clientData__); \
306    msg__->commandQueueSize = (commandQueueSize__); \
307    msg__->trafficQueueSize = (trafficQueueSize__);
308
309#define CsrWifiRouterCtrlCapabilitiesCfmSendTo(dst__, src__, clientData__, commandQueueSize__, trafficQueueSize__) \
310    { \
311        CsrWifiRouterCtrlCapabilitiesCfm *msg__; \
312        CsrWifiRouterCtrlCapabilitiesCfmCreate(msg__, dst__, src__, clientData__, commandQueueSize__, trafficQueueSize__); \
313        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
314    }
315
316#define CsrWifiRouterCtrlCapabilitiesCfmSend(dst__, clientData__, commandQueueSize__, trafficQueueSize__) \
317    CsrWifiRouterCtrlCapabilitiesCfmSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, commandQueueSize__, trafficQueueSize__)
318
319/*******************************************************************************
320
321  NAME
322    CsrWifiRouterCtrlConfigurePowerModeReqSend
323
324  DESCRIPTION
325
326  PARAMETERS
327    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
328    clientData -
329    mode -
330    wakeHost -
331
332*******************************************************************************/
333#define CsrWifiRouterCtrlConfigurePowerModeReqCreate(msg__, dst__, src__, clientData__, mode__, wakeHost__) \
334    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlConfigurePowerModeReq), GFP_KERNEL); \
335    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_CONFIGURE_POWER_MODE_REQ, dst__, src__); \
336    msg__->clientData = (clientData__); \
337    msg__->mode = (mode__); \
338    msg__->wakeHost = (wakeHost__);
339
340#define CsrWifiRouterCtrlConfigurePowerModeReqSendTo(dst__, src__, clientData__, mode__, wakeHost__) \
341    { \
342        CsrWifiRouterCtrlConfigurePowerModeReq *msg__; \
343        CsrWifiRouterCtrlConfigurePowerModeReqCreate(msg__, dst__, src__, clientData__, mode__, wakeHost__); \
344        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
345    }
346
347#define CsrWifiRouterCtrlConfigurePowerModeReqSend(src__, clientData__, mode__, wakeHost__) \
348    CsrWifiRouterCtrlConfigurePowerModeReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, clientData__, mode__, wakeHost__)
349
350/*******************************************************************************
351
352  NAME
353    CsrWifiRouterCtrlConnectedIndSend
354
355  DESCRIPTION
356
357  PARAMETERS
358    queue - Destination Task Queue
359    clientData -
360    interfaceTag -
361    peerMacAddress -
362    peerStatus -
363
364*******************************************************************************/
365#define CsrWifiRouterCtrlConnectedIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, peerMacAddress__, peerStatus__) \
366    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlConnectedInd), GFP_KERNEL); \
367    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_CONNECTED_IND, dst__, src__); \
368    msg__->clientData = (clientData__); \
369    msg__->interfaceTag = (interfaceTag__); \
370    msg__->peerMacAddress = (peerMacAddress__); \
371    msg__->peerStatus = (peerStatus__);
372
373#define CsrWifiRouterCtrlConnectedIndSendTo(dst__, src__, clientData__, interfaceTag__, peerMacAddress__, peerStatus__) \
374    { \
375        CsrWifiRouterCtrlConnectedInd *msg__; \
376        CsrWifiRouterCtrlConnectedIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, peerMacAddress__, peerStatus__); \
377        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
378    }
379
380#define CsrWifiRouterCtrlConnectedIndSend(dst__, clientData__, interfaceTag__, peerMacAddress__, peerStatus__) \
381    CsrWifiRouterCtrlConnectedIndSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, peerMacAddress__, peerStatus__)
382
383/*******************************************************************************
384
385  NAME
386    CsrWifiRouterCtrlHipReqSend
387
388  DESCRIPTION
389    This primitive is used for transferring MLME messages to the HIP.
390
391  PARAMETERS
392    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
393    mlmeCommandLength - Length of the MLME signal
394    mlmeCommand - Pointer to the MLME signal
395    dataRef1Length - Length of the dataRef1 bulk data
396    dataRef1 - Pointer to the bulk data 1
397    dataRef2Length - Length of the dataRef2 bulk data
398    dataRef2 - Pointer to the bulk data 2
399
400*******************************************************************************/
401#define CsrWifiRouterCtrlHipReqCreate(msg__, dst__, src__, mlmeCommandLength__, mlmeCommand__, dataRef1Length__, dataRef1__, dataRef2Length__, dataRef2__) \
402    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlHipReq), GFP_KERNEL); \
403    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_HIP_REQ, dst__, src__); \
404    msg__->mlmeCommandLength = (mlmeCommandLength__); \
405    msg__->mlmeCommand = (mlmeCommand__); \
406    msg__->dataRef1Length = (dataRef1Length__); \
407    msg__->dataRef1 = (dataRef1__); \
408    msg__->dataRef2Length = (dataRef2Length__); \
409    msg__->dataRef2 = (dataRef2__);
410
411#define CsrWifiRouterCtrlHipReqSendTo(dst__, src__, mlmeCommandLength__, mlmeCommand__, dataRef1Length__, dataRef1__, dataRef2Length__, dataRef2__) \
412    { \
413        CsrWifiRouterCtrlHipReq *msg__; \
414        CsrWifiRouterCtrlHipReqCreate(msg__, dst__, src__, mlmeCommandLength__, mlmeCommand__, dataRef1Length__, dataRef1__, dataRef2Length__, dataRef2__); \
415        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
416    }
417
418#define CsrWifiRouterCtrlHipReqSend(src__, mlmeCommandLength__, mlmeCommand__, dataRef1Length__, dataRef1__, dataRef2Length__, dataRef2__) \
419    CsrWifiRouterCtrlHipReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, mlmeCommandLength__, mlmeCommand__, dataRef1Length__, dataRef1__, dataRef2Length__, dataRef2__)
420
421/*******************************************************************************
422
423  NAME
424    CsrWifiRouterCtrlHipIndSend
425
426  DESCRIPTION
427    This primitive is used for transferring MLME messages from the HIP.
428
429  PARAMETERS
430    queue - Destination Task Queue
431    mlmeCommandLength - Length of the MLME signal
432    mlmeCommand - Pointer to the MLME signal
433    dataRef1Length - Length of the dataRef1 bulk data
434    dataRef1 - Pointer to the bulk data 1
435    dataRef2Length - Length of the dataRef2 bulk data
436    dataRef2 - Pointer to the bulk data 2
437
438*******************************************************************************/
439#define CsrWifiRouterCtrlHipIndCreate(msg__, dst__, src__, mlmeCommandLength__, mlmeCommand__, dataRef1Length__, dataRef1__, dataRef2Length__, dataRef2__) \
440    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlHipInd), GFP_KERNEL); \
441    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_HIP_IND, dst__, src__); \
442    msg__->mlmeCommandLength = (mlmeCommandLength__); \
443    msg__->mlmeCommand = (mlmeCommand__); \
444    msg__->dataRef1Length = (dataRef1Length__); \
445    msg__->dataRef1 = (dataRef1__); \
446    msg__->dataRef2Length = (dataRef2Length__); \
447    msg__->dataRef2 = (dataRef2__);
448
449#define CsrWifiRouterCtrlHipIndSendTo(dst__, src__, mlmeCommandLength__, mlmeCommand__, dataRef1Length__, dataRef1__, dataRef2Length__, dataRef2__) \
450    { \
451        CsrWifiRouterCtrlHipInd *msg__; \
452        CsrWifiRouterCtrlHipIndCreate(msg__, dst__, src__, mlmeCommandLength__, mlmeCommand__, dataRef1Length__, dataRef1__, dataRef2Length__, dataRef2__); \
453        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
454    }
455
456#define CsrWifiRouterCtrlHipIndSend(dst__, mlmeCommandLength__, mlmeCommand__, dataRef1Length__, dataRef1__, dataRef2Length__, dataRef2__) \
457    CsrWifiRouterCtrlHipIndSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, mlmeCommandLength__, mlmeCommand__, dataRef1Length__, dataRef1__, dataRef2Length__, dataRef2__)
458
459/*******************************************************************************
460
461  NAME
462    CsrWifiRouterCtrlM4ReadyToSendIndSend
463
464  DESCRIPTION
465
466  PARAMETERS
467    queue - Destination Task Queue
468    clientData -
469    interfaceTag -
470    peerMacAddress -
471
472*******************************************************************************/
473#define CsrWifiRouterCtrlM4ReadyToSendIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, peerMacAddress__) \
474    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlM4ReadyToSendInd), GFP_KERNEL); \
475    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_M4_READY_TO_SEND_IND, dst__, src__); \
476    msg__->clientData = (clientData__); \
477    msg__->interfaceTag = (interfaceTag__); \
478    msg__->peerMacAddress = (peerMacAddress__);
479
480#define CsrWifiRouterCtrlM4ReadyToSendIndSendTo(dst__, src__, clientData__, interfaceTag__, peerMacAddress__) \
481    { \
482        CsrWifiRouterCtrlM4ReadyToSendInd *msg__; \
483        CsrWifiRouterCtrlM4ReadyToSendIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, peerMacAddress__); \
484        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
485    }
486
487#define CsrWifiRouterCtrlM4ReadyToSendIndSend(dst__, clientData__, interfaceTag__, peerMacAddress__) \
488    CsrWifiRouterCtrlM4ReadyToSendIndSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, peerMacAddress__)
489
490/*******************************************************************************
491
492  NAME
493    CsrWifiRouterCtrlM4TransmitReqSend
494
495  DESCRIPTION
496
497  PARAMETERS
498    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
499    interfaceTag -
500    clientData -
501
502*******************************************************************************/
503#define CsrWifiRouterCtrlM4TransmitReqCreate(msg__, dst__, src__, interfaceTag__, clientData__) \
504    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlM4TransmitReq), GFP_KERNEL); \
505    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_M4_TRANSMIT_REQ, dst__, src__); \
506    msg__->interfaceTag = (interfaceTag__); \
507    msg__->clientData = (clientData__);
508
509#define CsrWifiRouterCtrlM4TransmitReqSendTo(dst__, src__, interfaceTag__, clientData__) \
510    { \
511        CsrWifiRouterCtrlM4TransmitReq *msg__; \
512        CsrWifiRouterCtrlM4TransmitReqCreate(msg__, dst__, src__, interfaceTag__, clientData__); \
513        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
514    }
515
516#define CsrWifiRouterCtrlM4TransmitReqSend(src__, interfaceTag__, clientData__) \
517    CsrWifiRouterCtrlM4TransmitReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, interfaceTag__, clientData__)
518
519/*******************************************************************************
520
521  NAME
522    CsrWifiRouterCtrlM4TransmittedIndSend
523
524  DESCRIPTION
525
526  PARAMETERS
527    queue - Destination Task Queue
528    clientData -
529    interfaceTag -
530    peerMacAddress -
531    status -
532
533*******************************************************************************/
534#define CsrWifiRouterCtrlM4TransmittedIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, peerMacAddress__, status__) \
535    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlM4TransmittedInd), GFP_KERNEL); \
536    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_M4_TRANSMITTED_IND, dst__, src__); \
537    msg__->clientData = (clientData__); \
538    msg__->interfaceTag = (interfaceTag__); \
539    msg__->peerMacAddress = (peerMacAddress__); \
540    msg__->status = (status__);
541
542#define CsrWifiRouterCtrlM4TransmittedIndSendTo(dst__, src__, clientData__, interfaceTag__, peerMacAddress__, status__) \
543    { \
544        CsrWifiRouterCtrlM4TransmittedInd *msg__; \
545        CsrWifiRouterCtrlM4TransmittedIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, peerMacAddress__, status__); \
546        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
547    }
548
549#define CsrWifiRouterCtrlM4TransmittedIndSend(dst__, clientData__, interfaceTag__, peerMacAddress__, status__) \
550    CsrWifiRouterCtrlM4TransmittedIndSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, peerMacAddress__, status__)
551
552/*******************************************************************************
553
554  NAME
555    CsrWifiRouterCtrlMediaStatusReqSend
556
557  DESCRIPTION
558
559  PARAMETERS
560    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
561    interfaceTag -
562    clientData -
563    mediaStatus -
564
565*******************************************************************************/
566#define CsrWifiRouterCtrlMediaStatusReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, mediaStatus__) \
567    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlMediaStatusReq), GFP_KERNEL); \
568    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_MEDIA_STATUS_REQ, dst__, src__); \
569    msg__->interfaceTag = (interfaceTag__); \
570    msg__->clientData = (clientData__); \
571    msg__->mediaStatus = (mediaStatus__);
572
573#define CsrWifiRouterCtrlMediaStatusReqSendTo(dst__, src__, interfaceTag__, clientData__, mediaStatus__) \
574    { \
575        CsrWifiRouterCtrlMediaStatusReq *msg__; \
576        CsrWifiRouterCtrlMediaStatusReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, mediaStatus__); \
577        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
578    }
579
580#define CsrWifiRouterCtrlMediaStatusReqSend(src__, interfaceTag__, clientData__, mediaStatus__) \
581    CsrWifiRouterCtrlMediaStatusReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, interfaceTag__, clientData__, mediaStatus__)
582
583/*******************************************************************************
584
585  NAME
586    CsrWifiRouterCtrlMicFailureIndSend
587
588  DESCRIPTION
589
590  PARAMETERS
591    queue - Destination Task Queue
592    clientData -
593    interfaceTag -
594    peerMacAddress -
595    unicastPdu -
596
597*******************************************************************************/
598#define CsrWifiRouterCtrlMicFailureIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, peerMacAddress__, unicastPdu__) \
599    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlMicFailureInd), GFP_KERNEL); \
600    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_MIC_FAILURE_IND, dst__, src__); \
601    msg__->clientData = (clientData__); \
602    msg__->interfaceTag = (interfaceTag__); \
603    msg__->peerMacAddress = (peerMacAddress__); \
604    msg__->unicastPdu = (unicastPdu__);
605
606#define CsrWifiRouterCtrlMicFailureIndSendTo(dst__, src__, clientData__, interfaceTag__, peerMacAddress__, unicastPdu__) \
607    { \
608        CsrWifiRouterCtrlMicFailureInd *msg__; \
609        CsrWifiRouterCtrlMicFailureIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, peerMacAddress__, unicastPdu__); \
610        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
611    }
612
613#define CsrWifiRouterCtrlMicFailureIndSend(dst__, clientData__, interfaceTag__, peerMacAddress__, unicastPdu__) \
614    CsrWifiRouterCtrlMicFailureIndSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, peerMacAddress__, unicastPdu__)
615
616/*******************************************************************************
617
618  NAME
619    CsrWifiRouterCtrlModeSetReqSend
620
621  DESCRIPTION
622
623  PARAMETERS
624    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
625    interfaceTag -
626    clientData -
627    mode -
628    bssid - BSSID of the network the device is going to be a part
629                          of
630    protection - Set to TRUE if encryption is enabled for the
631                          connection/broadcast frames
632    intraBssDistEnabled - If set to TRUE, intra BSS destribution will be
633                          enabled. If set to FALSE, any unicast PDU which does
634                          not have the RA as the the local MAC address, shall be
635                          ignored. This field is interpreted by the receive if
636                          mode is set to CSR_WIFI_ROUTER_CTRL_MODE_P2PGO
637
638*******************************************************************************/
639#define CsrWifiRouterCtrlModeSetReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, mode__, bssid__, protection__, intraBssDistEnabled__) \
640    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlModeSetReq), GFP_KERNEL); \
641    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_MODE_SET_REQ, dst__, src__); \
642    msg__->interfaceTag = (interfaceTag__); \
643    msg__->clientData = (clientData__); \
644    msg__->mode = (mode__); \
645    msg__->bssid = (bssid__); \
646    msg__->protection = (protection__); \
647    msg__->intraBssDistEnabled = (intraBssDistEnabled__);
648
649#define CsrWifiRouterCtrlModeSetReqSendTo(dst__, src__, interfaceTag__, clientData__, mode__, bssid__, protection__, intraBssDistEnabled__) \
650    { \
651        CsrWifiRouterCtrlModeSetReq *msg__; \
652        CsrWifiRouterCtrlModeSetReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, mode__, bssid__, protection__, intraBssDistEnabled__); \
653        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
654    }
655
656#define CsrWifiRouterCtrlModeSetReqSend(src__, interfaceTag__, clientData__, mode__, bssid__, protection__, intraBssDistEnabled__) \
657    CsrWifiRouterCtrlModeSetReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, interfaceTag__, clientData__, mode__, bssid__, protection__, intraBssDistEnabled__)
658
659/*******************************************************************************
660
661  NAME
662    CsrWifiRouterCtrlModeSetCfmSend
663
664  DESCRIPTION
665
666  PARAMETERS
667    queue - Destination Task Queue
668    clientData -
669    interfaceTag -
670    mode -
671    status -
672
673*******************************************************************************/
674#define CsrWifiRouterCtrlModeSetCfmCreate(msg__, dst__, src__, clientData__, interfaceTag__, mode__, status__) \
675    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlModeSetCfm), GFP_KERNEL); \
676    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_MODE_SET_CFM, dst__, src__); \
677    msg__->clientData = (clientData__); \
678    msg__->interfaceTag = (interfaceTag__); \
679    msg__->mode = (mode__); \
680    msg__->status = (status__);
681
682#define CsrWifiRouterCtrlModeSetCfmSendTo(dst__, src__, clientData__, interfaceTag__, mode__, status__) \
683    { \
684        CsrWifiRouterCtrlModeSetCfm *msg__; \
685        CsrWifiRouterCtrlModeSetCfmCreate(msg__, dst__, src__, clientData__, interfaceTag__, mode__, status__); \
686        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
687    }
688
689#define CsrWifiRouterCtrlModeSetCfmSend(dst__, clientData__, interfaceTag__, mode__, status__) \
690    CsrWifiRouterCtrlModeSetCfmSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, mode__, status__)
691
692/*******************************************************************************
693
694  NAME
695    CsrWifiRouterCtrlMulticastAddressIndSend
696
697  DESCRIPTION
698
699  PARAMETERS
700    queue - Destination Task Queue
701    clientData -
702    interfaceTag -
703    action -
704    setAddressesCount -
705    setAddresses -
706
707*******************************************************************************/
708#define CsrWifiRouterCtrlMulticastAddressIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, action__, setAddressesCount__, setAddresses__) \
709    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlMulticastAddressInd), GFP_KERNEL); \
710    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_MULTICAST_ADDRESS_IND, dst__, src__); \
711    msg__->clientData = (clientData__); \
712    msg__->interfaceTag = (interfaceTag__); \
713    msg__->action = (action__); \
714    msg__->setAddressesCount = (setAddressesCount__); \
715    msg__->setAddresses = (setAddresses__);
716
717#define CsrWifiRouterCtrlMulticastAddressIndSendTo(dst__, src__, clientData__, interfaceTag__, action__, setAddressesCount__, setAddresses__) \
718    { \
719        CsrWifiRouterCtrlMulticastAddressInd *msg__; \
720        CsrWifiRouterCtrlMulticastAddressIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, action__, setAddressesCount__, setAddresses__); \
721        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
722    }
723
724#define CsrWifiRouterCtrlMulticastAddressIndSend(dst__, clientData__, interfaceTag__, action__, setAddressesCount__, setAddresses__) \
725    CsrWifiRouterCtrlMulticastAddressIndSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, action__, setAddressesCount__, setAddresses__)
726
727/*******************************************************************************
728
729  NAME
730    CsrWifiRouterCtrlMulticastAddressResSend
731
732  DESCRIPTION
733
734  PARAMETERS
735    interfaceTag -
736    clientData -
737    status -
738    action -
739    getAddressesCount -
740    getAddresses -
741
742*******************************************************************************/
743#define CsrWifiRouterCtrlMulticastAddressResCreate(msg__, dst__, src__, interfaceTag__, clientData__, status__, action__, getAddressesCount__, getAddresses__) \
744    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlMulticastAddressRes), GFP_KERNEL); \
745    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_MULTICAST_ADDRESS_RES, dst__, src__); \
746    msg__->interfaceTag = (interfaceTag__); \
747    msg__->clientData = (clientData__); \
748    msg__->status = (status__); \
749    msg__->action = (action__); \
750    msg__->getAddressesCount = (getAddressesCount__); \
751    msg__->getAddresses = (getAddresses__);
752
753#define CsrWifiRouterCtrlMulticastAddressResSendTo(dst__, src__, interfaceTag__, clientData__, status__, action__, getAddressesCount__, getAddresses__) \
754    { \
755        CsrWifiRouterCtrlMulticastAddressRes *msg__; \
756        CsrWifiRouterCtrlMulticastAddressResCreate(msg__, dst__, src__, interfaceTag__, clientData__, status__, action__, getAddressesCount__, getAddresses__); \
757        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
758    }
759
760#define CsrWifiRouterCtrlMulticastAddressResSend(src__, interfaceTag__, clientData__, status__, action__, getAddressesCount__, getAddresses__) \
761    CsrWifiRouterCtrlMulticastAddressResSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, interfaceTag__, clientData__, status__, action__, getAddressesCount__, getAddresses__)
762
763/*******************************************************************************
764
765  NAME
766    CsrWifiRouterCtrlPeerAddReqSend
767
768  DESCRIPTION
769
770  PARAMETERS
771    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
772    interfaceTag -
773    clientData -
774    peerMacAddress -
775    associationId -
776    staInfo -
777
778*******************************************************************************/
779#define CsrWifiRouterCtrlPeerAddReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, peerMacAddress__, associationId__, staInfo__) \
780    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlPeerAddReq), GFP_KERNEL); \
781    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_PEER_ADD_REQ, dst__, src__); \
782    msg__->interfaceTag = (interfaceTag__); \
783    msg__->clientData = (clientData__); \
784    msg__->peerMacAddress = (peerMacAddress__); \
785    msg__->associationId = (associationId__); \
786    msg__->staInfo = (staInfo__);
787
788#define CsrWifiRouterCtrlPeerAddReqSendTo(dst__, src__, interfaceTag__, clientData__, peerMacAddress__, associationId__, staInfo__) \
789    { \
790        CsrWifiRouterCtrlPeerAddReq *msg__; \
791        CsrWifiRouterCtrlPeerAddReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, peerMacAddress__, associationId__, staInfo__); \
792        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
793    }
794
795#define CsrWifiRouterCtrlPeerAddReqSend(src__, interfaceTag__, clientData__, peerMacAddress__, associationId__, staInfo__) \
796    CsrWifiRouterCtrlPeerAddReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, interfaceTag__, clientData__, peerMacAddress__, associationId__, staInfo__)
797
798/*******************************************************************************
799
800  NAME
801    CsrWifiRouterCtrlPeerAddCfmSend
802
803  DESCRIPTION
804
805  PARAMETERS
806    queue - Destination Task Queue
807    clientData -
808    interfaceTag -
809    peerMacAddress -
810    peerRecordHandle -
811    status -
812
813*******************************************************************************/
814#define CsrWifiRouterCtrlPeerAddCfmCreate(msg__, dst__, src__, clientData__, interfaceTag__, peerMacAddress__, peerRecordHandle__, status__) \
815    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlPeerAddCfm), GFP_KERNEL); \
816    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_PEER_ADD_CFM, dst__, src__); \
817    msg__->clientData = (clientData__); \
818    msg__->interfaceTag = (interfaceTag__); \
819    msg__->peerMacAddress = (peerMacAddress__); \
820    msg__->peerRecordHandle = (peerRecordHandle__); \
821    msg__->status = (status__);
822
823#define CsrWifiRouterCtrlPeerAddCfmSendTo(dst__, src__, clientData__, interfaceTag__, peerMacAddress__, peerRecordHandle__, status__) \
824    { \
825        CsrWifiRouterCtrlPeerAddCfm *msg__; \
826        CsrWifiRouterCtrlPeerAddCfmCreate(msg__, dst__, src__, clientData__, interfaceTag__, peerMacAddress__, peerRecordHandle__, status__); \
827        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
828    }
829
830#define CsrWifiRouterCtrlPeerAddCfmSend(dst__, clientData__, interfaceTag__, peerMacAddress__, peerRecordHandle__, status__) \
831    CsrWifiRouterCtrlPeerAddCfmSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, peerMacAddress__, peerRecordHandle__, status__)
832
833/*******************************************************************************
834
835  NAME
836    CsrWifiRouterCtrlPeerDelReqSend
837
838  DESCRIPTION
839
840  PARAMETERS
841    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
842    interfaceTag -
843    clientData -
844    peerRecordHandle -
845
846*******************************************************************************/
847#define CsrWifiRouterCtrlPeerDelReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, peerRecordHandle__) \
848    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlPeerDelReq), GFP_KERNEL); \
849    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_PEER_DEL_REQ, dst__, src__); \
850    msg__->interfaceTag = (interfaceTag__); \
851    msg__->clientData = (clientData__); \
852    msg__->peerRecordHandle = (peerRecordHandle__);
853
854#define CsrWifiRouterCtrlPeerDelReqSendTo(dst__, src__, interfaceTag__, clientData__, peerRecordHandle__) \
855    { \
856        CsrWifiRouterCtrlPeerDelReq *msg__; \
857        CsrWifiRouterCtrlPeerDelReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, peerRecordHandle__); \
858        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
859    }
860
861#define CsrWifiRouterCtrlPeerDelReqSend(src__, interfaceTag__, clientData__, peerRecordHandle__) \
862    CsrWifiRouterCtrlPeerDelReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, interfaceTag__, clientData__, peerRecordHandle__)
863
864/*******************************************************************************
865
866  NAME
867    CsrWifiRouterCtrlPeerDelCfmSend
868
869  DESCRIPTION
870
871  PARAMETERS
872    queue - Destination Task Queue
873    clientData -
874    interfaceTag -
875    status -
876
877*******************************************************************************/
878#define CsrWifiRouterCtrlPeerDelCfmCreate(msg__, dst__, src__, clientData__, interfaceTag__, status__) \
879    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlPeerDelCfm), GFP_KERNEL); \
880    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_PEER_DEL_CFM, dst__, src__); \
881    msg__->clientData = (clientData__); \
882    msg__->interfaceTag = (interfaceTag__); \
883    msg__->status = (status__);
884
885#define CsrWifiRouterCtrlPeerDelCfmSendTo(dst__, src__, clientData__, interfaceTag__, status__) \
886    { \
887        CsrWifiRouterCtrlPeerDelCfm *msg__; \
888        CsrWifiRouterCtrlPeerDelCfmCreate(msg__, dst__, src__, clientData__, interfaceTag__, status__); \
889        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
890    }
891
892#define CsrWifiRouterCtrlPeerDelCfmSend(dst__, clientData__, interfaceTag__, status__) \
893    CsrWifiRouterCtrlPeerDelCfmSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, status__)
894
895/*******************************************************************************
896
897  NAME
898    CsrWifiRouterCtrlPeerUpdateReqSend
899
900  DESCRIPTION
901
902  PARAMETERS
903    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
904    interfaceTag -
905    clientData -
906    peerRecordHandle -
907    powersaveMode -
908
909*******************************************************************************/
910#define CsrWifiRouterCtrlPeerUpdateReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, peerRecordHandle__, powersaveMode__) \
911    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlPeerUpdateReq), GFP_KERNEL); \
912    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_PEER_UPDATE_REQ, dst__, src__); \
913    msg__->interfaceTag = (interfaceTag__); \
914    msg__->clientData = (clientData__); \
915    msg__->peerRecordHandle = (peerRecordHandle__); \
916    msg__->powersaveMode = (powersaveMode__);
917
918#define CsrWifiRouterCtrlPeerUpdateReqSendTo(dst__, src__, interfaceTag__, clientData__, peerRecordHandle__, powersaveMode__) \
919    { \
920        CsrWifiRouterCtrlPeerUpdateReq *msg__; \
921        CsrWifiRouterCtrlPeerUpdateReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, peerRecordHandle__, powersaveMode__); \
922        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
923    }
924
925#define CsrWifiRouterCtrlPeerUpdateReqSend(src__, interfaceTag__, clientData__, peerRecordHandle__, powersaveMode__) \
926    CsrWifiRouterCtrlPeerUpdateReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, interfaceTag__, clientData__, peerRecordHandle__, powersaveMode__)
927
928/*******************************************************************************
929
930  NAME
931    CsrWifiRouterCtrlPeerUpdateCfmSend
932
933  DESCRIPTION
934
935  PARAMETERS
936    queue - Destination Task Queue
937    clientData -
938    interfaceTag -
939    status -
940
941*******************************************************************************/
942#define CsrWifiRouterCtrlPeerUpdateCfmCreate(msg__, dst__, src__, clientData__, interfaceTag__, status__) \
943    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlPeerUpdateCfm), GFP_KERNEL); \
944    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_PEER_UPDATE_CFM, dst__, src__); \
945    msg__->clientData = (clientData__); \
946    msg__->interfaceTag = (interfaceTag__); \
947    msg__->status = (status__);
948
949#define CsrWifiRouterCtrlPeerUpdateCfmSendTo(dst__, src__, clientData__, interfaceTag__, status__) \
950    { \
951        CsrWifiRouterCtrlPeerUpdateCfm *msg__; \
952        CsrWifiRouterCtrlPeerUpdateCfmCreate(msg__, dst__, src__, clientData__, interfaceTag__, status__); \
953        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
954    }
955
956#define CsrWifiRouterCtrlPeerUpdateCfmSend(dst__, clientData__, interfaceTag__, status__) \
957    CsrWifiRouterCtrlPeerUpdateCfmSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, status__)
958
959/*******************************************************************************
960
961  NAME
962    CsrWifiRouterCtrlPortConfigureReqSend
963
964  DESCRIPTION
965
966  PARAMETERS
967    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
968    interfaceTag -
969    clientData -
970    uncontrolledPortAction -
971    controlledPortAction -
972    macAddress -
973    setProtection -
974
975*******************************************************************************/
976#define CsrWifiRouterCtrlPortConfigureReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, uncontrolledPortAction__, controlledPortAction__, macAddress__, setProtection__) \
977    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlPortConfigureReq), GFP_KERNEL); \
978    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_PORT_CONFIGURE_REQ, dst__, src__); \
979    msg__->interfaceTag = (interfaceTag__); \
980    msg__->clientData = (clientData__); \
981    msg__->uncontrolledPortAction = (uncontrolledPortAction__); \
982    msg__->controlledPortAction = (controlledPortAction__); \
983    msg__->macAddress = (macAddress__); \
984    msg__->setProtection = (setProtection__);
985
986#define CsrWifiRouterCtrlPortConfigureReqSendTo(dst__, src__, interfaceTag__, clientData__, uncontrolledPortAction__, controlledPortAction__, macAddress__, setProtection__) \
987    { \
988        CsrWifiRouterCtrlPortConfigureReq *msg__; \
989        CsrWifiRouterCtrlPortConfigureReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, uncontrolledPortAction__, controlledPortAction__, macAddress__, setProtection__); \
990        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
991    }
992
993#define CsrWifiRouterCtrlPortConfigureReqSend(src__, interfaceTag__, clientData__, uncontrolledPortAction__, controlledPortAction__, macAddress__, setProtection__) \
994    CsrWifiRouterCtrlPortConfigureReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, interfaceTag__, clientData__, uncontrolledPortAction__, controlledPortAction__, macAddress__, setProtection__)
995
996/*******************************************************************************
997
998  NAME
999    CsrWifiRouterCtrlPortConfigureCfmSend
1000
1001  DESCRIPTION
1002
1003  PARAMETERS
1004    queue - Destination Task Queue
1005    clientData -
1006    interfaceTag -
1007    status -
1008    macAddress -
1009
1010*******************************************************************************/
1011#define CsrWifiRouterCtrlPortConfigureCfmCreate(msg__, dst__, src__, clientData__, interfaceTag__, status__, macAddress__) \
1012    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlPortConfigureCfm), GFP_KERNEL); \
1013    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_PORT_CONFIGURE_CFM, dst__, src__); \
1014    msg__->clientData = (clientData__); \
1015    msg__->interfaceTag = (interfaceTag__); \
1016    msg__->status = (status__); \
1017    msg__->macAddress = (macAddress__);
1018
1019#define CsrWifiRouterCtrlPortConfigureCfmSendTo(dst__, src__, clientData__, interfaceTag__, status__, macAddress__) \
1020    { \
1021        CsrWifiRouterCtrlPortConfigureCfm *msg__; \
1022        CsrWifiRouterCtrlPortConfigureCfmCreate(msg__, dst__, src__, clientData__, interfaceTag__, status__, macAddress__); \
1023        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1024    }
1025
1026#define CsrWifiRouterCtrlPortConfigureCfmSend(dst__, clientData__, interfaceTag__, status__, macAddress__) \
1027    CsrWifiRouterCtrlPortConfigureCfmSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, status__, macAddress__)
1028
1029/*******************************************************************************
1030
1031  NAME
1032    CsrWifiRouterCtrlQosControlReqSend
1033
1034  DESCRIPTION
1035
1036  PARAMETERS
1037    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
1038    interfaceTag -
1039    clientData -
1040    control -
1041    queueConfig -
1042
1043*******************************************************************************/
1044#define CsrWifiRouterCtrlQosControlReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, control__, queueConfig__) \
1045    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlQosControlReq), GFP_KERNEL); \
1046    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_QOS_CONTROL_REQ, dst__, src__); \
1047    msg__->interfaceTag = (interfaceTag__); \
1048    msg__->clientData = (clientData__); \
1049    msg__->control = (control__); \
1050    msg__->queueConfig = (queueConfig__);
1051
1052#define CsrWifiRouterCtrlQosControlReqSendTo(dst__, src__, interfaceTag__, clientData__, control__, queueConfig__) \
1053    { \
1054        CsrWifiRouterCtrlQosControlReq *msg__; \
1055        CsrWifiRouterCtrlQosControlReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, control__, queueConfig__); \
1056        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1057    }
1058
1059#define CsrWifiRouterCtrlQosControlReqSend(src__, interfaceTag__, clientData__, control__, queueConfig__) \
1060    CsrWifiRouterCtrlQosControlReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, interfaceTag__, clientData__, control__, queueConfig__)
1061
1062/*******************************************************************************
1063
1064  NAME
1065    CsrWifiRouterCtrlRawSdioDeinitialiseReqSend
1066
1067  DESCRIPTION
1068
1069  PARAMETERS
1070    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
1071    clientData -
1072
1073*******************************************************************************/
1074#define CsrWifiRouterCtrlRawSdioDeinitialiseReqCreate(msg__, dst__, src__, clientData__) \
1075    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlRawSdioDeinitialiseReq), GFP_KERNEL); \
1076    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_RAW_SDIO_DEINITIALISE_REQ, dst__, src__); \
1077    msg__->clientData = (clientData__);
1078
1079#define CsrWifiRouterCtrlRawSdioDeinitialiseReqSendTo(dst__, src__, clientData__) \
1080    { \
1081        CsrWifiRouterCtrlRawSdioDeinitialiseReq *msg__; \
1082        CsrWifiRouterCtrlRawSdioDeinitialiseReqCreate(msg__, dst__, src__, clientData__); \
1083        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1084    }
1085
1086#define CsrWifiRouterCtrlRawSdioDeinitialiseReqSend(src__, clientData__) \
1087    CsrWifiRouterCtrlRawSdioDeinitialiseReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, clientData__)
1088
1089/*******************************************************************************
1090
1091  NAME
1092    CsrWifiRouterCtrlRawSdioDeinitialiseCfmSend
1093
1094  DESCRIPTION
1095
1096  PARAMETERS
1097    queue - Destination Task Queue
1098    clientData -
1099    result -
1100
1101*******************************************************************************/
1102#define CsrWifiRouterCtrlRawSdioDeinitialiseCfmCreate(msg__, dst__, src__, clientData__, result__) \
1103    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlRawSdioDeinitialiseCfm), GFP_KERNEL); \
1104    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_RAW_SDIO_DEINITIALISE_CFM, dst__, src__); \
1105    msg__->clientData = (clientData__); \
1106    msg__->result = (result__);
1107
1108#define CsrWifiRouterCtrlRawSdioDeinitialiseCfmSendTo(dst__, src__, clientData__, result__) \
1109    { \
1110        CsrWifiRouterCtrlRawSdioDeinitialiseCfm *msg__; \
1111        CsrWifiRouterCtrlRawSdioDeinitialiseCfmCreate(msg__, dst__, src__, clientData__, result__); \
1112        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1113    }
1114
1115#define CsrWifiRouterCtrlRawSdioDeinitialiseCfmSend(dst__, clientData__, result__) \
1116    CsrWifiRouterCtrlRawSdioDeinitialiseCfmSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, result__)
1117
1118/*******************************************************************************
1119
1120  NAME
1121    CsrWifiRouterCtrlRawSdioInitialiseReqSend
1122
1123  DESCRIPTION
1124
1125  PARAMETERS
1126    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
1127    clientData -
1128
1129*******************************************************************************/
1130#define CsrWifiRouterCtrlRawSdioInitialiseReqCreate(msg__, dst__, src__, clientData__) \
1131    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlRawSdioInitialiseReq), GFP_KERNEL); \
1132    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_RAW_SDIO_INITIALISE_REQ, dst__, src__); \
1133    msg__->clientData = (clientData__);
1134
1135#define CsrWifiRouterCtrlRawSdioInitialiseReqSendTo(dst__, src__, clientData__) \
1136    { \
1137        CsrWifiRouterCtrlRawSdioInitialiseReq *msg__; \
1138        CsrWifiRouterCtrlRawSdioInitialiseReqCreate(msg__, dst__, src__, clientData__); \
1139        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1140    }
1141
1142#define CsrWifiRouterCtrlRawSdioInitialiseReqSend(src__, clientData__) \
1143    CsrWifiRouterCtrlRawSdioInitialiseReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, clientData__)
1144
1145/*******************************************************************************
1146
1147  NAME
1148    CsrWifiRouterCtrlRawSdioInitialiseCfmSend
1149
1150  DESCRIPTION
1151
1152  PARAMETERS
1153    queue - Destination Task Queue
1154    clientData -
1155    result -
1156    byteRead -
1157    byteWrite -
1158    firmwareDownload -
1159    reset -
1160    coreDumpPrepare -
1161    byteBlockRead -
1162    gpRead16 -
1163    gpWrite16 -
1164
1165*******************************************************************************/
1166#define CsrWifiRouterCtrlRawSdioInitialiseCfmCreate(msg__, dst__, src__, clientData__, result__, byteRead__, byteWrite__, firmwareDownload__, reset__, coreDumpPrepare__, byteBlockRead__, gpRead16__, gpWrite16__) \
1167    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlRawSdioInitialiseCfm), GFP_KERNEL); \
1168    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_RAW_SDIO_INITIALISE_CFM, dst__, src__); \
1169    msg__->clientData = (clientData__); \
1170    msg__->result = (result__); \
1171    msg__->byteRead = (byteRead__); \
1172    msg__->byteWrite = (byteWrite__); \
1173    msg__->firmwareDownload = (firmwareDownload__); \
1174    msg__->reset = (reset__); \
1175    msg__->coreDumpPrepare = (coreDumpPrepare__); \
1176    msg__->byteBlockRead = (byteBlockRead__); \
1177    msg__->gpRead16 = (gpRead16__); \
1178    msg__->gpWrite16 = (gpWrite16__);
1179
1180#define CsrWifiRouterCtrlRawSdioInitialiseCfmSendTo(dst__, src__, clientData__, result__, byteRead__, byteWrite__, firmwareDownload__, reset__, coreDumpPrepare__, byteBlockRead__, gpRead16__, gpWrite16__) \
1181    { \
1182        CsrWifiRouterCtrlRawSdioInitialiseCfm *msg__; \
1183        CsrWifiRouterCtrlRawSdioInitialiseCfmCreate(msg__, dst__, src__, clientData__, result__, byteRead__, byteWrite__, firmwareDownload__, reset__, coreDumpPrepare__, byteBlockRead__, gpRead16__, gpWrite16__); \
1184        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1185    }
1186
1187#define CsrWifiRouterCtrlRawSdioInitialiseCfmSend(dst__, clientData__, result__, byteRead__, byteWrite__, firmwareDownload__, reset__, coreDumpPrepare__, byteBlockRead__, gpRead16__, gpWrite16__) \
1188    CsrWifiRouterCtrlRawSdioInitialiseCfmSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, result__, byteRead__, byteWrite__, firmwareDownload__, reset__, coreDumpPrepare__, byteBlockRead__, gpRead16__, gpWrite16__)
1189
1190/*******************************************************************************
1191
1192  NAME
1193    CsrWifiRouterCtrlResumeIndSend
1194
1195  DESCRIPTION
1196
1197  PARAMETERS
1198    queue - Destination Task Queue
1199    clientData -
1200    powerMaintained -
1201
1202*******************************************************************************/
1203#define CsrWifiRouterCtrlResumeIndCreate(msg__, dst__, src__, clientData__, powerMaintained__) \
1204    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlResumeInd), GFP_KERNEL); \
1205    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_RESUME_IND, dst__, src__); \
1206    msg__->clientData = (clientData__); \
1207    msg__->powerMaintained = (powerMaintained__);
1208
1209#define CsrWifiRouterCtrlResumeIndSendTo(dst__, src__, clientData__, powerMaintained__) \
1210    { \
1211        CsrWifiRouterCtrlResumeInd *msg__; \
1212        CsrWifiRouterCtrlResumeIndCreate(msg__, dst__, src__, clientData__, powerMaintained__); \
1213        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1214    }
1215
1216#define CsrWifiRouterCtrlResumeIndSend(dst__, clientData__, powerMaintained__) \
1217    CsrWifiRouterCtrlResumeIndSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, powerMaintained__)
1218
1219/*******************************************************************************
1220
1221  NAME
1222    CsrWifiRouterCtrlResumeResSend
1223
1224  DESCRIPTION
1225
1226  PARAMETERS
1227    clientData -
1228    status -
1229
1230*******************************************************************************/
1231#define CsrWifiRouterCtrlResumeResCreate(msg__, dst__, src__, clientData__, status__) \
1232    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlResumeRes), GFP_KERNEL); \
1233    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_RESUME_RES, dst__, src__); \
1234    msg__->clientData = (clientData__); \
1235    msg__->status = (status__);
1236
1237#define CsrWifiRouterCtrlResumeResSendTo(dst__, src__, clientData__, status__) \
1238    { \
1239        CsrWifiRouterCtrlResumeRes *msg__; \
1240        CsrWifiRouterCtrlResumeResCreate(msg__, dst__, src__, clientData__, status__); \
1241        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1242    }
1243
1244#define CsrWifiRouterCtrlResumeResSend(src__, clientData__, status__) \
1245    CsrWifiRouterCtrlResumeResSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, clientData__, status__)
1246
1247/*******************************************************************************
1248
1249  NAME
1250    CsrWifiRouterCtrlStaInactiveIndSend
1251
1252  DESCRIPTION
1253
1254  PARAMETERS
1255    queue - Destination Task Queue
1256    clientData -
1257    interfaceTag -
1258    staAddress -
1259
1260*******************************************************************************/
1261#define CsrWifiRouterCtrlStaInactiveIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, staAddress__) \
1262    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlStaInactiveInd), GFP_KERNEL); \
1263    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_STA_INACTIVE_IND, dst__, src__); \
1264    msg__->clientData = (clientData__); \
1265    msg__->interfaceTag = (interfaceTag__); \
1266    msg__->staAddress = (staAddress__);
1267
1268#define CsrWifiRouterCtrlStaInactiveIndSendTo(dst__, src__, clientData__, interfaceTag__, staAddress__) \
1269    { \
1270        CsrWifiRouterCtrlStaInactiveInd *msg__; \
1271        CsrWifiRouterCtrlStaInactiveIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, staAddress__); \
1272        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1273    }
1274
1275#define CsrWifiRouterCtrlStaInactiveIndSend(dst__, clientData__, interfaceTag__, staAddress__) \
1276    CsrWifiRouterCtrlStaInactiveIndSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, staAddress__)
1277
1278/*******************************************************************************
1279
1280  NAME
1281    CsrWifiRouterCtrlSuspendIndSend
1282
1283  DESCRIPTION
1284
1285  PARAMETERS
1286    queue - Destination Task Queue
1287    clientData -
1288    hardSuspend -
1289    d3Suspend -
1290
1291*******************************************************************************/
1292#define CsrWifiRouterCtrlSuspendIndCreate(msg__, dst__, src__, clientData__, hardSuspend__, d3Suspend__) \
1293    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlSuspendInd), GFP_KERNEL); \
1294    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_SUSPEND_IND, dst__, src__); \
1295    msg__->clientData = (clientData__); \
1296    msg__->hardSuspend = (hardSuspend__); \
1297    msg__->d3Suspend = (d3Suspend__);
1298
1299#define CsrWifiRouterCtrlSuspendIndSendTo(dst__, src__, clientData__, hardSuspend__, d3Suspend__) \
1300    { \
1301        CsrWifiRouterCtrlSuspendInd *msg__; \
1302        CsrWifiRouterCtrlSuspendIndCreate(msg__, dst__, src__, clientData__, hardSuspend__, d3Suspend__); \
1303        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1304    }
1305
1306#define CsrWifiRouterCtrlSuspendIndSend(dst__, clientData__, hardSuspend__, d3Suspend__) \
1307    CsrWifiRouterCtrlSuspendIndSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, hardSuspend__, d3Suspend__)
1308
1309/*******************************************************************************
1310
1311  NAME
1312    CsrWifiRouterCtrlSuspendResSend
1313
1314  DESCRIPTION
1315
1316  PARAMETERS
1317    clientData -
1318    status -
1319
1320*******************************************************************************/
1321#define CsrWifiRouterCtrlSuspendResCreate(msg__, dst__, src__, clientData__, status__) \
1322    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlSuspendRes), GFP_KERNEL); \
1323    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_SUSPEND_RES, dst__, src__); \
1324    msg__->clientData = (clientData__); \
1325    msg__->status = (status__);
1326
1327#define CsrWifiRouterCtrlSuspendResSendTo(dst__, src__, clientData__, status__) \
1328    { \
1329        CsrWifiRouterCtrlSuspendRes *msg__; \
1330        CsrWifiRouterCtrlSuspendResCreate(msg__, dst__, src__, clientData__, status__); \
1331        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1332    }
1333
1334#define CsrWifiRouterCtrlSuspendResSend(src__, clientData__, status__) \
1335    CsrWifiRouterCtrlSuspendResSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, clientData__, status__)
1336
1337/*******************************************************************************
1338
1339  NAME
1340    CsrWifiRouterCtrlTclasAddReqSend
1341
1342  DESCRIPTION
1343
1344  PARAMETERS
1345    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
1346    interfaceTag -
1347    clientData -
1348    tclasLength -
1349    tclas -
1350
1351*******************************************************************************/
1352#define CsrWifiRouterCtrlTclasAddReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, tclasLength__, tclas__) \
1353    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlTclasAddReq), GFP_KERNEL); \
1354    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_TCLAS_ADD_REQ, dst__, src__); \
1355    msg__->interfaceTag = (interfaceTag__); \
1356    msg__->clientData = (clientData__); \
1357    msg__->tclasLength = (tclasLength__); \
1358    msg__->tclas = (tclas__);
1359
1360#define CsrWifiRouterCtrlTclasAddReqSendTo(dst__, src__, interfaceTag__, clientData__, tclasLength__, tclas__) \
1361    { \
1362        CsrWifiRouterCtrlTclasAddReq *msg__; \
1363        CsrWifiRouterCtrlTclasAddReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, tclasLength__, tclas__); \
1364        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1365    }
1366
1367#define CsrWifiRouterCtrlTclasAddReqSend(src__, interfaceTag__, clientData__, tclasLength__, tclas__) \
1368    CsrWifiRouterCtrlTclasAddReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, interfaceTag__, clientData__, tclasLength__, tclas__)
1369
1370/*******************************************************************************
1371
1372  NAME
1373    CsrWifiRouterCtrlTclasAddCfmSend
1374
1375  DESCRIPTION
1376
1377  PARAMETERS
1378    queue - Destination Task Queue
1379    clientData -
1380    interfaceTag -
1381    status -
1382
1383*******************************************************************************/
1384#define CsrWifiRouterCtrlTclasAddCfmCreate(msg__, dst__, src__, clientData__, interfaceTag__, status__) \
1385    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlTclasAddCfm), GFP_KERNEL); \
1386    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_TCLAS_ADD_CFM, dst__, src__); \
1387    msg__->clientData = (clientData__); \
1388    msg__->interfaceTag = (interfaceTag__); \
1389    msg__->status = (status__);
1390
1391#define CsrWifiRouterCtrlTclasAddCfmSendTo(dst__, src__, clientData__, interfaceTag__, status__) \
1392    { \
1393        CsrWifiRouterCtrlTclasAddCfm *msg__; \
1394        CsrWifiRouterCtrlTclasAddCfmCreate(msg__, dst__, src__, clientData__, interfaceTag__, status__); \
1395        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1396    }
1397
1398#define CsrWifiRouterCtrlTclasAddCfmSend(dst__, clientData__, interfaceTag__, status__) \
1399    CsrWifiRouterCtrlTclasAddCfmSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, status__)
1400
1401/*******************************************************************************
1402
1403  NAME
1404    CsrWifiRouterCtrlTclasDelReqSend
1405
1406  DESCRIPTION
1407
1408  PARAMETERS
1409    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
1410    interfaceTag -
1411    clientData -
1412    tclasLength -
1413    tclas -
1414
1415*******************************************************************************/
1416#define CsrWifiRouterCtrlTclasDelReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, tclasLength__, tclas__) \
1417    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlTclasDelReq), GFP_KERNEL); \
1418    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_TCLAS_DEL_REQ, dst__, src__); \
1419    msg__->interfaceTag = (interfaceTag__); \
1420    msg__->clientData = (clientData__); \
1421    msg__->tclasLength = (tclasLength__); \
1422    msg__->tclas = (tclas__);
1423
1424#define CsrWifiRouterCtrlTclasDelReqSendTo(dst__, src__, interfaceTag__, clientData__, tclasLength__, tclas__) \
1425    { \
1426        CsrWifiRouterCtrlTclasDelReq *msg__; \
1427        CsrWifiRouterCtrlTclasDelReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, tclasLength__, tclas__); \
1428        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1429    }
1430
1431#define CsrWifiRouterCtrlTclasDelReqSend(src__, interfaceTag__, clientData__, tclasLength__, tclas__) \
1432    CsrWifiRouterCtrlTclasDelReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, interfaceTag__, clientData__, tclasLength__, tclas__)
1433
1434/*******************************************************************************
1435
1436  NAME
1437    CsrWifiRouterCtrlTclasDelCfmSend
1438
1439  DESCRIPTION
1440
1441  PARAMETERS
1442    queue - Destination Task Queue
1443    clientData -
1444    interfaceTag -
1445    status -
1446
1447*******************************************************************************/
1448#define CsrWifiRouterCtrlTclasDelCfmCreate(msg__, dst__, src__, clientData__, interfaceTag__, status__) \
1449    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlTclasDelCfm), GFP_KERNEL); \
1450    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_TCLAS_DEL_CFM, dst__, src__); \
1451    msg__->clientData = (clientData__); \
1452    msg__->interfaceTag = (interfaceTag__); \
1453    msg__->status = (status__);
1454
1455#define CsrWifiRouterCtrlTclasDelCfmSendTo(dst__, src__, clientData__, interfaceTag__, status__) \
1456    { \
1457        CsrWifiRouterCtrlTclasDelCfm *msg__; \
1458        CsrWifiRouterCtrlTclasDelCfmCreate(msg__, dst__, src__, clientData__, interfaceTag__, status__); \
1459        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1460    }
1461
1462#define CsrWifiRouterCtrlTclasDelCfmSend(dst__, clientData__, interfaceTag__, status__) \
1463    CsrWifiRouterCtrlTclasDelCfmSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, status__)
1464
1465/*******************************************************************************
1466
1467  NAME
1468    CsrWifiRouterCtrlTrafficClassificationReqSend
1469
1470  DESCRIPTION
1471
1472  PARAMETERS
1473    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
1474    interfaceTag -
1475    clientData -
1476    trafficType -
1477    period -
1478
1479*******************************************************************************/
1480#define CsrWifiRouterCtrlTrafficClassificationReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, trafficType__, period__) \
1481    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlTrafficClassificationReq), GFP_KERNEL); \
1482    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_TRAFFIC_CLASSIFICATION_REQ, dst__, src__); \
1483    msg__->interfaceTag = (interfaceTag__); \
1484    msg__->clientData = (clientData__); \
1485    msg__->trafficType = (trafficType__); \
1486    msg__->period = (period__);
1487
1488#define CsrWifiRouterCtrlTrafficClassificationReqSendTo(dst__, src__, interfaceTag__, clientData__, trafficType__, period__) \
1489    { \
1490        CsrWifiRouterCtrlTrafficClassificationReq *msg__; \
1491        CsrWifiRouterCtrlTrafficClassificationReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, trafficType__, period__); \
1492        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1493    }
1494
1495#define CsrWifiRouterCtrlTrafficClassificationReqSend(src__, interfaceTag__, clientData__, trafficType__, period__) \
1496    CsrWifiRouterCtrlTrafficClassificationReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, interfaceTag__, clientData__, trafficType__, period__)
1497
1498/*******************************************************************************
1499
1500  NAME
1501    CsrWifiRouterCtrlTrafficConfigReqSend
1502
1503  DESCRIPTION
1504
1505  PARAMETERS
1506    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
1507    interfaceTag -
1508    clientData -
1509    trafficConfigType -
1510    config -
1511
1512*******************************************************************************/
1513#define CsrWifiRouterCtrlTrafficConfigReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, trafficConfigType__, config__) \
1514    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlTrafficConfigReq), GFP_KERNEL); \
1515    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_TRAFFIC_CONFIG_REQ, dst__, src__); \
1516    msg__->interfaceTag = (interfaceTag__); \
1517    msg__->clientData = (clientData__); \
1518    msg__->trafficConfigType = (trafficConfigType__); \
1519    msg__->config = (config__);
1520
1521#define CsrWifiRouterCtrlTrafficConfigReqSendTo(dst__, src__, interfaceTag__, clientData__, trafficConfigType__, config__) \
1522    { \
1523        CsrWifiRouterCtrlTrafficConfigReq *msg__; \
1524        CsrWifiRouterCtrlTrafficConfigReqCreate(msg__, dst__, src__, interfaceTag__, clientData__, trafficConfigType__, config__); \
1525        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1526    }
1527
1528#define CsrWifiRouterCtrlTrafficConfigReqSend(src__, interfaceTag__, clientData__, trafficConfigType__, config__) \
1529    CsrWifiRouterCtrlTrafficConfigReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, interfaceTag__, clientData__, trafficConfigType__, config__)
1530
1531/*******************************************************************************
1532
1533  NAME
1534    CsrWifiRouterCtrlTrafficProtocolIndSend
1535
1536  DESCRIPTION
1537
1538  PARAMETERS
1539    queue - Destination Task Queue
1540    clientData -
1541    interfaceTag -
1542    packetType -
1543    direction -
1544    srcAddress -
1545
1546*******************************************************************************/
1547#define CsrWifiRouterCtrlTrafficProtocolIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, packetType__, direction__, srcAddress__) \
1548    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlTrafficProtocolInd), GFP_KERNEL); \
1549    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_TRAFFIC_PROTOCOL_IND, dst__, src__); \
1550    msg__->clientData = (clientData__); \
1551    msg__->interfaceTag = (interfaceTag__); \
1552    msg__->packetType = (packetType__); \
1553    msg__->direction = (direction__); \
1554    msg__->srcAddress = (srcAddress__);
1555
1556#define CsrWifiRouterCtrlTrafficProtocolIndSendTo(dst__, src__, clientData__, interfaceTag__, packetType__, direction__, srcAddress__) \
1557    { \
1558        CsrWifiRouterCtrlTrafficProtocolInd *msg__; \
1559        CsrWifiRouterCtrlTrafficProtocolIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, packetType__, direction__, srcAddress__); \
1560        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1561    }
1562
1563#define CsrWifiRouterCtrlTrafficProtocolIndSend(dst__, clientData__, interfaceTag__, packetType__, direction__, srcAddress__) \
1564    CsrWifiRouterCtrlTrafficProtocolIndSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, packetType__, direction__, srcAddress__)
1565
1566/*******************************************************************************
1567
1568  NAME
1569    CsrWifiRouterCtrlTrafficSampleIndSend
1570
1571  DESCRIPTION
1572
1573  PARAMETERS
1574    queue - Destination Task Queue
1575    clientData -
1576    interfaceTag -
1577    stats -
1578
1579*******************************************************************************/
1580#define CsrWifiRouterCtrlTrafficSampleIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, stats__) \
1581    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlTrafficSampleInd), GFP_KERNEL); \
1582    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_TRAFFIC_SAMPLE_IND, dst__, src__); \
1583    msg__->clientData = (clientData__); \
1584    msg__->interfaceTag = (interfaceTag__); \
1585    msg__->stats = (stats__);
1586
1587#define CsrWifiRouterCtrlTrafficSampleIndSendTo(dst__, src__, clientData__, interfaceTag__, stats__) \
1588    { \
1589        CsrWifiRouterCtrlTrafficSampleInd *msg__; \
1590        CsrWifiRouterCtrlTrafficSampleIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, stats__); \
1591        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1592    }
1593
1594#define CsrWifiRouterCtrlTrafficSampleIndSend(dst__, clientData__, interfaceTag__, stats__) \
1595    CsrWifiRouterCtrlTrafficSampleIndSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, stats__)
1596
1597/*******************************************************************************
1598
1599  NAME
1600    CsrWifiRouterCtrlUnexpectedFrameIndSend
1601
1602  DESCRIPTION
1603
1604  PARAMETERS
1605    queue - Destination Task Queue
1606    clientData -
1607    interfaceTag -
1608    peerMacAddress -
1609
1610*******************************************************************************/
1611#define CsrWifiRouterCtrlUnexpectedFrameIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, peerMacAddress__) \
1612    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlUnexpectedFrameInd), GFP_KERNEL); \
1613    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_UNEXPECTED_FRAME_IND, dst__, src__); \
1614    msg__->clientData = (clientData__); \
1615    msg__->interfaceTag = (interfaceTag__); \
1616    msg__->peerMacAddress = (peerMacAddress__);
1617
1618#define CsrWifiRouterCtrlUnexpectedFrameIndSendTo(dst__, src__, clientData__, interfaceTag__, peerMacAddress__) \
1619    { \
1620        CsrWifiRouterCtrlUnexpectedFrameInd *msg__; \
1621        CsrWifiRouterCtrlUnexpectedFrameIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, peerMacAddress__); \
1622        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1623    }
1624
1625#define CsrWifiRouterCtrlUnexpectedFrameIndSend(dst__, clientData__, interfaceTag__, peerMacAddress__) \
1626    CsrWifiRouterCtrlUnexpectedFrameIndSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, peerMacAddress__)
1627
1628/*******************************************************************************
1629
1630  NAME
1631    CsrWifiRouterCtrlWapiFilterReqSend
1632
1633  DESCRIPTION
1634
1635  PARAMETERS
1636    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
1637    interfaceTag -
1638    isWapiConnected -
1639
1640*******************************************************************************/
1641#define CsrWifiRouterCtrlWapiFilterReqCreate(msg__, dst__, src__, interfaceTag__, isWapiConnected__) \
1642    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlWapiFilterReq), GFP_KERNEL); \
1643    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_WAPI_FILTER_REQ, dst__, src__); \
1644    msg__->interfaceTag = (interfaceTag__); \
1645    msg__->isWapiConnected = (isWapiConnected__);
1646
1647#define CsrWifiRouterCtrlWapiFilterReqSendTo(dst__, src__, interfaceTag__, isWapiConnected__) \
1648    { \
1649        CsrWifiRouterCtrlWapiFilterReq *msg__; \
1650        CsrWifiRouterCtrlWapiFilterReqCreate(msg__, dst__, src__, interfaceTag__, isWapiConnected__); \
1651        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1652    }
1653
1654#define CsrWifiRouterCtrlWapiFilterReqSend(src__, interfaceTag__, isWapiConnected__) \
1655    CsrWifiRouterCtrlWapiFilterReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, interfaceTag__, isWapiConnected__)
1656
1657/*******************************************************************************
1658
1659  NAME
1660    CsrWifiRouterCtrlWapiMulticastFilterReqSend
1661
1662  DESCRIPTION
1663
1664  PARAMETERS
1665    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
1666    interfaceTag -
1667    status -
1668
1669*******************************************************************************/
1670#define CsrWifiRouterCtrlWapiMulticastFilterReqCreate(msg__, dst__, src__, interfaceTag__, status__) \
1671    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlWapiMulticastFilterReq), GFP_KERNEL); \
1672    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_WAPI_MULTICAST_FILTER_REQ, dst__, src__); \
1673    msg__->interfaceTag = (interfaceTag__); \
1674    msg__->status = (status__);
1675
1676#define CsrWifiRouterCtrlWapiMulticastFilterReqSendTo(dst__, src__, interfaceTag__, status__) \
1677    { \
1678        CsrWifiRouterCtrlWapiMulticastFilterReq *msg__; \
1679        CsrWifiRouterCtrlWapiMulticastFilterReqCreate(msg__, dst__, src__, interfaceTag__, status__); \
1680        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1681    }
1682
1683#define CsrWifiRouterCtrlWapiMulticastFilterReqSend(src__, interfaceTag__, status__) \
1684    CsrWifiRouterCtrlWapiMulticastFilterReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, interfaceTag__, status__)
1685
1686/*******************************************************************************
1687
1688  NAME
1689    CsrWifiRouterCtrlWapiRxMicCheckIndSend
1690
1691  DESCRIPTION
1692
1693  PARAMETERS
1694    queue - Destination Task Queue
1695    clientData -
1696    interfaceTag -
1697    signalLength -
1698    signal -
1699    dataLength -
1700    data -
1701
1702*******************************************************************************/
1703#define CsrWifiRouterCtrlWapiRxMicCheckIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, signalLength__, signal__, dataLength__, data__) \
1704    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlWapiRxMicCheckInd), GFP_KERNEL); \
1705    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_WAPI_RX_MIC_CHECK_IND, dst__, src__); \
1706    msg__->clientData = (clientData__); \
1707    msg__->interfaceTag = (interfaceTag__); \
1708    msg__->signalLength = (signalLength__); \
1709    msg__->signal = (signal__); \
1710    msg__->dataLength = (dataLength__); \
1711    msg__->data = (data__);
1712
1713#define CsrWifiRouterCtrlWapiRxMicCheckIndSendTo(dst__, src__, clientData__, interfaceTag__, signalLength__, signal__, dataLength__, data__) \
1714    { \
1715        CsrWifiRouterCtrlWapiRxMicCheckInd *msg__; \
1716        CsrWifiRouterCtrlWapiRxMicCheckIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, signalLength__, signal__, dataLength__, data__); \
1717        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1718    }
1719
1720#define CsrWifiRouterCtrlWapiRxMicCheckIndSend(dst__, clientData__, interfaceTag__, signalLength__, signal__, dataLength__, data__) \
1721    CsrWifiRouterCtrlWapiRxMicCheckIndSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, signalLength__, signal__, dataLength__, data__)
1722
1723/*******************************************************************************
1724
1725  NAME
1726    CsrWifiRouterCtrlWapiRxPktReqSend
1727
1728  DESCRIPTION
1729
1730  PARAMETERS
1731    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
1732    interfaceTag -
1733    signalLength -
1734    signal -
1735    dataLength -
1736    data -
1737
1738*******************************************************************************/
1739#define CsrWifiRouterCtrlWapiRxPktReqCreate(msg__, dst__, src__, interfaceTag__, signalLength__, signal__, dataLength__, data__) \
1740    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlWapiRxPktReq), GFP_KERNEL); \
1741    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_WAPI_RX_PKT_REQ, dst__, src__); \
1742    msg__->interfaceTag = (interfaceTag__); \
1743    msg__->signalLength = (signalLength__); \
1744    msg__->signal = (signal__); \
1745    msg__->dataLength = (dataLength__); \
1746    msg__->data = (data__);
1747
1748#define CsrWifiRouterCtrlWapiRxPktReqSendTo(dst__, src__, interfaceTag__, signalLength__, signal__, dataLength__, data__) \
1749    { \
1750        CsrWifiRouterCtrlWapiRxPktReq *msg__; \
1751        CsrWifiRouterCtrlWapiRxPktReqCreate(msg__, dst__, src__, interfaceTag__, signalLength__, signal__, dataLength__, data__); \
1752        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1753    }
1754
1755#define CsrWifiRouterCtrlWapiRxPktReqSend(src__, interfaceTag__, signalLength__, signal__, dataLength__, data__) \
1756    CsrWifiRouterCtrlWapiRxPktReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, interfaceTag__, signalLength__, signal__, dataLength__, data__)
1757
1758/*******************************************************************************
1759
1760  NAME
1761    CsrWifiRouterCtrlWapiUnicastFilterReqSend
1762
1763  DESCRIPTION
1764
1765  PARAMETERS
1766    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
1767    interfaceTag -
1768    status -
1769
1770*******************************************************************************/
1771#define CsrWifiRouterCtrlWapiUnicastFilterReqCreate(msg__, dst__, src__, interfaceTag__, status__) \
1772    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlWapiUnicastFilterReq), GFP_KERNEL); \
1773    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_WAPI_UNICAST_FILTER_REQ, dst__, src__); \
1774    msg__->interfaceTag = (interfaceTag__); \
1775    msg__->status = (status__);
1776
1777#define CsrWifiRouterCtrlWapiUnicastFilterReqSendTo(dst__, src__, interfaceTag__, status__) \
1778    { \
1779        CsrWifiRouterCtrlWapiUnicastFilterReq *msg__; \
1780        CsrWifiRouterCtrlWapiUnicastFilterReqCreate(msg__, dst__, src__, interfaceTag__, status__); \
1781        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1782    }
1783
1784#define CsrWifiRouterCtrlWapiUnicastFilterReqSend(src__, interfaceTag__, status__) \
1785    CsrWifiRouterCtrlWapiUnicastFilterReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, interfaceTag__, status__)
1786
1787/*******************************************************************************
1788
1789  NAME
1790    CsrWifiRouterCtrlWapiUnicastTxEncryptIndSend
1791
1792  DESCRIPTION
1793
1794  PARAMETERS
1795    queue - Destination Task Queue
1796    clientData -
1797    interfaceTag -
1798    dataLength -
1799    data -
1800
1801*******************************************************************************/
1802#define CsrWifiRouterCtrlWapiUnicastTxEncryptIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, dataLength__, data__) \
1803    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlWapiUnicastTxEncryptInd), GFP_KERNEL); \
1804    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_WAPI_UNICAST_TX_ENCRYPT_IND, dst__, src__); \
1805    msg__->clientData = (clientData__); \
1806    msg__->interfaceTag = (interfaceTag__); \
1807    msg__->dataLength = (dataLength__); \
1808    msg__->data = (data__);
1809
1810#define CsrWifiRouterCtrlWapiUnicastTxEncryptIndSendTo(dst__, src__, clientData__, interfaceTag__, dataLength__, data__) \
1811    { \
1812        CsrWifiRouterCtrlWapiUnicastTxEncryptInd *msg__; \
1813        CsrWifiRouterCtrlWapiUnicastTxEncryptIndCreate(msg__, dst__, src__, clientData__, interfaceTag__, dataLength__, data__); \
1814        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1815    }
1816
1817#define CsrWifiRouterCtrlWapiUnicastTxEncryptIndSend(dst__, clientData__, interfaceTag__, dataLength__, data__) \
1818    CsrWifiRouterCtrlWapiUnicastTxEncryptIndSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, interfaceTag__, dataLength__, data__)
1819
1820/*******************************************************************************
1821
1822  NAME
1823    CsrWifiRouterCtrlWapiUnicastTxPktReqSend
1824
1825  DESCRIPTION
1826
1827  PARAMETERS
1828    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
1829    interfaceTag -
1830    dataLength -
1831    data -
1832
1833*******************************************************************************/
1834#define CsrWifiRouterCtrlWapiUnicastTxPktReqCreate(msg__, dst__, src__, interfaceTag__, dataLength__, data__) \
1835    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlWapiUnicastTxPktReq), GFP_KERNEL); \
1836    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_WAPI_UNICAST_TX_PKT_REQ, dst__, src__); \
1837    msg__->interfaceTag = (interfaceTag__); \
1838    msg__->dataLength = (dataLength__); \
1839    msg__->data = (data__);
1840
1841#define CsrWifiRouterCtrlWapiUnicastTxPktReqSendTo(dst__, src__, interfaceTag__, dataLength__, data__) \
1842    { \
1843        CsrWifiRouterCtrlWapiUnicastTxPktReq *msg__; \
1844        CsrWifiRouterCtrlWapiUnicastTxPktReqCreate(msg__, dst__, src__, interfaceTag__, dataLength__, data__); \
1845        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1846    }
1847
1848#define CsrWifiRouterCtrlWapiUnicastTxPktReqSend(src__, interfaceTag__, dataLength__, data__) \
1849    CsrWifiRouterCtrlWapiUnicastTxPktReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, interfaceTag__, dataLength__, data__)
1850
1851/*******************************************************************************
1852
1853  NAME
1854    CsrWifiRouterCtrlWifiOffReqSend
1855
1856  DESCRIPTION
1857
1858  PARAMETERS
1859    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
1860    clientData -
1861
1862*******************************************************************************/
1863#define CsrWifiRouterCtrlWifiOffReqCreate(msg__, dst__, src__, clientData__) \
1864    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlWifiOffReq), GFP_KERNEL); \
1865    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_WIFI_OFF_REQ, dst__, src__); \
1866    msg__->clientData = (clientData__);
1867
1868#define CsrWifiRouterCtrlWifiOffReqSendTo(dst__, src__, clientData__) \
1869    { \
1870        CsrWifiRouterCtrlWifiOffReq *msg__; \
1871        CsrWifiRouterCtrlWifiOffReqCreate(msg__, dst__, src__, clientData__); \
1872        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1873    }
1874
1875#define CsrWifiRouterCtrlWifiOffReqSend(src__, clientData__) \
1876    CsrWifiRouterCtrlWifiOffReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, clientData__)
1877
1878/*******************************************************************************
1879
1880  NAME
1881    CsrWifiRouterCtrlWifiOffIndSend
1882
1883  DESCRIPTION
1884
1885  PARAMETERS
1886    queue - Destination Task Queue
1887    clientData -
1888    controlIndication -
1889
1890*******************************************************************************/
1891#define CsrWifiRouterCtrlWifiOffIndCreate(msg__, dst__, src__, clientData__, controlIndication__) \
1892    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlWifiOffInd), GFP_KERNEL); \
1893    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_WIFI_OFF_IND, dst__, src__); \
1894    msg__->clientData = (clientData__); \
1895    msg__->controlIndication = (controlIndication__);
1896
1897#define CsrWifiRouterCtrlWifiOffIndSendTo(dst__, src__, clientData__, controlIndication__) \
1898    { \
1899        CsrWifiRouterCtrlWifiOffInd *msg__; \
1900        CsrWifiRouterCtrlWifiOffIndCreate(msg__, dst__, src__, clientData__, controlIndication__); \
1901        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1902    }
1903
1904#define CsrWifiRouterCtrlWifiOffIndSend(dst__, clientData__, controlIndication__) \
1905    CsrWifiRouterCtrlWifiOffIndSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, controlIndication__)
1906
1907/*******************************************************************************
1908
1909  NAME
1910    CsrWifiRouterCtrlWifiOffResSend
1911
1912  DESCRIPTION
1913
1914  PARAMETERS
1915    clientData -
1916
1917*******************************************************************************/
1918#define CsrWifiRouterCtrlWifiOffResCreate(msg__, dst__, src__, clientData__) \
1919    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlWifiOffRes), GFP_KERNEL); \
1920    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_WIFI_OFF_RES, dst__, src__); \
1921    msg__->clientData = (clientData__);
1922
1923#define CsrWifiRouterCtrlWifiOffResSendTo(dst__, src__, clientData__) \
1924    { \
1925        CsrWifiRouterCtrlWifiOffRes *msg__; \
1926        CsrWifiRouterCtrlWifiOffResCreate(msg__, dst__, src__, clientData__); \
1927        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1928    }
1929
1930#define CsrWifiRouterCtrlWifiOffResSend(src__, clientData__) \
1931    CsrWifiRouterCtrlWifiOffResSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, clientData__)
1932
1933/*******************************************************************************
1934
1935  NAME
1936    CsrWifiRouterCtrlWifiOffCfmSend
1937
1938  DESCRIPTION
1939
1940  PARAMETERS
1941    queue - Destination Task Queue
1942    clientData -
1943
1944*******************************************************************************/
1945#define CsrWifiRouterCtrlWifiOffCfmCreate(msg__, dst__, src__, clientData__) \
1946    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlWifiOffCfm), GFP_KERNEL); \
1947    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_WIFI_OFF_CFM, dst__, src__); \
1948    msg__->clientData = (clientData__);
1949
1950#define CsrWifiRouterCtrlWifiOffCfmSendTo(dst__, src__, clientData__) \
1951    { \
1952        CsrWifiRouterCtrlWifiOffCfm *msg__; \
1953        CsrWifiRouterCtrlWifiOffCfmCreate(msg__, dst__, src__, clientData__); \
1954        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1955    }
1956
1957#define CsrWifiRouterCtrlWifiOffCfmSend(dst__, clientData__) \
1958    CsrWifiRouterCtrlWifiOffCfmSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__)
1959
1960/*******************************************************************************
1961
1962  NAME
1963    CsrWifiRouterCtrlWifiOnReqSend
1964
1965  DESCRIPTION
1966
1967  PARAMETERS
1968    queue - Message Source Task Queue (Cfm's will be sent to this Queue)
1969    clientData -
1970    dataLength - Number of bytes in the buffer pointed to by 'data'
1971    data - Pointer to the buffer containing 'dataLength' bytes
1972
1973*******************************************************************************/
1974#define CsrWifiRouterCtrlWifiOnReqCreate(msg__, dst__, src__, clientData__, dataLength__, data__) \
1975    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlWifiOnReq), GFP_KERNEL); \
1976    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_WIFI_ON_REQ, dst__, src__); \
1977    msg__->clientData = (clientData__); \
1978    msg__->dataLength = (dataLength__); \
1979    msg__->data = (data__);
1980
1981#define CsrWifiRouterCtrlWifiOnReqSendTo(dst__, src__, clientData__, dataLength__, data__) \
1982    { \
1983        CsrWifiRouterCtrlWifiOnReq *msg__; \
1984        CsrWifiRouterCtrlWifiOnReqCreate(msg__, dst__, src__, clientData__, dataLength__, data__); \
1985        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
1986    }
1987
1988#define CsrWifiRouterCtrlWifiOnReqSend(src__, clientData__, dataLength__, data__) \
1989    CsrWifiRouterCtrlWifiOnReqSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, clientData__, dataLength__, data__)
1990
1991/*******************************************************************************
1992
1993  NAME
1994    CsrWifiRouterCtrlWifiOnIndSend
1995
1996  DESCRIPTION
1997
1998  PARAMETERS
1999    queue - Destination Task Queue
2000    clientData -
2001    status -
2002    versions -
2003
2004*******************************************************************************/
2005#define CsrWifiRouterCtrlWifiOnIndCreate(msg__, dst__, src__, clientData__, status__, versions__) \
2006    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlWifiOnInd), GFP_KERNEL); \
2007    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_WIFI_ON_IND, dst__, src__); \
2008    msg__->clientData = (clientData__); \
2009    msg__->status = (status__); \
2010    msg__->versions = (versions__);
2011
2012#define CsrWifiRouterCtrlWifiOnIndSendTo(dst__, src__, clientData__, status__, versions__) \
2013    { \
2014        CsrWifiRouterCtrlWifiOnInd *msg__; \
2015        CsrWifiRouterCtrlWifiOnIndCreate(msg__, dst__, src__, clientData__, status__, versions__); \
2016        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
2017    }
2018
2019#define CsrWifiRouterCtrlWifiOnIndSend(dst__, clientData__, status__, versions__) \
2020    CsrWifiRouterCtrlWifiOnIndSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, status__, versions__)
2021
2022/*******************************************************************************
2023
2024  NAME
2025    CsrWifiRouterCtrlWifiOnResSend
2026
2027  DESCRIPTION
2028
2029  PARAMETERS
2030    clientData -
2031    status -
2032    numInterfaceAddress -
2033    stationMacAddress - array size 1 MUST match CSR_WIFI_NUM_INTERFACES
2034    smeVersions -
2035    scheduledInterrupt -
2036
2037*******************************************************************************/
2038#define CsrWifiRouterCtrlWifiOnResCreate(msg__, dst__, src__, clientData__, status__, numInterfaceAddress__, stationMacAddress__, smeVersions__, scheduledInterrupt__) \
2039    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlWifiOnRes), GFP_KERNEL); \
2040    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_WIFI_ON_RES, dst__, src__); \
2041    msg__->clientData = (clientData__); \
2042    msg__->status = (status__); \
2043    msg__->numInterfaceAddress = (numInterfaceAddress__); \
2044    memcpy(msg__->stationMacAddress, (stationMacAddress__), sizeof(CsrWifiMacAddress) * 2); \
2045    msg__->smeVersions = (smeVersions__); \
2046    msg__->scheduledInterrupt = (scheduledInterrupt__);
2047
2048#define CsrWifiRouterCtrlWifiOnResSendTo(dst__, src__, clientData__, status__, numInterfaceAddress__, stationMacAddress__, smeVersions__, scheduledInterrupt__) \
2049    { \
2050        CsrWifiRouterCtrlWifiOnRes *msg__; \
2051        CsrWifiRouterCtrlWifiOnResCreate(msg__, dst__, src__, clientData__, status__, numInterfaceAddress__, stationMacAddress__, smeVersions__, scheduledInterrupt__); \
2052        CsrMsgTransport(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
2053    }
2054
2055#define CsrWifiRouterCtrlWifiOnResSend(src__, clientData__, status__, numInterfaceAddress__, stationMacAddress__, smeVersions__, scheduledInterrupt__) \
2056    CsrWifiRouterCtrlWifiOnResSendTo(CSR_WIFI_ROUTER_IFACEQUEUE, src__, clientData__, status__, numInterfaceAddress__, stationMacAddress__, smeVersions__, scheduledInterrupt__)
2057
2058/*******************************************************************************
2059
2060  NAME
2061    CsrWifiRouterCtrlWifiOnCfmSend
2062
2063  DESCRIPTION
2064
2065  PARAMETERS
2066    queue - Destination Task Queue
2067    clientData -
2068    status -
2069
2070*******************************************************************************/
2071#define CsrWifiRouterCtrlWifiOnCfmCreate(msg__, dst__, src__, clientData__, status__) \
2072    msg__ = kmalloc(sizeof(CsrWifiRouterCtrlWifiOnCfm), GFP_KERNEL); \
2073    CsrWifiFsmEventInit(&msg__->common, CSR_WIFI_ROUTER_CTRL_PRIM, CSR_WIFI_ROUTER_CTRL_WIFI_ON_CFM, dst__, src__); \
2074    msg__->clientData = (clientData__); \
2075    msg__->status = (status__);
2076
2077#define CsrWifiRouterCtrlWifiOnCfmSendTo(dst__, src__, clientData__, status__) \
2078    { \
2079        CsrWifiRouterCtrlWifiOnCfm *msg__; \
2080        CsrWifiRouterCtrlWifiOnCfmCreate(msg__, dst__, src__, clientData__, status__); \
2081        CsrSchedMessagePut(dst__, CSR_WIFI_ROUTER_CTRL_PRIM, msg__); \
2082    }
2083
2084#define CsrWifiRouterCtrlWifiOnCfmSend(dst__, clientData__, status__) \
2085    CsrWifiRouterCtrlWifiOnCfmSendTo(dst__, CSR_WIFI_ROUTER_IFACEQUEUE, clientData__, status__)
2086
2087
2088#ifdef __cplusplus
2089}
2090#endif
2091
2092#endif /* CSR_WIFI_ROUTER_CTRL_LIB_H__ */
2093

Archive Download this file



interactive