annotate cdg-hybrid/cdginc/p_mnlc.h @ 275:79cfefc1e2b4

audio mode load: gracefully handle mode files of wrong AEC version Unfortunately our change of enabling L1_NEW_AEC (which is necessary in order to bring our Calypso ARM fw into match with the underlying DSP reality) brings along a change in the audio mode file binary format and file size - all those new tunable AEC parameters do need to be stored somewhere, after all. But we already have existing mode files in the old format, and setting AEC config to garbage when loading old audio modes (which is what would happen without the present change) is not an appealing proposition. The solution implemented in the present change is as follows: the audio mode loading code checks the file size, and if it differs from the active version of T_AUDIO_MODE, the T_AUDIO_AEC_CFG structure is cleared - set to the default (disabled AEC) for the compiled type of AEC. We got lucky in that this varying T_AUDIO_AEC_CFG structure sits at the end of T_AUDIO_MODE!
author Mychaela Falconia <falcon@freecalypso.org>
date Fri, 30 Jul 2021 02:55:48 +0000
parents 35f7a1dc9f7d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
14
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 /*
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2 +--------------------------------------------------------------------------+
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 | PROJECT : PROTOCOL STACK |
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4 | FILE : p_mnlc.h |
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 | SOURCE : "sap\mnlc.pdf" |
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 | LastModified : "2002-10-25" |
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7 | IdAndVersion : "8443.104.02.003" |
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 | SrcFileTime : "Thu Nov 29 09:48:12 2007" |
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 | Generated by CCDGEN_2.5.5A on Fri Oct 14 21:41:52 2016 |
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10 | !!DO NOT MODIFY!!DO NOT MODIFY!!DO NOT MODIFY!! |
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 +--------------------------------------------------------------------------+
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14 /* PRAGMAS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15 * PREFIX : NONE
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16 * COMPATIBILITY_DEFINES : NO (require PREFIX)
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17 * ALWAYS_ENUM_IN_VAL_FILE: NO
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
18 * ENABLE_GROUP: NO
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19 * CAPITALIZE_TYPENAME: NO
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 #ifndef P_MNLC_H
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24 #define P_MNLC_H
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
26
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27 #define CDG_ENTER__P_MNLC_H
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
28
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
29 #define CDG_ENTER__FILENAME _P_MNLC_H
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
30 #define CDG_ENTER__P_MNLC_H__FILE_TYPE CDGINC
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
31 #define CDG_ENTER__P_MNLC_H__LAST_MODIFIED _2002_10_25
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
32 #define CDG_ENTER__P_MNLC_H__ID_AND_VERSION _8443_104_02_003
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
33
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
34 #define CDG_ENTER__P_MNLC_H__SRC_FILE_TIME _Thu_Nov_29_09_48_12_2007
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
35
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
36 #include "CDG_ENTER.h"
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
37
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
38 #undef CDG_ENTER__P_MNLC_H
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
39
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
40 #undef CDG_ENTER__FILENAME
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
41
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
42
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
43 #include "p_mnlc.val"
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
44
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
45 #ifndef __T_called_party_bcd_num__
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
46 #define __T_called_party_bcd_num__
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
47 /*
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
48 * called Party Bcd number
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
49 * CCDGEN:WriteStruct_Count==1977
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
50 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
51 typedef struct
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
52 {
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
53 U8 number_length; /*< 0: 1> Number of decimal digits in the Bcd number */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
54 U8 bcd[L_MAX_CALLED_BCD_NO_LENGTH]; /*< 1: 10> Bcd Number */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
55 U8 _align0; /*< 11: 1> alignment */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
56 } T_called_party_bcd_num;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
57 #endif
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
58
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
59
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
60 /*
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
61 * End of substructure section, begin of primitive definition section
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
62 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
63
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
64 #ifndef __T_MNLC_SMS_MEAS_REQ__
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
65 #define __T_MNLC_SMS_MEAS_REQ__
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
66 /*
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
67 *
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
68 * CCDGEN:WriteStruct_Count==1978
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
69 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
70 typedef struct
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
71 {
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
72 U16 reference; /*< 0: 2> Reference */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
73 U8 _align0; /*< 2: 1> alignment */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
74 U8 _align1; /*< 3: 1> alignment */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
75 T_called_party_bcd_num called_party_bcd_num; /*< 4: 12> called Party Bcd number */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
76 } T_MNLC_SMS_MEAS_REQ;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
77 #endif
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
78
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
79 #ifndef __T_MNLC_SMS_MEAS_CNF__
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
80 #define __T_MNLC_SMS_MEAS_CNF__
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
81 /*
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
82 *
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
83 * CCDGEN:WriteStruct_Count==1979
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
84 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
85 typedef struct
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
86 {
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
87 U16 reference; /*< 0: 2> Reference */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
88 U8 data_valid; /*< 2: 1> Cursor Data Valid */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
89 U8 sms_text[CURSOR_SMS_TEXT_140]; /*< 3:140> SMS text */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
90 U8 _align0; /*<143: 1> alignment */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
91 } T_MNLC_SMS_MEAS_CNF;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
92 #endif
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
93
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
94
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
95 #include "CDG_LEAVE.h"
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
96
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
97
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
98 #endif