annotate cdg-hybrid/cdginc/uicc.h @ 662:8cd8fd15a095

SIM speed enhancement re-enabled and made configurable TI's original code supported SIM speed enhancement, but Openmoko had it disabled, and OM's disabling of speed enhancement somehow caused certain SIM cards to start working which didn't work before (OM's bug #666). Because our FC community is much smaller in year 2020 than OM's community was in their day, we are not able to find one of those #666-affected SIMs, thus the real issue they had encountered remains elusive. Thus our solution is to re-enable SIM speed enhancement and simply wait for if and when someone runs into a #666-affected SIM once again. We provide a SIM_allow_speed_enhancement global variable that allows SIM speed enhancement to be enabled or disabled per session, and an /etc/SIM_spenh file in FFS that allows it to enabled or disabled on a non-volatile basis. SIM speed enhancement is now enabled by default.
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 24 May 2020 05:02:28 +0000
parents e7a67accfad9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
212
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 /*
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2 +--------------------------------------------------------------------------+
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 | PROJECT : PROTOCOL STACK |
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4 | FILE : uicc.h |
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 | SOURCE : "sap\8010_136_SIMDRV_SAP.pdf" |
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 | LastModified : "2004-06-10" |
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7 | IdAndVersion : "8010.136.03.009" |
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 | SrcFileTime : "Thu Nov 29 09:27:56 2007" |
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 | Generated by CCDGEN_2.5.5A on Fri Oct 14 21:41:52 2016 |
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10 | !!DO NOT MODIFY!!DO NOT MODIFY!!DO NOT MODIFY!! |
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 +--------------------------------------------------------------------------+
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14 /* PRAGMAS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15 * PREFIX : SIMDRV
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16 * COMPATIBILITY_DEFINES : NO
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17 * ALWAYS_ENUM_IN_VAL_FILE: YES
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
18 * ENABLE_GROUP: YES
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19 * CAPITALIZE_TYPENAME: NO
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20 */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22 #ifndef UICC_INCLUDE
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 #define UICC_INCLUDE
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
26 #define PUB_L1_MISC_ENTER__Uicc_H
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
28 #define PUB_L1_MISC_ENTER__FILENAME _Uicc_H
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
29 #define PUB_L1_MISC_ENTER__Uicc_H__FILE_TYPE CDGINC
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
30 #define PUB_L1_MISC_ENTER__Uicc_H__LAST_MODIFIED _2004_06_10
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
31 #define PUB_L1_MISC_ENTER__Uicc_H__ID_AND_VERSION _8010_136_03_009
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
32
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
33 #define PUB_L1_MISC_ENTER__Uicc_H__SRC_FILE_TIME _Thu_Nov_29_09_27_56_2007
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
34
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
35 #include "pub_L1_misc_enter.h"
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
36
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
37 #undef PUB_L1_MISC_ENTER__Uicc_H
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
38
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
39 #undef PUB_L1_MISC_ENTER__FILENAME
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
40
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
41
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
42 /*
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
43 * Enum to value table VAL_reset_return_val
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
44 * CCDGEN:WriteEnum_Count==30
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
45 */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
46 #ifndef UICC_VAL_RESET_RETURN_VAL_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
47 #define UICC_VAL_RESET_RETURN_VAL_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
48 enum
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
49 {
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
50 UICC_SIM_INSERTED = 0x0, /* A SIM is inserted and ATR/PPS was successful */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
51 UICC_SIM_NOT_INSERTED = 0x1, /* No SIM inserted (hardware detected) */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
52 UICC_INVALID_CARD = 0x2, /* Card is not responding or gives unintelligible answers, communications time out. */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
53 UICC_ME_FAILURE = 0x3, /* Power management related problems, e.g. voltage selection */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
54 UICC_IMPROPER_CALL_BACK = 0x4, /* simdrv_register function called with pointer improperly set, e.g. NULL. */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
55 UICC_ME_READER_NOT_AVAILABLE = 0x5 /* The reader requested is not available */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
56 };
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
57 typedef Uint8 Uicc_ValResetReturnVal;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
58 #endif /* UICC_VAL_RESET_RETURN_VAL_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
59
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
60 /*
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
61 * Enum to value table VAL_len
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
62 * CCDGEN:WriteEnum_Count==32
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
63 */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
64 #ifndef UICC_VAL_LEN_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
65 #define UICC_VAL_LEN_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
66 enum
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
67 {
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
68 UICC_VAL_LEN__RANGE_MIN = 0x0, /* minimum */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
69 UICC_VAL_LEN__RANGE_MAX = 0x100, /* maximum */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
70 UICC_LENGTH_UNKNOWN = 0xffff /* Indicating that the length expected is unknown. */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
71 };
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
72 typedef Uint16 Uicc_ValLen;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
73 #endif /* UICC_VAL_LEN_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
74
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
75 /*
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
76 * Enum to value table VAL_sw1_2
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
77 * CCDGEN:WriteEnum_Count==34
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
78 */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
79 #ifndef UICC_VAL_SW_1_2_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
80 #define UICC_VAL_SW_1_2_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
81 enum
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
82 {
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
83 UICC_ERR_NOCARD = 0x1, /* No SIM inserted (hardware detected) */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
84 UICC_ERR_NOT_RESET = 0x2, /* A reset has not been performed on the driver with the requested Id. */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
85 UICC_ERR_ME_FAIL = 0x3, /* Unrecoverable ME failure (for instance interrupt fails to occur) */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
86 UICC_ERR_RETRY_FAIL = 0x4, /* ME/SIM communication failed after certain retries, SIM reset required */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
87 UICC_ERR_PARAM_WRONG = 0x5 /* A driver function is called with invalid parameters */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
88 };
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
89 typedef Uint8 Uicc_ValSw1_2;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
90 #endif /* UICC_VAL_SW_1_2_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
91
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
92 /*
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
93 * Enum to value table VAL_cla
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
94 * CCDGEN:WriteEnum_Count==36
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
95 */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
96 #ifndef UICC_VAL_CLA_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
97 #define UICC_VAL_CLA_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
98 enum
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
99 {
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
100 UICC_GSM_CLASS_BYTE = 0xa0, /* GSM Class byte according to [GSM 11.11 / 3GPP 51.011] */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
101 UICC_UMTS_CLASS_BYTE = 0x80, /* UMTS Class byte according to [ETSI 102 221 10.1.2] */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
102 UICC_UICC_CLASS_BYTE = 0x0 /* UICC Class byte according to [ISO 7816-4] */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
103 };
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
104 typedef Uint8 Uicc_ValCla;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
105 #endif /* UICC_VAL_CLA_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
106
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
107 /*
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
108 * Enum to value table VAL_ins
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
109 * CCDGEN:WriteEnum_Count==38
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
110 */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
111 #ifndef UICC_VAL_INS_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
112 #define UICC_VAL_INS_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
113 enum
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
114 {
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
115 UICC_INS_SELECT = 0xa4, /* Select Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
116 UICC_INS_STATUS = 0xf2, /* Status Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
117 UICC_INS_READ_BINARY = 0xb0, /* Read Binary Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
118 UICC_INS_UPDATE_BINARY = 0xd6, /* Update Binary Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
119 UICC_INS_READ_RECORD = 0xb2, /* Read Record Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
120 UICC_INS_UPDATE_RECORD = 0xdc, /* Update Record Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
121 UICC_INS_SEEK = 0xa2, /* Seek Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
122 UICC_INS_INCREASE = 0x32, /* Increase Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
123 UICC_INS_VERIFY_CHV = 0x20, /* Verify Chv Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
124 UICC_INS_CHANGE_CHV = 0x24, /* Change Chv Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
125 UICC_INS_DISABLE_CHV = 0x26, /* Disable Chv Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
126 UICC_INS_ENABLE_CHV = 0x28, /* Ensable Chv Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
127 UICC_INS_UNBLOCK_CHV = 0x2c, /* Unblock Chv Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
128 UICC_INS_INVALIDATE = 0x4, /* Invalidate Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
129 UICC_INS_REHABILITATE = 0x44, /* Rehabilitate Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
130 UICC_INS_AUTHENTICATE = 0x88, /* Run GSM Algorithm (2/2.5G) / Authenticate (3G) Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
131 UICC_INS_TERMINAL_PROFILE = 0x10, /* Terminal Profile Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
132 UICC_INS_ENVELOPE = 0xc2, /* Envelope Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
133 UICC_INS_FETCH = 0x12, /* Fetch Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
134 UICC_INS_TERMINAL_RESPONSE = 0x14, /* Terminal Response Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
135 UICC_INS_GET_RESPONSE = 0xc0 /* Get Response Instruction */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
136 };
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
137 typedef Uint8 Uicc_ValIns;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
138 #endif /* UICC_VAL_INS_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
139
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
140 /*
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
141 * Enum to value table VAL_voltage_select
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
142 * CCDGEN:WriteEnum_Count==40
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
143 */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
144 #ifndef UICC_VAL_VOLTAGE_SELECT_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
145 #define UICC_VAL_VOLTAGE_SELECT_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
146 enum
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
147 {
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
148 UICC_REQ_VOLTAGE_SEL = 0x0, /* The SIM reader driver shall perform voltage selection */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
149 UICC_OMIT_VOLTAGE_SEL = 0x1 /* The SIM reader driver shall restart with the current voltage */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
150 };
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
151 typedef Uint8 Uicc_ValVoltageSelect;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
152 #endif /* UICC_VAL_VOLTAGE_SELECT_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
153
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
154 /*
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
155 * Enum to value table VAL_config_requested
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
156 * CCDGEN:WriteEnum_Count==42
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
157 */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
158 #ifndef UICC_VAL_CONFIG_REQUESTED_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
159 #define UICC_VAL_CONFIG_REQUESTED_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
160 enum
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
161 {
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
162 UICC_OMIT_CONFIG_CHARACTERISTICS = 0x0, /* PS Shall not retrieve Configuration Characteristics */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
163 UICC_REQUEST_CONFIG_CHARACTERISTICS = 0x1 /* PS Shall retrieve Configuration Characteristics */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
164 };
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
165 typedef Uint8 Uicc_ValConfigRequested;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
166 #endif /* UICC_VAL_CONFIG_REQUESTED_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
167
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
168 /*
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
169 * Enum to value table VAL_reader_id
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
170 * CCDGEN:WriteEnum_Count==44
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
171 */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
172 #ifndef UICC_VAL_READER_ID_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
173 #define UICC_VAL_READER_ID_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
174 enum
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
175 {
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
176 UICC_VAL_READER_ID__RANGE_MIN = 0x1, /* minimum */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
177 UICC_VAL_READER_ID__RANGE_MAX = 0x2 /* maximum */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
178 };
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
179 typedef Uint8 Uicc_ValReaderId;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
180 #endif /* UICC_VAL_READER_ID_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
181 #define UICC_SIZE_ATR_INFO (0x21)
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
182 #ifndef UICC_ATR_STRING_INFO_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
183 #define UICC_ATR_STRING_INFO_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
184 /*
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
185 * SIM Card Info
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
186 * CCDGEN:WriteStruct_Count==1284
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
187 */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
188 typedef struct
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
189 {
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
190 Uint8 atrStringArrayCount; /*< 0: 1> counter */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
191 Uint8 atrStringArray[UICC_SIZE_ATR_INFO]; /*< 1: 33> SIM Card Answer to reset string */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
192 Uint8 __dummy0; /*< 34: 1> alignment */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
193 Uint8 __dummy1; /*< 35: 1> alignment */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
194 } Uicc_AtrStringInfo;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
195 #endif /* UICC_ATR_STRING_INFO_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
196
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
197
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
198 /*
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
199 * typedef between var and valtab enums
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
200 */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
201 #ifndef UICC_LEN_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
202 #define UICC_LEN_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
203 typedef Uicc_ValLen Uicc_Len;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
204 #endif /* Uicc_Len_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
205 #define UICC_MAX_RESULT (0x100)
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
206 #ifndef UICC_RESULT_INFO_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
207 #define UICC_RESULT_INFO_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
208 /*
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
209 * Result Buffer
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
210 * CCDGEN:WriteStruct_Count==1286
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
211 */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
212 typedef struct
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
213 {
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
214 Uicc_Len len; /*< 0: 2> Uicc_Len, Maximum length of expected data */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
215 Uint16 resultArrayCount; /*< 2: 2> counter */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
216 Uint8 *resultArray; /*< 4: 4> pointer codetransparent to Result byte */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
217 } Uicc_ResultInfo;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
218 #endif /* UICC_RESULT_INFO_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
219
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
220 #define UICC_MAX_DATA_SIZE (0xff)
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
221 #ifndef UICC_DATA_INFO_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
222 #define UICC_DATA_INFO_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
223 /*
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
224 * Data element info
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
225 * CCDGEN:WriteStruct_Count==1288
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
226 */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
227 typedef struct
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
228 {
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
229 Uint8 __dummy0; /*< 0: 1> alignment */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
230 Uint8 __dummy1; /*< 1: 1> alignment */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
231 Uint8 __dummy2; /*< 2: 1> alignment */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
232 Uint8 dataArrayCount; /*< 3: 1> counter */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
233 Uint8 *dataArray; /*< 4: 4> pointer codetransparent to Data element */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
234 } Uicc_DataInfo;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
235 #endif /* UICC_DATA_INFO_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
236
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
237
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
238 /*
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
239 * typedef between var and valtab enums
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
240 */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
241 #ifndef UICC_CLA_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
242 #define UICC_CLA_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
243 typedef Uicc_ValCla Uicc_Cla;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
244 #endif /* Uicc_Cla_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
245 #ifndef UICC_INS_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
246 #define UICC_INS_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
247 typedef Uicc_ValIns Uicc_Ins;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
248 #endif /* Uicc_Ins_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
249 #ifndef UICC_CMD_HEADER_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
250 #define UICC_CMD_HEADER_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
251 /*
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
252 * Transparent command header
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
253 * CCDGEN:WriteStruct_Count==1290
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
254 */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
255 typedef struct
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
256 {
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
257 Uicc_Cla cla; /*< 0: 1> Uicc_Cla, Class Byte */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
258 Uicc_Ins ins; /*< 1: 1> Uicc_Ins, instruction code */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
259 Uint8 p1; /*< 2: 1> Parameter 1 of the SIM APDU */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
260 Uint8 p2; /*< 3: 1> Parameter 2 of the SIM APDU */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
261 } Uicc_CmdHeader;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
262 #endif /* UICC_CMD_HEADER_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
263
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
264 #ifndef UICC_CONFIG_CHARACTERISTICS_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
265 #define UICC_CONFIG_CHARACTERISTICS_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
266 /*
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
267 * Configuration Characteristics
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
268 * CCDGEN:WriteStruct_Count==1292
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
269 */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
270 typedef struct
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
271 {
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
272 Uint8 uiccCharacteristics; /*< 0: 1> UICC Characteristics */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
273 Uint8 __dummy0; /*< 1: 1> alignment */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
274 Uint8 __dummy1; /*< 2: 1> alignment */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
275 Uint8 __dummy2; /*< 3: 1> alignment */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
276 } Uicc_ConfigCharacteristics;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
277 #endif /* UICC_CONFIG_CHARACTERISTICS_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
278
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
279
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
280 /*
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
281 * typedef between var and valtab enums
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
282 */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
283 #ifndef UICC_RESET_RETURN_VAL_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
284 #define UICC_RESET_RETURN_VAL_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
285 typedef Uicc_ValResetReturnVal Uicc_ResetReturnVal;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
286 #endif /* Uicc_ResetReturnVal_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
287 #ifndef UICC_LEN_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
288 #define UICC_LEN_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
289 typedef Uicc_ValLen Uicc_Len;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
290 #endif /* Uicc_Len_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
291 #ifndef UICC_SW_1_2_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
292 #define UICC_SW_1_2_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
293 typedef Uicc_ValSw1_2 Uicc_Sw1_2;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
294 #endif /* Uicc_Sw1_2_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
295 #ifndef UICC_CLA_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
296 #define UICC_CLA_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
297 typedef Uicc_ValCla Uicc_Cla;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
298 #endif /* Uicc_Cla_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
299 #ifndef UICC_INS_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
300 #define UICC_INS_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
301 typedef Uicc_ValIns Uicc_Ins;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
302 #endif /* Uicc_Ins_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
303 #ifndef UICC_VOLTAGE_SELECT_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
304 #define UICC_VOLTAGE_SELECT_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
305 typedef Uicc_ValVoltageSelect Uicc_VoltageSelect;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
306 #endif /* Uicc_VoltageSelect_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
307 #ifndef UICC_CONFIG_REQUESTED_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
308 #define UICC_CONFIG_REQUESTED_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
309 typedef Uicc_ValConfigRequested Uicc_ConfigRequested;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
310 #endif /* Uicc_ConfigRequested_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
311 #ifndef UICC_READER_ID_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
312 #define UICC_READER_ID_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
313 typedef Uicc_ValReaderId Uicc_ReaderId;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
314 #endif /* Uicc_ReaderId_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
315 #ifndef UICC_DUMMY_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
316 #define UICC_DUMMY_CLASS
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
317 /*
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
318 *
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
319 * CCDGEN:WriteStruct_Count==1294
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
320 */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
321 typedef struct
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
322 {
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
323 Puf_PrimHdr primHdr;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
324 Uicc_AtrStringInfo *atrStringInfoPtr; /*< 0: 4> pointer to SIM Card Info */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
325 Uicc_ResetReturnVal resetReturnVal; /*< 4: 1> Uicc_ResetReturnVal, Reset return value */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
326 Uint8 __dummy0; /*< 5: 1> alignment */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
327 Uint8 __dummy1; /*< 6: 1> alignment */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
328 Uint8 __dummy2; /*< 7: 1> alignment */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
329 Uicc_ResultInfo *resultInfoPtr; /*< 8: 4> pointer to Result Buffer */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
330 Uicc_Len len; /*< 12: 2> Uicc_Len, Maximum length of expected data */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
331 Uint8 __dummy3; /*< 14: 1> alignment */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
332 Uint8 __dummy4; /*< 15: 1> alignment */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
333 Uicc_DataInfo *dataInfoPtr; /*< 16: 4> pointer to Data element info */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
334 Uicc_Sw1_2 sw1_2; /*< 20: 2> Uicc_Sw1_2, Status Words */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
335 Uicc_Cla cla; /*< 22: 1> Uicc_Cla, Class Byte */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
336 Uicc_Ins ins; /*< 23: 1> Uicc_Ins, instruction code */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
337 Uicc_CmdHeader cmdHeader; /*< 24: 4> Transparent command header */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
338 Uicc_VoltageSelect voltageSelect; /*< 28: 1> Uicc_VoltageSelect, Perform Voltage Selection */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
339 Uint8 p1; /*< 29: 1> Parameter 1 of the SIM APDU */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
340 Uint8 p2; /*< 30: 1> Parameter 2 of the SIM APDU */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
341 Uicc_ConfigRequested configRequested; /*< 31: 1> Uicc_ConfigRequested, Configuration Characteristics requested */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
342 Uicc_ConfigCharacteristics *configCharacteristicsPtr; /*< 32: 4> pointer to Configuration Characteristics */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
343 Uicc_ReaderId readerId; /*< 36: 1> Uicc_ReaderId, Reader Id */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
344 Uint8 uiccCharacteristics; /*< 37: 1> UICC Characteristics */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
345 Uint8 __dummy5; /*< 38: 1> alignment */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
346 Uint8 __dummy6; /*< 39: 1> alignment */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
347 } Uicc_Dummy;
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
348
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
349 #define UICC_DUMMY_SIZE() \
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
350 ( \
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
351 sizeof(Uicc_Dummy) \
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
352 )
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
353 #endif /* UICC_DUMMY_CLASS */
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
354
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
355 #define UICC_MIN_RESULT (0x1)
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
356 #define UICC_MIN_DATA_SIZE (0x1)
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
357 #define UICC_MAX_READERS (0x2)
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
358
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
359 #include "pub_L1_misc_leave.h"
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
360
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
361
e7a67accfad9 cdg-hybrid cdginc headers created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
362 #endif