FreeCalypso > hg > fc-tourmaline
annotate cdg-hybrid/cdginc/p_mnlc.h @ 244:96784b8974eb
Switch_ON(): detect charging mode by CHGPRES bit
Consider the following scenario: the phone is on, the user plugs in
the charger, and then executes the power-off operation.  In the Iota
VRPC this sequence translates to a switch-off immediately followed
by another switch-on - but the CHGSTS bit doesn't get set on the second
switch-on cycle!  Disassembly of Pirelli's fw shows that they check
the CHGPRES bit, and furthermore, if both CHGPRES and ONBSTS are set,
the code they pass to their modified Power_ON_Button() function is
the one for charging - so let's adopt the same CHGPRES check and
the same priority order for switch-on causes.
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Mon, 03 May 2021 06:51:29 +0000 | 
| parents | 35f7a1dc9f7d | 
| children | 
| 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 | 
