FreeCalypso > hg > freecalypso-sw
annotate gsm-fw/services/dar/dar_msg_ft.c @ 923:10b4bed10192
gsm-fw/L1: fix for the DSP patch corruption bug
The L1 code we got from the LoCosto fw contains a feature for DSP CPU load
measurement. This feature is a LoCosto-ism, i.e., not applicable to earlier
DBB chips (Calypso) with their respective earlier DSP ROMs. Most of the
code dealing with that feature is conditionalized as #if (DSP >= 38),
but one spot was missed, and the MCU code was writing into an API word
dealing with this feature. In TCS211 this DSP API word happens to be
used by the DSP code patch, hence that write was corrupting the patched
DSP code.
author | Mychaela Falconia <falcon@ivan.Harhan.ORG> |
---|---|
date | Mon, 19 Oct 2015 17:13:56 +0000 |
parents | 083f262b7bbe |
children |
rev | line source |
---|---|
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
1 /****************************************************************************/ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
2 /* */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
3 /* File Name: dar_msg_ft.c */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
4 /* */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
5 /* Purpose: This function is called when the DAR entity receives a new */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
6 /* message in its mailbox and wants to process the message. */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
7 /* */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
8 /* */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
9 /* Version 0.1 */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
10 /* */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
11 /* Date Modification */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
12 /* ------------------------------------ */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
13 /* 17 October 2001 Create */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
14 /* */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
15 /* Author Stephanie Gerthoux */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
16 /* */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
17 /* (C) Copyright 2001 by Texas Instruments Incorporated, All Rights Reserved*/ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
18 /****************************************************************************/ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
19 |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
20 #include "../../riviera/rv/rv_defined_swe.h" |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
21 #ifdef RVM_DAR_SWE |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
22 #ifndef _WINDOWS |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
23 #include "../../include/config.h" |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
24 #endif |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
25 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
26 #include <string.h> |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
27 #include "../../riviera/rvm/rvm_gen.h" |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
28 #include "dar_api.h" |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
29 #include "dar_macro_i.h" |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
30 #include "dar_messages_i.h" |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
31 #include "dar_const_i.h" |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
32 #include "dar_diagnose_i.h" |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
33 #include "dar_error_hdlr_i.h" |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
34 |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
35 #ifndef _WINDOWS |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
36 #include "../../bsp/timer.h" |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
37 #endif |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
38 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
39 /**** Global variable ****/ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
40 /* index used in the circular buffer*/ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
41 UINT16 dar_current_index = 0; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
42 /* Write buffer*/ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
43 extern char dar_write_buffer[DAR_MAX_BUFFER_SIZE]; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
44 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
45 /* Get the dar_current status */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
46 extern T_DAR_RECOVERY_STATUS dar_current_status; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
47 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
48 /* Define a pointer to the Global Environment Control block */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
49 extern T_DAR_ENV_CTRL_BLK *dar_gbl_var_p; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
50 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
51 /* Define the recovery buffer */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
52 extern UINT8 dar_recovery_buffer[DAR_RECOVERY_DATA_MAX_BUFFER_SIZE]; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
53 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
54 /**** Extern functions ****/ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
55 extern void * dar_read_mbox (UINT8 mbox); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
56 |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
57 /***************************************************************************/ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
58 /* Function dar_filter_request */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
59 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
60 /* Description This function checks if the use_id group_nb exists: */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
61 /* - if the group_nb exists, it adds the warning and */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
62 /* debug masks in the dar_array_filter */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
63 /* - otherwise, this function add the new group_nb and*/ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
64 /* the masks in the dar_array_filter */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
65 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
66 /***************************************************************************/ |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
67 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
68 T_RV_RET dar_filter_request (T_DAR_FILTER_START *msg_p) |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
69 { |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
70 /* Declare local variables*/ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
71 UINT8 index = 0; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
72 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
73 /* check if the DAR entity is started */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
74 if (dar_gbl_var_p == NULL ) |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
75 { |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
76 dar_error_trace(DAR_ENTITY_NOT_START); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
77 return(RV_NOT_READY); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
78 } |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
79 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
80 /*** check if the group exists ****/ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
81 /* If the group exists... */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
82 if(dar_search_group(msg_p->use_msg_parameter.group_nb,&index)== RV_OK) |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
83 { |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
84 /* Check the Dar level */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
85 switch(msg_p->use_msg_parameter.level) |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
86 { |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
87 case DAR_WARNING: |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
88 { /* The DAR entity wants to process Warning messages */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
89 /* add the mask_warning in the dar_filter array */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
90 dar_gbl_var_p ->dar_filter_array[index].mask_warning |= |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
91 msg_p->use_msg_parameter.mask; |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
92 dar_gbl_var_p ->dar_filter_array[index].mask_debug = 0x00; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
93 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
94 break; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
95 } |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
96 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
97 case DAR_DEBUG: |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
98 { |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
99 /* The DAR entity wants to process Debug messages */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
100 /* As the Warning messages are more important than debug */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
101 /* messages, it processes warning message too */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
102 |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
103 /* add the mask_debug in the dar_filter array */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
104 dar_gbl_var_p ->dar_filter_array[index].mask_debug |= |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
105 msg_p->use_msg_parameter.mask; |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
106 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
107 /* add the mask_warning in the dar_filter array */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
108 dar_gbl_var_p ->dar_filter_array[index].mask_warning |= |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
109 msg_p->use_msg_parameter.mask; |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
110 break; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
111 } |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
112 |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
113 case DAR_NO_DIAGNOSE: |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
114 { |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
115 /* The DAR entity doesn't want to process Diagnose messages */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
116 |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
117 /* delete the mask_debug in the dar_filter array */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
118 dar_gbl_var_p ->dar_filter_array[index].mask_debug = 0x00; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
119 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
120 /* delete the mask_warning in the dar_filter array */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
121 dar_gbl_var_p ->dar_filter_array[index].mask_warning = 0x00; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
122 break; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
123 } |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
124 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
125 default: |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
126 { |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
127 /* Unknow level has been received */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
128 DAR_TRACE_WARNING("A DAR unknow level has been received "); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
129 break; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
130 } |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
131 } /* switch(msg_p->use_msg_parameter.level) */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
132 } /* if (search_group(msg_p->use_msg_parameter.group_nb,*index_gbl_p)== RV_OK) */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
133 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
134 else |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
135 { |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
136 /* if the group doesn't exist and if there is enough space in the |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
137 dar_filter_array */ |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
138 if ( dar_add_group(&index)== RV_OK) |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
139 { |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
140 /* ... add the group in the dar_array_filter */ |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
141 dar_gbl_var_p ->dar_filter_array[index].group_nb |= |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
142 msg_p->use_msg_parameter.group_nb; |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
143 /* Check the Dar level */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
144 switch(msg_p->use_msg_parameter.level) |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
145 { |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
146 case DAR_WARNING: |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
147 { /* The DAR entity wants to process Warning messages */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
148 /* add the mask_warning in the dar_filter array */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
149 dar_gbl_var_p ->dar_filter_array[index].mask_warning |= |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
150 msg_p->use_msg_parameter.mask; |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
151 break; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
152 } |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
153 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
154 case DAR_DEBUG: |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
155 { |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
156 /* The DAR entity wants to process Debug messages */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
157 /* As the Warning messages are more important than debug */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
158 /* messages, it processes warning message too */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
159 |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
160 /* add the mask_debug in the dar_filter array */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
161 dar_gbl_var_p ->dar_filter_array[index].mask_debug |= |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
162 msg_p->use_msg_parameter.mask; |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
163 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
164 /* add the mask_warning in the dar_filter array */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
165 dar_gbl_var_p ->dar_filter_array[index].mask_warning |= |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
166 msg_p->use_msg_parameter.mask; |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
167 break; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
168 } |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
169 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
170 default: |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
171 { |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
172 /* Unknow level has been received */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
173 DAR_TRACE_WARNING("A DAR unknow level has been received "); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
174 break; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
175 }; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
176 } /* switch */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
177 }/* if ( add_group(msg_p->use_msg_parameter.group_nb,*index_gbl_p)== RV_OK)) */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
178 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
179 else |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
180 { |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
181 /* There is not enough space in the dar_array_filter */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
182 DAR_TRACE_WARNING("Not enough space in the dar_array_filter for adding a new group "); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
183 } |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
184 } |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
185 return(RV_OK); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
186 }/* dar_filter_request */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
187 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
188 |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
189 /***************************************************************************/ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
190 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
191 /* Function Name: dar_write_data_in_buffer */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
192 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
193 /* Purpose: This function is called to store diagnose data in RAM */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
194 /* buffer. */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
195 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
196 /* note: In order to separate the different string, the data */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
197 /* are stored as follows: */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
198 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
199 /* Input Parameters: */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
200 /* Pointer to the message to store */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
201 /* Data Format, */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
202 /* Data level, */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
203 /* Data Use Id, */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
204 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
205 /* Output Parameters: */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
206 /* Validation of the diagnose execution. */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
207 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
208 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
209 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
210 /* Revision History: */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
211 /* None. */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
212 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
213 /***************************************************************************/ |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
214 T_RV_RET dar_write_data_in_buffer( T_DAR_WRITE_START *msg_p) |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
215 { |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
216 /* Local variables */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
217 UINT8 i = 0; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
218 UINT8 length = 0; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
219 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
220 /* Diagnose string length */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
221 length = (UINT16) strlen(msg_p->data_write.char_p); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
222 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
223 /*** Circular buffer to store data ***/ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
224 /* Add 0xFF to separate 2 strings */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
225 dar_write_buffer[dar_current_index] = 0xF; |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
226 DAR_PLUS_PLUS(dar_current_index); /* increment with wraparound */ |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
227 dar_write_buffer[dar_current_index] = 0xF; |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
228 DAR_PLUS_PLUS(dar_current_index); /* increment with wraparound */ |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
229 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
230 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
231 /* The group_nb is 16 bit length, and the buffer is an UINT8 length */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
232 /* So the group_nb must be stocked by dividing it in 2 parts */ |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
233 dar_write_buffer[dar_current_index] = |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
234 (msg_p->data_write.use_id.group_nb)>>8; |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
235 /*add the 8 first bits of the Use id group*/ |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
236 DAR_PLUS_PLUS(dar_current_index); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
237 dar_write_buffer[dar_current_index] = msg_p->data_write.use_id.group_nb; |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
238 /*add the 8 last bits of the Use id group*/ |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
239 DAR_PLUS_PLUS(dar_current_index); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
240 /* The mask is 16 bit length, and the buffer is an UINT8 length */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
241 /* So the mask must be stocked by dividing it in 2 parts */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
242 dar_write_buffer[dar_current_index] = (msg_p->data_write.use_id.mask)>>8; |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
243 /* add the 8 first bits of the Use id mask */ |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
244 DAR_PLUS_PLUS(dar_current_index); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
245 dar_write_buffer[dar_current_index] = msg_p->data_write.use_id.mask; |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
246 /* add the 8 last bits of the Use id mask */ |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
247 DAR_PLUS_PLUS(dar_current_index); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
248 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
249 /* Add the dar_level data */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
250 dar_write_buffer[dar_current_index] = msg_p->data_write.level; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
251 DAR_PLUS_PLUS(dar_current_index); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
252 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
253 /* circular buffer to store diagnose data in RAM buffer */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
254 for (i=0; i < length; i++ ) |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
255 { |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
256 /* copy string in the RAM char by char*/ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
257 dar_write_buffer[dar_current_index]=msg_p->data_write.char_p[i]; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
258 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
259 /* detection of the end of the buffer */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
260 /* When current = DAR_MAX_BUFFER_SIZE , current = 0 */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
261 DAR_PLUS_PLUS(dar_current_index); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
262 } |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
263 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
264 /* DAR information is redirected to standard trace */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
265 //DAR_SEND_TRACE("circular buffer : ",RV_TRACE_LEVEL_DEBUG_HIGH); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
266 //rvf_send_trace(msg_p->data_write.char_p, length, NULL_PARAM, RV_TRACE_LEVEL_DEBUG_HIGH, DAR_USE_ID); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
267 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
268 return(RV_OK); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
269 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
270 } /* dar_send_write_data */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
271 |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
272 /***************************************************************************/ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
273 /* Function dar_empty_mb_and_save_data */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
274 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
275 /* Description This function is used to empty the mailbox and save */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
276 /* data in the RAM buffer. */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
277 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
278 /* Input Parameters: */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
279 /* Pointer to the message to store */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
280 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
281 /* Output Parameters: */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
282 /* Validation of the function execution. */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
283 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
284 /* Note: */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
285 /* None */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
286 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
287 /***************************************************************************/ |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
288 T_RV_RET dar_empty_mb_and_save_data( T_DAR_INFO *buffer_p) |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
289 { |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
290 /* Declare local variables */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
291 UINT8 i = 0; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
292 UINT16 length = 0; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
293 T_RV_HDR *msg_p = ( T_RV_HDR*) dar_read_mbox(DAR_MBOX); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
294 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
295 /**** Empty the mail box ****/ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
296 while(msg_p != NULL) |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
297 { |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
298 /* If it's a Write message, store it in the Ram */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
299 /* ( it is not interesting to store filter message ) */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
300 if ((msg_p->msg_id) == DAR_WRITE_REQ) |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
301 { |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
302 /* store themessage in the RAM*/ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
303 dar_write_data_in_buffer((T_DAR_WRITE_START *)msg_p); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
304 } |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
305 /* free the Header of the message */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
306 rvf_free_buf((T_RVF_BUFFER *) msg_p); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
307 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
308 /* Read the next message */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
309 msg_p = ( T_RV_HDR*) dar_read_mbox(DAR_MBOX); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
310 } /* while (msg_p != NULL) */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
311 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
312 /**** Store data in RAM buffer ****/ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
313 /* Diagnose string length */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
314 length = (UINT16) strlen(buffer_p); |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
315 |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
316 /** Circular buffer to store data **/ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
317 /* Add 0xFF to separate 2 strings */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
318 dar_write_buffer[dar_current_index] = 0xF; |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
319 DAR_PLUS_PLUS(dar_current_index); /* increment with wraparound */ |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
320 dar_write_buffer[dar_current_index] = 0xF; |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
321 DAR_PLUS_PLUS(dar_current_index); /* increment with wraparound */ |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
322 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
323 /* Add the dar_level data */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
324 dar_write_buffer[dar_current_index] = DAR_EXCEPTION; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
325 DAR_PLUS_PLUS(dar_current_index); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
326 /* circular buffer to store diagnose data in RAM buffer */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
327 for (i=0; i < length; i++ ) |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
328 { |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
329 /* copy string in the RAM char by char*/ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
330 dar_write_buffer[dar_current_index]=buffer_p[i]; |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
331 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
332 /* detection of the end of the buffer */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
333 /* When current = DAR_MAX_BUFFER_SIZE , current = 0 */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
334 DAR_PLUS_PLUS(dar_current_index); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
335 } |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
336 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
337 return(RV_OK); |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
338 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
339 }/* dar_empty_mb_and_save_data*/ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
340 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
341 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
342 #endif /* #ifdef RVM_DAR_SWE */ |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
343 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
344 |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
345 |
309
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
346 /******************************************************************************/ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
347 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
348 /* ------------------------------------------------ */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
349 /* | WARNING - IMPORTANT | */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
350 /* ------------------------------------------------ */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
351 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
352 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
353 /* Function Name: dar_lib */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
354 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
355 /* Purpose: This function is only used in order to have a function in the */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
356 /* dar_lib when the DAR is NOT_COMPILED */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
357 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
358 /* Input Parameters: */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
359 /* None */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
360 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
361 /* Output Parameters: */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
362 /* NONE */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
363 /* */ |
a7087f91c752
DAR: all C modules compile without RVM_DAR_SWE
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
305
diff
changeset
|
364 /******************************************************************************/ |
305
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
365 void dar_lib(void) |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
366 { |
4dccc9d3305f
gsm-fw: checking in DAR from Leonardo source
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
367 } |