Root/drivers/staging/csr/csr_lib.h

1#ifndef CSR_LIB_H__
2#define CSR_LIB_H__
3/*****************************************************************************
4
5            (c) Cambridge Silicon Radio Limited 2010
6            All rights reserved and confidential information of CSR
7
8            Refer to LICENSE.txt included with this source for details
9            on the license terms.
10
11*****************************************************************************/
12
13#include "csr_prim_defs.h"
14
15#ifdef __cplusplus
16extern "C" {
17#endif
18
19typedef struct
20{
21    CsrPrim type;
22} CsrEvent;
23
24/*----------------------------------------------------------------------------*
25 * CsrEvent_struct
26 *
27 * DESCRIPTION
28 * Generic message creator.
29 * Allocates and fills in a message with the signature CsrEvent
30 *
31 *----------------------------------------------------------------------------*/
32CsrEvent *CsrEvent_struct(u16 primtype, u16 msgtype);
33
34typedef struct
35{
36    CsrPrim type;
37    u8 value;
38} CsrEventCsrUint8;
39
40/*----------------------------------------------------------------------------*
41 * CsrEventCsrUint8_struct
42 *
43 * DESCRIPTION
44 * Generic message creator.
45 * Allocates and fills in a message with the signature CsrEventCsrUint8
46 *
47 *----------------------------------------------------------------------------*/
48CsrEventCsrUint8 *CsrEventCsrUint8_struct(u16 primtype, u16 msgtype, u8 value);
49
50typedef struct
51{
52    CsrPrim type;
53    u16 value;
54} CsrEventCsrUint16;
55
56/*----------------------------------------------------------------------------*
57 * CsrEventCsrUint16_struct
58 *
59 * DESCRIPTION
60 * Generic message creator.
61 * Allocates and fills in a message with the signature CsrEventCsrUint16
62 *
63 *----------------------------------------------------------------------------*/
64CsrEventCsrUint16 *CsrEventCsrUint16_struct(u16 primtype, u16 msgtype, u16 value);
65
66typedef struct
67{
68    CsrPrim type;
69    u16 value1;
70    u8 value2;
71} CsrEventCsrUint16CsrUint8;
72
73/*----------------------------------------------------------------------------*
74 * CsrEventCsrUint16CsrUint8_struct
75 *
76 * DESCRIPTION
77 * Generic message creator.
78 * Allocates and fills in a message with the signature CsrEventCsrUint16CsrUint8
79 *
80 *----------------------------------------------------------------------------*/
81CsrEventCsrUint16CsrUint8 *CsrEventCsrUint16CsrUint8_struct(u16 primtype, u16 msgtype, u16 value1, u8 value2);
82
83typedef struct
84{
85    CsrPrim type;
86    u16 value1;
87    u16 value2;
88} CsrEventCsrUint16CsrUint16;
89
90/*----------------------------------------------------------------------------*
91 * CsrEventCsrUint16CsrUint16_struct
92 *
93 * DESCRIPTION
94 * Generic message creator.
95 * Allocates and fills in a message with the signature CsrEventCsrUint16CsrUint16
96 *
97 *----------------------------------------------------------------------------*/
98CsrEventCsrUint16CsrUint16 *CsrEventCsrUint16CsrUint16_struct(u16 primtype, u16 msgtype, u16 value1, u16 value2);
99
100typedef struct
101{
102    CsrPrim type;
103    u16 value1;
104    u32 value2;
105} CsrEventCsrUint16CsrUint32;
106
107/*----------------------------------------------------------------------------*
108 * CsrEventCsrUint16_struct
109 *
110 * DESCRIPTION
111 * Generic message creator.
112 * Allocates and fills in a message with the signature CsrEventCsrUint16
113 *
114 *----------------------------------------------------------------------------*/
115CsrEventCsrUint16CsrUint32 *CsrEventCsrUint16CsrUint32_struct(u16 primtype, u16 msgtype, u16 value1, u32 value2);
116
117typedef struct
118{
119    CsrPrim type;
120    u16 value1;
121    char *value2;
122} CsrEventCsrUint16CsrCharString;
123
124/*----------------------------------------------------------------------------*
125 * CsrEventCsrUint16CsrCharString_struct
126 *
127 * DESCRIPTION
128 * Generic message creator.
129 * Allocates and fills in a message with the signature CsrEventCsrUint16CsrCharString
130 *
131 *----------------------------------------------------------------------------*/
132CsrEventCsrUint16CsrCharString *CsrEventCsrUint16CsrCharString_struct(u16 primtype, u16 msgtype, u16 value1, char *value2);
133
134typedef struct
135{
136    CsrPrim type;
137    u32 value;
138} CsrEventCsrUint32;
139
140/*----------------------------------------------------------------------------*
141 * CsrEventCsrUint32_struct
142 *
143 * DESCRIPTION
144 * Generic message creator.
145 * Allocates and fills in a message with the signature CsrEventCsrUint32
146 *
147 *----------------------------------------------------------------------------*/
148CsrEventCsrUint32 *CsrEventCsrUint32_struct(u16 primtype, u16 msgtype, u32 value);
149
150typedef struct
151{
152    CsrPrim type;
153    u32 value1;
154    u16 value2;
155} CsrEventCsrUint32CsrUint16;
156
157/*----------------------------------------------------------------------------*
158 * CsrEventCsrUint32CsrUint16_struct
159 *
160 * DESCRIPTION
161 * Generic message creator.
162 * Allocates and fills in a message with the signature CsrEventCsrUint32CsrUint16
163 *
164 *----------------------------------------------------------------------------*/
165CsrEventCsrUint32CsrUint16 *CsrEventCsrUint32CsrUint16_struct(u16 primtype, u16 msgtype, u32 value1, u32 value2);
166
167typedef struct
168{
169    CsrPrim type;
170    u32 value1;
171    char *value2;
172} CsrEventCsrUint32CsrCharString;
173
174/*----------------------------------------------------------------------------*
175 * CsrEventCsrUint32CsrCharString_struct
176 *
177 * DESCRIPTION
178 * Generic message creator.
179 * Allocates and fills in a message with the signature CsrEventCsrUint32CsrCharString
180 *
181 *----------------------------------------------------------------------------*/
182CsrEventCsrUint32CsrCharString *CsrEventCsrUint32CsrCharString_struct(u16 primtype, u16 msgtype, u32 value1, char *value2);
183
184#ifdef __cplusplus
185}
186#endif
187
188#endif /* CSR_LIB_H__ */
189

Archive Download this file



interactive