aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/epl/EplIdentu.c
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@suse.de>2008-12-19 20:11:52 -0500
committerGreg Kroah-Hartman <gregkh@suse.de>2009-01-06 16:52:39 -0500
commit833dfbe746f85898dcbcf421c1177c3fd5773ff2 (patch)
treeeff8cbd5edeec1b7de31ac70459fe000a244df08 /drivers/staging/epl/EplIdentu.c
parente0ca0595885e2e324eefe4f32cde6d65e61e6e28 (diff)
Staging: epl: run Lindent on *.c files
It's a start, still a mess... Cc: Daniel Krueger <daniel.krueger@systec-electronic.com> Cc: Ronald Sieber <Ronald.Sieber@systec-electronic.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/epl/EplIdentu.c')
-rw-r--r--drivers/staging/epl/EplIdentu.c287
1 files changed, 139 insertions, 148 deletions
diff --git a/drivers/staging/epl/EplIdentu.c b/drivers/staging/epl/EplIdentu.c
index 5ab7eba396c..ce59ef09ccd 100644
--- a/drivers/staging/epl/EplIdentu.c
+++ b/drivers/staging/epl/EplIdentu.c
@@ -95,7 +95,6 @@
95// local function prototypes 95// local function prototypes
96//--------------------------------------------------------------------------- 96//---------------------------------------------------------------------------
97 97
98
99/***************************************************************************/ 98/***************************************************************************/
100/* */ 99/* */
101/* */ 100/* */
@@ -109,7 +108,6 @@
109// 108//
110/***************************************************************************/ 109/***************************************************************************/
111 110
112
113//=========================================================================// 111//=========================================================================//
114// // 112// //
115// P R I V A T E D E F I N I T I O N S // 113// P R I V A T E D E F I N I T I O N S //
@@ -124,10 +122,9 @@
124// local types 122// local types
125//--------------------------------------------------------------------------- 123//---------------------------------------------------------------------------
126 124
127typedef struct 125typedef struct {
128{ 126 tEplIdentResponse *m_apIdentResponse[254]; // the IdentResponse are managed dynamically
129 tEplIdentResponse* m_apIdentResponse[254]; // the IdentResponse are managed dynamically 127 tEplIdentuCbResponse m_apfnCbResponse[254];
130 tEplIdentuCbResponse m_apfnCbResponse[254];
131 128
132} tEplIdentuInstance; 129} tEplIdentuInstance;
133 130
@@ -135,7 +132,7 @@ typedef struct
135// local vars 132// local vars
136//--------------------------------------------------------------------------- 133//---------------------------------------------------------------------------
137 134
138static tEplIdentuInstance EplIdentuInstance_g; 135static tEplIdentuInstance EplIdentuInstance_g;
139 136
140//--------------------------------------------------------------------------- 137//---------------------------------------------------------------------------
141// local function prototypes 138// local function prototypes
@@ -169,14 +166,13 @@ static tEplKernel PUBLIC EplIdentuCbIdentResponse(tEplFrameInfo * pFrameInfo_p);
169 166
170EPLDLLEXPORT tEplKernel PUBLIC EplIdentuInit() 167EPLDLLEXPORT tEplKernel PUBLIC EplIdentuInit()
171{ 168{
172tEplKernel Ret; 169 tEplKernel Ret;
173 170
174 Ret = EplIdentuAddInstance(); 171 Ret = EplIdentuAddInstance();
175 172
176 return Ret; 173 return Ret;
177} 174}
178 175
179
180//--------------------------------------------------------------------------- 176//---------------------------------------------------------------------------
181// 177//
182// Function: EplIdentuAddInstance 178// Function: EplIdentuAddInstance
@@ -197,21 +193,23 @@ tEplKernel Ret;
197 193
198EPLDLLEXPORT tEplKernel PUBLIC EplIdentuAddInstance() 194EPLDLLEXPORT tEplKernel PUBLIC EplIdentuAddInstance()
199{ 195{
200tEplKernel Ret; 196 tEplKernel Ret;
201 197
202 Ret = kEplSuccessful; 198 Ret = kEplSuccessful;
203 199
204 // reset instance structure 200 // reset instance structure
205 EPL_MEMSET(&EplIdentuInstance_g, 0, sizeof (EplIdentuInstance_g)); 201 EPL_MEMSET(&EplIdentuInstance_g, 0, sizeof(EplIdentuInstance_g));
206 202
207 // register IdentResponse callback function 203 // register IdentResponse callback function
208 Ret = EplDlluCalRegAsndService(kEplDllAsndIdentResponse, EplIdentuCbIdentResponse, kEplDllAsndFilterAny); 204 Ret =
205 EplDlluCalRegAsndService(kEplDllAsndIdentResponse,
206 EplIdentuCbIdentResponse,
207 kEplDllAsndFilterAny);
209 208
210 return Ret; 209 return Ret;
211 210
212} 211}
213 212
214
215//--------------------------------------------------------------------------- 213//---------------------------------------------------------------------------
216// 214//
217// Function: EplIdentuDelInstance 215// Function: EplIdentuDelInstance
@@ -232,20 +230,21 @@ tEplKernel Ret;
232 230
233EPLDLLEXPORT tEplKernel PUBLIC EplIdentuDelInstance() 231EPLDLLEXPORT tEplKernel PUBLIC EplIdentuDelInstance()
234{ 232{
235tEplKernel Ret; 233 tEplKernel Ret;
236 234
237 Ret = kEplSuccessful; 235 Ret = kEplSuccessful;
238 236
239 // deregister IdentResponse callback function 237 // deregister IdentResponse callback function
240 Ret = EplDlluCalRegAsndService(kEplDllAsndIdentResponse, NULL, kEplDllAsndFilterNone); 238 Ret =
239 EplDlluCalRegAsndService(kEplDllAsndIdentResponse, NULL,
240 kEplDllAsndFilterNone);
241 241
242 Ret = EplIdentuReset(); 242 Ret = EplIdentuReset();
243 243
244 return Ret; 244 return Ret;
245 245
246} 246}
247 247
248
249//--------------------------------------------------------------------------- 248//---------------------------------------------------------------------------
250// 249//
251// Function: EplIdentuReset 250// Function: EplIdentuReset
@@ -266,26 +265,25 @@ tEplKernel Ret;
266 265
267EPLDLLEXPORT tEplKernel PUBLIC EplIdentuReset() 266EPLDLLEXPORT tEplKernel PUBLIC EplIdentuReset()
268{ 267{
269tEplKernel Ret; 268 tEplKernel Ret;
270int iIndex; 269 int iIndex;
271 270
272 Ret = kEplSuccessful; 271 Ret = kEplSuccessful;
273 272
274 for (iIndex = 0; iIndex < tabentries (EplIdentuInstance_g.m_apIdentResponse); iIndex++) 273 for (iIndex = 0;
275 { 274 iIndex < tabentries(EplIdentuInstance_g.m_apIdentResponse);
276 if (EplIdentuInstance_g.m_apIdentResponse[iIndex] != NULL) 275 iIndex++) {
277 { // free memory 276 if (EplIdentuInstance_g.m_apIdentResponse[iIndex] != NULL) { // free memory
278 EPL_FREE(EplIdentuInstance_g.m_apIdentResponse[iIndex]); 277 EPL_FREE(EplIdentuInstance_g.m_apIdentResponse[iIndex]);
279 } 278 }
280 } 279 }
281 280
282 EPL_MEMSET(&EplIdentuInstance_g, 0, sizeof (EplIdentuInstance_g)); 281 EPL_MEMSET(&EplIdentuInstance_g, 0, sizeof(EplIdentuInstance_g));
283 282
284 return Ret; 283 return Ret;
285 284
286} 285}
287 286
288
289//--------------------------------------------------------------------------- 287//---------------------------------------------------------------------------
290// 288//
291// Function: EplIdentuGetIdentResponse 289// Function: EplIdentuGetIdentResponse
@@ -302,31 +300,28 @@ int iIndex;
302// 300//
303//--------------------------------------------------------------------------- 301//---------------------------------------------------------------------------
304 302
305tEplKernel PUBLIC EplIdentuGetIdentResponse( 303tEplKernel PUBLIC EplIdentuGetIdentResponse(unsigned int uiNodeId_p,
306 unsigned int uiNodeId_p, 304 tEplIdentResponse **
307 tEplIdentResponse** ppIdentResponse_p) 305 ppIdentResponse_p)
308{ 306{
309tEplKernel Ret; 307 tEplKernel Ret;
310 308
311 Ret = kEplSuccessful; 309 Ret = kEplSuccessful;
312 310
313 // decrement node ID, because array is zero based 311 // decrement node ID, because array is zero based
314 uiNodeId_p--; 312 uiNodeId_p--;
315 if (uiNodeId_p < tabentries (EplIdentuInstance_g.m_apIdentResponse)) 313 if (uiNodeId_p < tabentries(EplIdentuInstance_g.m_apIdentResponse)) {
316 { 314 *ppIdentResponse_p =
317 *ppIdentResponse_p = EplIdentuInstance_g.m_apIdentResponse[uiNodeId_p]; 315 EplIdentuInstance_g.m_apIdentResponse[uiNodeId_p];
318 } 316 } else { // invalid node ID specified
319 else 317 *ppIdentResponse_p = NULL;
320 { // invalid node ID specified 318 Ret = kEplInvalidNodeId;
321 *ppIdentResponse_p = NULL; 319 }
322 Ret = kEplInvalidNodeId;
323 }
324 320
325 return Ret; 321 return Ret;
326 322
327} 323}
328 324
329
330//--------------------------------------------------------------------------- 325//---------------------------------------------------------------------------
331// 326//
332// Function: EplIdentuRequestIdentResponse 327// Function: EplIdentuRequestIdentResponse
@@ -343,42 +338,38 @@ tEplKernel Ret;
343// 338//
344//--------------------------------------------------------------------------- 339//---------------------------------------------------------------------------
345 340
346tEplKernel PUBLIC EplIdentuRequestIdentResponse( 341tEplKernel PUBLIC EplIdentuRequestIdentResponse(unsigned int uiNodeId_p,
347 unsigned int uiNodeId_p, 342 tEplIdentuCbResponse
348 tEplIdentuCbResponse pfnCbResponse_p) 343 pfnCbResponse_p)
349{ 344{
350tEplKernel Ret; 345 tEplKernel Ret;
351 346
352 Ret = kEplSuccessful; 347 Ret = kEplSuccessful;
353 348
354 // decrement node ID, because array is zero based 349 // decrement node ID, because array is zero based
355 uiNodeId_p--; 350 uiNodeId_p--;
356 if (uiNodeId_p < tabentries (EplIdentuInstance_g.m_apfnCbResponse)) 351 if (uiNodeId_p < tabentries(EplIdentuInstance_g.m_apfnCbResponse)) {
357 {
358#if(((EPL_MODULE_INTEGRATION) & (EPL_MODULE_NMT_MN)) != 0) 352#if(((EPL_MODULE_INTEGRATION) & (EPL_MODULE_NMT_MN)) != 0)
359 if (EplIdentuInstance_g.m_apfnCbResponse[uiNodeId_p] != NULL) 353 if (EplIdentuInstance_g.m_apfnCbResponse[uiNodeId_p] != NULL) { // request already issued (maybe by someone else)
360 { // request already issued (maybe by someone else) 354 Ret = kEplInvalidOperation;
361 Ret = kEplInvalidOperation; 355 } else {
362 } 356 EplIdentuInstance_g.m_apfnCbResponse[uiNodeId_p] =
363 else 357 pfnCbResponse_p;
364 { 358 Ret =
365 EplIdentuInstance_g.m_apfnCbResponse[uiNodeId_p] = pfnCbResponse_p; 359 EplDlluCalIssueRequest(kEplDllReqServiceIdent,
366 Ret = EplDlluCalIssueRequest(kEplDllReqServiceIdent, (uiNodeId_p + 1), 0xFF); 360 (uiNodeId_p + 1), 0xFF);
367 } 361 }
368#else 362#else
369 Ret = kEplInvalidOperation; 363 Ret = kEplInvalidOperation;
370#endif 364#endif
371 } 365 } else { // invalid node ID specified
372 else 366 Ret = kEplInvalidNodeId;
373 { // invalid node ID specified 367 }
374 Ret = kEplInvalidNodeId;
375 }
376 368
377 return Ret; 369 return Ret;
378 370
379} 371}
380 372
381
382//--------------------------------------------------------------------------- 373//---------------------------------------------------------------------------
383// 374//
384// Function: EplIdentuGetRunningRequests 375// Function: EplIdentuGetRunningRequests
@@ -399,20 +390,17 @@ tEplKernel Ret;
399 390
400EPLDLLEXPORT DWORD PUBLIC EplIdentuGetRunningRequests(void) 391EPLDLLEXPORT DWORD PUBLIC EplIdentuGetRunningRequests(void)
401{ 392{
402DWORD dwReqs = 0; 393 DWORD dwReqs = 0;
403unsigned int uiIndex; 394 unsigned int uiIndex;
404
405 for (uiIndex = 0; uiIndex < 32; uiIndex++)
406 {
407 if (EplIdentuInstance_g.m_apfnCbResponse[uiIndex] != NULL)
408 {
409 dwReqs |= (1 << uiIndex);
410 }
411 }
412
413 return dwReqs;
414}
415 395
396 for (uiIndex = 0; uiIndex < 32; uiIndex++) {
397 if (EplIdentuInstance_g.m_apfnCbResponse[uiIndex] != NULL) {
398 dwReqs |= (1 << uiIndex);
399 }
400 }
401
402 return dwReqs;
403}
416 404
417//=========================================================================// 405//=========================================================================//
418// // 406// //
@@ -440,58 +428,61 @@ unsigned int uiIndex;
440 428
441static tEplKernel PUBLIC EplIdentuCbIdentResponse(tEplFrameInfo * pFrameInfo_p) 429static tEplKernel PUBLIC EplIdentuCbIdentResponse(tEplFrameInfo * pFrameInfo_p)
442{ 430{
443tEplKernel Ret = kEplSuccessful; 431 tEplKernel Ret = kEplSuccessful;
444unsigned int uiNodeId; 432 unsigned int uiNodeId;
445unsigned int uiIndex; 433 unsigned int uiIndex;
446tEplIdentuCbResponse pfnCbResponse; 434 tEplIdentuCbResponse pfnCbResponse;
447 435
448 uiNodeId = AmiGetByteFromLe(&pFrameInfo_p->m_pFrame->m_le_bSrcNodeId); 436 uiNodeId = AmiGetByteFromLe(&pFrameInfo_p->m_pFrame->m_le_bSrcNodeId);
449 437
450 uiIndex = uiNodeId - 1; 438 uiIndex = uiNodeId - 1;
451 439
452 if (uiIndex < tabentries (EplIdentuInstance_g.m_apfnCbResponse)) 440 if (uiIndex < tabentries(EplIdentuInstance_g.m_apfnCbResponse)) {
453 { 441 // memorize pointer to callback function
454 // memorize pointer to callback function 442 pfnCbResponse = EplIdentuInstance_g.m_apfnCbResponse[uiIndex];
455 pfnCbResponse = EplIdentuInstance_g.m_apfnCbResponse[uiIndex]; 443 // reset callback function pointer so that caller may issue next request immediately
456 // reset callback function pointer so that caller may issue next request immediately 444 EplIdentuInstance_g.m_apfnCbResponse[uiIndex] = NULL;
457 EplIdentuInstance_g.m_apfnCbResponse[uiIndex] = NULL; 445
458 446 if (pFrameInfo_p->m_uiFrameSize < EPL_C_DLL_MINSIZE_IDENTRES) { // IdentResponse not received or it has invalid size
459 if (pFrameInfo_p->m_uiFrameSize < EPL_C_DLL_MINSIZE_IDENTRES) 447 if (pfnCbResponse == NULL) { // response was not requested
460 { // IdentResponse not received or it has invalid size 448 goto Exit;
461 if (pfnCbResponse == NULL) 449 }
462 { // response was not requested 450 Ret = pfnCbResponse(uiNodeId, NULL);
463 goto Exit; 451 } else { // IdentResponse received
464 } 452 if (EplIdentuInstance_g.m_apIdentResponse[uiIndex] == NULL) { // memory for IdentResponse must be allocated
465 Ret = pfnCbResponse(uiNodeId, NULL); 453 EplIdentuInstance_g.m_apIdentResponse[uiIndex] =
466 } 454 EPL_MALLOC(sizeof(tEplIdentResponse));
467 else 455 if (EplIdentuInstance_g.m_apIdentResponse[uiIndex] == NULL) { // malloc failed
468 { // IdentResponse received 456 if (pfnCbResponse == NULL) { // response was not requested
469 if (EplIdentuInstance_g.m_apIdentResponse[uiIndex] == NULL) 457 goto Exit;
470 { // memory for IdentResponse must be allocated 458 }
471 EplIdentuInstance_g.m_apIdentResponse[uiIndex] = EPL_MALLOC(sizeof (tEplIdentResponse)); 459 Ret =
472 if (EplIdentuInstance_g.m_apIdentResponse[uiIndex] == NULL) 460 pfnCbResponse(uiNodeId,
473 { // malloc failed 461 &pFrameInfo_p->
474 if (pfnCbResponse == NULL) 462 m_pFrame->m_Data.
475 { // response was not requested 463 m_Asnd.m_Payload.
476 goto Exit; 464 m_IdentResponse);
477 } 465 goto Exit;
478 Ret = pfnCbResponse(uiNodeId, &pFrameInfo_p->m_pFrame->m_Data.m_Asnd.m_Payload.m_IdentResponse); 466 }
479 goto Exit; 467 }
480 } 468 // copy IdentResponse to instance structure
481 } 469 EPL_MEMCPY(EplIdentuInstance_g.
482 // copy IdentResponse to instance structure 470 m_apIdentResponse[uiIndex],
483 EPL_MEMCPY(EplIdentuInstance_g.m_apIdentResponse[uiIndex], &pFrameInfo_p->m_pFrame->m_Data.m_Asnd.m_Payload.m_IdentResponse, sizeof(tEplIdentResponse)); 471 &pFrameInfo_p->m_pFrame->m_Data.m_Asnd.
484 if (pfnCbResponse == NULL) 472 m_Payload.m_IdentResponse,
485 { // response was not requested 473 sizeof(tEplIdentResponse));
486 goto Exit; 474 if (pfnCbResponse == NULL) { // response was not requested
487 } 475 goto Exit;
488 Ret = pfnCbResponse(uiNodeId, EplIdentuInstance_g.m_apIdentResponse[uiIndex]); 476 }
489 } 477 Ret =
490 } 478 pfnCbResponse(uiNodeId,
491 479 EplIdentuInstance_g.
492Exit: 480 m_apIdentResponse[uiIndex]);
493 return Ret; 481 }
482 }
483
484 Exit:
485 return Ret;
494} 486}
495 487
496// EOF 488// EOF
497