annotate cdg-hybrid/cdginc/uicc.h @ 294:e17bdedfbf2b

VIBR SWE initial implementation
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 27 Mar 2022 08:46:10 +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 : uicc.h |
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 | SOURCE : "sap\8010_136_SIMDRV_SAP.pdf" |
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 | LastModified : "2004-06-10" |
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7 | IdAndVersion : "8010.136.03.009" |
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 | SrcFileTime : "Thu Nov 29 09:27:56 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 : SIMDRV
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16 * COMPATIBILITY_DEFINES : NO
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17 * ALWAYS_ENUM_IN_VAL_FILE: YES
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
18 * ENABLE_GROUP: YES
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 #ifndef UICC_INCLUDE
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 #define UICC_INCLUDE
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24
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 #define PUB_L1_MISC_ENTER__Uicc_H
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
28 #define PUB_L1_MISC_ENTER__FILENAME _Uicc_H
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
29 #define PUB_L1_MISC_ENTER__Uicc_H__FILE_TYPE CDGINC
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
30 #define PUB_L1_MISC_ENTER__Uicc_H__LAST_MODIFIED _2004_06_10
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
31 #define PUB_L1_MISC_ENTER__Uicc_H__ID_AND_VERSION _8010_136_03_009
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
32
35f7a1dc9f7d cdg-hybrid: import from Magnetite
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
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
34
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
35 #include "pub_L1_misc_enter.h"
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
36
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
37 #undef PUB_L1_MISC_ENTER__Uicc_H
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
38
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
39 #undef PUB_L1_MISC_ENTER__FILENAME
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
40
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 * Enum to value table VAL_reset_return_val
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
44 * CCDGEN:WriteEnum_Count==30
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
45 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
46 #ifndef UICC_VAL_RESET_RETURN_VAL_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
47 #define UICC_VAL_RESET_RETURN_VAL_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
48 enum
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
49 {
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
50 UICC_SIM_INSERTED = 0x0, /* A SIM is inserted and ATR/PPS was successful */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
51 UICC_SIM_NOT_INSERTED = 0x1, /* No SIM inserted (hardware detected) */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
52 UICC_INVALID_CARD = 0x2, /* Card is not responding or gives unintelligible answers, communications time out. */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
53 UICC_ME_FAILURE = 0x3, /* Power management related problems, e.g. voltage selection */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
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. */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
55 UICC_ME_READER_NOT_AVAILABLE = 0x5 /* The reader requested is not available */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
56 };
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
57 typedef Uint8 Uicc_ValResetReturnVal;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
58 #endif /* UICC_VAL_RESET_RETURN_VAL_CLASS */
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 * Enum to value table VAL_len
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
62 * CCDGEN:WriteEnum_Count==32
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 UICC_VAL_LEN_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
65 #define UICC_VAL_LEN_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
66 enum
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 UICC_VAL_LEN__RANGE_MIN = 0x0, /* minimum */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
69 UICC_VAL_LEN__RANGE_MAX = 0x100, /* maximum */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
70 UICC_LENGTH_UNKNOWN = 0xffff /* Indicating that the length expected is unknown. */
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 typedef Uint16 Uicc_ValLen;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
73 #endif /* UICC_VAL_LEN_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
74
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
75 /*
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
76 * Enum to value table VAL_sw1_2
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
77 * CCDGEN:WriteEnum_Count==34
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 UICC_VAL_SW_1_2_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
80 #define UICC_VAL_SW_1_2_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
81 enum
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 UICC_ERR_NOCARD = 0x1, /* No SIM inserted (hardware detected) */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
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. */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
85 UICC_ERR_ME_FAIL = 0x3, /* Unrecoverable ME failure (for instance interrupt fails to occur) */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
86 UICC_ERR_RETRY_FAIL = 0x4, /* ME/SIM communication failed after certain retries, SIM reset required */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
87 UICC_ERR_PARAM_WRONG = 0x5 /* A driver function is called with invalid parameters */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
88 };
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
89 typedef Uint8 Uicc_ValSw1_2;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
90 #endif /* UICC_VAL_SW_1_2_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
91
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
92 /*
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
93 * Enum to value table VAL_cla
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
94 * CCDGEN:WriteEnum_Count==36
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
95 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
96 #ifndef UICC_VAL_CLA_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
97 #define UICC_VAL_CLA_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
98 enum
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
99 {
35f7a1dc9f7d cdg-hybrid: import from Magnetite
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] */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
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] */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
102 UICC_UICC_CLASS_BYTE = 0x0 /* UICC Class byte according to [ISO 7816-4] */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
103 };
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
104 typedef Uint8 Uicc_ValCla;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
105 #endif /* UICC_VAL_CLA_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
106
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
107 /*
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
108 * Enum to value table VAL_ins
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
109 * CCDGEN:WriteEnum_Count==38
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
110 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
111 #ifndef UICC_VAL_INS_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
112 #define UICC_VAL_INS_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
113 enum
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
114 {
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
115 UICC_INS_SELECT = 0xa4, /* Select Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
116 UICC_INS_STATUS = 0xf2, /* Status Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
117 UICC_INS_READ_BINARY = 0xb0, /* Read Binary Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
118 UICC_INS_UPDATE_BINARY = 0xd6, /* Update Binary Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
119 UICC_INS_READ_RECORD = 0xb2, /* Read Record Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
120 UICC_INS_UPDATE_RECORD = 0xdc, /* Update Record Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
121 UICC_INS_SEEK = 0xa2, /* Seek Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
122 UICC_INS_INCREASE = 0x32, /* Increase Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
123 UICC_INS_VERIFY_CHV = 0x20, /* Verify Chv Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
124 UICC_INS_CHANGE_CHV = 0x24, /* Change Chv Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
125 UICC_INS_DISABLE_CHV = 0x26, /* Disable Chv Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
126 UICC_INS_ENABLE_CHV = 0x28, /* Ensable Chv Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
127 UICC_INS_UNBLOCK_CHV = 0x2c, /* Unblock Chv Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
128 UICC_INS_INVALIDATE = 0x4, /* Invalidate Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
129 UICC_INS_REHABILITATE = 0x44, /* Rehabilitate Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
130 UICC_INS_AUTHENTICATE = 0x88, /* Run GSM Algorithm (2/2.5G) / Authenticate (3G) Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
131 UICC_INS_TERMINAL_PROFILE = 0x10, /* Terminal Profile Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
132 UICC_INS_ENVELOPE = 0xc2, /* Envelope Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
133 UICC_INS_FETCH = 0x12, /* Fetch Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
134 UICC_INS_TERMINAL_RESPONSE = 0x14, /* Terminal Response Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
135 UICC_INS_GET_RESPONSE = 0xc0 /* Get Response Instruction */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
136 };
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
137 typedef Uint8 Uicc_ValIns;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
138 #endif /* UICC_VAL_INS_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
139
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
140 /*
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
141 * Enum to value table VAL_voltage_select
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
142 * CCDGEN:WriteEnum_Count==40
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
143 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
144 #ifndef UICC_VAL_VOLTAGE_SELECT_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
145 #define UICC_VAL_VOLTAGE_SELECT_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
146 enum
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
147 {
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
148 UICC_REQ_VOLTAGE_SEL = 0x0, /* The SIM reader driver shall perform voltage selection */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
149 UICC_OMIT_VOLTAGE_SEL = 0x1 /* The SIM reader driver shall restart with the current voltage */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
150 };
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
151 typedef Uint8 Uicc_ValVoltageSelect;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
152 #endif /* UICC_VAL_VOLTAGE_SELECT_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
153
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
154 /*
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
155 * Enum to value table VAL_config_requested
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
156 * CCDGEN:WriteEnum_Count==42
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
157 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
158 #ifndef UICC_VAL_CONFIG_REQUESTED_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
159 #define UICC_VAL_CONFIG_REQUESTED_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
160 enum
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
161 {
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
162 UICC_OMIT_CONFIG_CHARACTERISTICS = 0x0, /* PS Shall not retrieve Configuration Characteristics */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
163 UICC_REQUEST_CONFIG_CHARACTERISTICS = 0x1 /* PS Shall retrieve Configuration Characteristics */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
164 };
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
165 typedef Uint8 Uicc_ValConfigRequested;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
166 #endif /* UICC_VAL_CONFIG_REQUESTED_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
167
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
168 /*
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
169 * Enum to value table VAL_reader_id
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
170 * CCDGEN:WriteEnum_Count==44
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
171 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
172 #ifndef UICC_VAL_READER_ID_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
173 #define UICC_VAL_READER_ID_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
174 enum
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
175 {
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
176 UICC_VAL_READER_ID__RANGE_MIN = 0x1, /* minimum */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
177 UICC_VAL_READER_ID__RANGE_MAX = 0x2 /* maximum */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
178 };
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
179 typedef Uint8 Uicc_ValReaderId;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
180 #endif /* UICC_VAL_READER_ID_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
181 #define UICC_SIZE_ATR_INFO (0x21)
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
182 #ifndef UICC_ATR_STRING_INFO_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
183 #define UICC_ATR_STRING_INFO_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
184 /*
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
185 * SIM Card Info
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
186 * CCDGEN:WriteStruct_Count==1284
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
187 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
188 typedef struct
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
189 {
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
190 Uint8 atrStringArrayCount; /*< 0: 1> counter */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
191 Uint8 atrStringArray[UICC_SIZE_ATR_INFO]; /*< 1: 33> SIM Card Answer to reset string */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
192 Uint8 __dummy0; /*< 34: 1> alignment */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
193 Uint8 __dummy1; /*< 35: 1> alignment */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
194 } Uicc_AtrStringInfo;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
195 #endif /* UICC_ATR_STRING_INFO_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
196
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
197
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
198 /*
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
199 * typedef between var and valtab enums
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
200 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
201 #ifndef UICC_LEN_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
202 #define UICC_LEN_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
203 typedef Uicc_ValLen Uicc_Len;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
204 #endif /* Uicc_Len_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
205 #define UICC_MAX_RESULT (0x100)
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
206 #ifndef UICC_RESULT_INFO_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
207 #define UICC_RESULT_INFO_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
208 /*
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
209 * Result Buffer
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
210 * CCDGEN:WriteStruct_Count==1286
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
211 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
212 typedef struct
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
213 {
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
214 Uicc_Len len; /*< 0: 2> Uicc_Len, Maximum length of expected data */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
215 Uint16 resultArrayCount; /*< 2: 2> counter */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
216 Uint8 *resultArray; /*< 4: 4> pointer codetransparent to Result byte */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
217 } Uicc_ResultInfo;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
218 #endif /* UICC_RESULT_INFO_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
219
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
220 #define UICC_MAX_DATA_SIZE (0xff)
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
221 #ifndef UICC_DATA_INFO_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
222 #define UICC_DATA_INFO_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
223 /*
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
224 * Data element info
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
225 * CCDGEN:WriteStruct_Count==1288
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
226 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
227 typedef struct
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
228 {
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
229 Uint8 __dummy0; /*< 0: 1> alignment */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
230 Uint8 __dummy1; /*< 1: 1> alignment */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
231 Uint8 __dummy2; /*< 2: 1> alignment */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
232 Uint8 dataArrayCount; /*< 3: 1> counter */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
233 Uint8 *dataArray; /*< 4: 4> pointer codetransparent to Data element */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
234 } Uicc_DataInfo;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
235 #endif /* UICC_DATA_INFO_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
236
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
237
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
238 /*
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
239 * typedef between var and valtab enums
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
240 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
241 #ifndef UICC_CLA_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
242 #define UICC_CLA_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
243 typedef Uicc_ValCla Uicc_Cla;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
244 #endif /* Uicc_Cla_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
245 #ifndef UICC_INS_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
246 #define UICC_INS_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
247 typedef Uicc_ValIns Uicc_Ins;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
248 #endif /* Uicc_Ins_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
249 #ifndef UICC_CMD_HEADER_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
250 #define UICC_CMD_HEADER_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
251 /*
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
252 * Transparent command header
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
253 * CCDGEN:WriteStruct_Count==1290
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
254 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
255 typedef struct
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
256 {
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
257 Uicc_Cla cla; /*< 0: 1> Uicc_Cla, Class Byte */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
258 Uicc_Ins ins; /*< 1: 1> Uicc_Ins, instruction code */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
259 Uint8 p1; /*< 2: 1> Parameter 1 of the SIM APDU */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
260 Uint8 p2; /*< 3: 1> Parameter 2 of the SIM APDU */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
261 } Uicc_CmdHeader;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
262 #endif /* UICC_CMD_HEADER_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
263
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
264 #ifndef UICC_CONFIG_CHARACTERISTICS_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
265 #define UICC_CONFIG_CHARACTERISTICS_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
266 /*
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
267 * Configuration Characteristics
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
268 * CCDGEN:WriteStruct_Count==1292
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
269 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
270 typedef struct
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
271 {
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
272 Uint8 uiccCharacteristics; /*< 0: 1> UICC Characteristics */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
273 Uint8 __dummy0; /*< 1: 1> alignment */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
274 Uint8 __dummy1; /*< 2: 1> alignment */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
275 Uint8 __dummy2; /*< 3: 1> alignment */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
276 } Uicc_ConfigCharacteristics;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
277 #endif /* UICC_CONFIG_CHARACTERISTICS_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
278
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
279
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
280 /*
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
281 * typedef between var and valtab enums
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
282 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
283 #ifndef UICC_RESET_RETURN_VAL_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
284 #define UICC_RESET_RETURN_VAL_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
285 typedef Uicc_ValResetReturnVal Uicc_ResetReturnVal;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
286 #endif /* Uicc_ResetReturnVal_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
287 #ifndef UICC_LEN_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
288 #define UICC_LEN_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
289 typedef Uicc_ValLen Uicc_Len;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
290 #endif /* Uicc_Len_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
291 #ifndef UICC_SW_1_2_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
292 #define UICC_SW_1_2_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
293 typedef Uicc_ValSw1_2 Uicc_Sw1_2;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
294 #endif /* Uicc_Sw1_2_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
295 #ifndef UICC_CLA_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
296 #define UICC_CLA_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
297 typedef Uicc_ValCla Uicc_Cla;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
298 #endif /* Uicc_Cla_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
299 #ifndef UICC_INS_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
300 #define UICC_INS_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
301 typedef Uicc_ValIns Uicc_Ins;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
302 #endif /* Uicc_Ins_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
303 #ifndef UICC_VOLTAGE_SELECT_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
304 #define UICC_VOLTAGE_SELECT_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
305 typedef Uicc_ValVoltageSelect Uicc_VoltageSelect;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
306 #endif /* Uicc_VoltageSelect_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
307 #ifndef UICC_CONFIG_REQUESTED_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
308 #define UICC_CONFIG_REQUESTED_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
309 typedef Uicc_ValConfigRequested Uicc_ConfigRequested;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
310 #endif /* Uicc_ConfigRequested_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
311 #ifndef UICC_READER_ID_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
312 #define UICC_READER_ID_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
313 typedef Uicc_ValReaderId Uicc_ReaderId;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
314 #endif /* Uicc_ReaderId_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
315 #ifndef UICC_DUMMY_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
316 #define UICC_DUMMY_CLASS
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
317 /*
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
318 *
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
319 * CCDGEN:WriteStruct_Count==1294
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
320 */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
321 typedef struct
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
322 {
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
323 Puf_PrimHdr primHdr;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
324 Uicc_AtrStringInfo *atrStringInfoPtr; /*< 0: 4> pointer to SIM Card Info */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
325 Uicc_ResetReturnVal resetReturnVal; /*< 4: 1> Uicc_ResetReturnVal, Reset return value */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
326 Uint8 __dummy0; /*< 5: 1> alignment */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
327 Uint8 __dummy1; /*< 6: 1> alignment */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
328 Uint8 __dummy2; /*< 7: 1> alignment */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
329 Uicc_ResultInfo *resultInfoPtr; /*< 8: 4> pointer to Result Buffer */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
330 Uicc_Len len; /*< 12: 2> Uicc_Len, Maximum length of expected data */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
331 Uint8 __dummy3; /*< 14: 1> alignment */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
332 Uint8 __dummy4; /*< 15: 1> alignment */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
333 Uicc_DataInfo *dataInfoPtr; /*< 16: 4> pointer to Data element info */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
334 Uicc_Sw1_2 sw1_2; /*< 20: 2> Uicc_Sw1_2, Status Words */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
335 Uicc_Cla cla; /*< 22: 1> Uicc_Cla, Class Byte */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
336 Uicc_Ins ins; /*< 23: 1> Uicc_Ins, instruction code */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
337 Uicc_CmdHeader cmdHeader; /*< 24: 4> Transparent command header */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
338 Uicc_VoltageSelect voltageSelect; /*< 28: 1> Uicc_VoltageSelect, Perform Voltage Selection */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
339 Uint8 p1; /*< 29: 1> Parameter 1 of the SIM APDU */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
340 Uint8 p2; /*< 30: 1> Parameter 2 of the SIM APDU */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
341 Uicc_ConfigRequested configRequested; /*< 31: 1> Uicc_ConfigRequested, Configuration Characteristics requested */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
342 Uicc_ConfigCharacteristics *configCharacteristicsPtr; /*< 32: 4> pointer to Configuration Characteristics */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
343 Uicc_ReaderId readerId; /*< 36: 1> Uicc_ReaderId, Reader Id */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
344 Uint8 uiccCharacteristics; /*< 37: 1> UICC Characteristics */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
345 Uint8 __dummy5; /*< 38: 1> alignment */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
346 Uint8 __dummy6; /*< 39: 1> alignment */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
347 } Uicc_Dummy;
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
348
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
349 #define UICC_DUMMY_SIZE() \
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
350 ( \
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
351 sizeof(Uicc_Dummy) \
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
352 )
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
353 #endif /* UICC_DUMMY_CLASS */
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
354
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
355 #define UICC_MIN_RESULT (0x1)
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
356 #define UICC_MIN_DATA_SIZE (0x1)
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
357 #define UICC_MAX_READERS (0x2)
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
358
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
359 #include "pub_L1_misc_leave.h"
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
360
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
361
35f7a1dc9f7d cdg-hybrid: import from Magnetite
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
362 #endif