add command_id to verbose output
[project/umbim.git] / mbim-enum.c
1 /*
2  * umbim
3  * Copyright (C) 2014 John Crispin <blogic@openwrt.org>
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License version 2
7  * as published by the Free Software Foundation
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12  * GNU General Public License for more details.
13  */
14
15 #include <stdio.h>
16
17 #include "mbim.h"
18
19 struct mbim_enum mbim_service_values[] = {
20     { MBIM_SERVICE_INVALID, "MBIM_SERVICE_INVALID", "invalid" },
21     { MBIM_SERVICE_BASIC_CONNECT, "MBIM_SERVICE_BASIC_CONNECT", "basic-connect" },
22     { MBIM_SERVICE_SMS, "MBIM_SERVICE_SMS", "sms" },
23     { MBIM_SERVICE_USSD, "MBIM_SERVICE_USSD", "ussd" },
24     { MBIM_SERVICE_PHONEBOOK, "MBIM_SERVICE_PHONEBOOK", "phonebook" },
25     { MBIM_SERVICE_STK, "MBIM_SERVICE_STK", "stk" },
26     { MBIM_SERVICE_AUTH, "MBIM_SERVICE_AUTH", "auth" },
27     { MBIM_SERVICE_DSS, "MBIM_SERVICE_DSS", "dss" },
28     { MBIM_SERVICE_MS_FIRMWARE_ID, "MBIM_SERVICE_MS_FIRMWARE_ID", "ms-firmware-id" },
29     { MBIM_SERVICE_MS_HOST_SHUTDOWN, "MBIM_SERVICE_MS_HOST_SHUTDOWN", "ms-host-shutdown" },
30     { MBIM_SERVICE_PROXY_CONTROL, "MBIM_SERVICE_PROXY_CONTROL", "proxy-control" },
31     { 0, NULL, NULL },
32 };
33
34 struct mbim_enum mbim_context_type_values[] = {
35     { MBIM_CONTEXT_TYPE_INVALID, "MBIM_CONTEXT_TYPE_INVALID", "invalid" },
36     { MBIM_CONTEXT_TYPE_NONE, "MBIM_CONTEXT_TYPE_NONE", "none" },
37     { MBIM_CONTEXT_TYPE_INTERNET, "MBIM_CONTEXT_TYPE_INTERNET", "internet" },
38     { MBIM_CONTEXT_TYPE_VPN, "MBIM_CONTEXT_TYPE_VPN", "vpn" },
39     { MBIM_CONTEXT_TYPE_VOICE, "MBIM_CONTEXT_TYPE_VOICE", "voice" },
40     { MBIM_CONTEXT_TYPE_VIDEO_SHARE, "MBIM_CONTEXT_TYPE_VIDEO_SHARE", "video-share" },
41     { MBIM_CONTEXT_TYPE_PURCHASE, "MBIM_CONTEXT_TYPE_PURCHASE", "purchase" },
42     { MBIM_CONTEXT_TYPE_IMS, "MBIM_CONTEXT_TYPE_IMS", "ims" },
43     { MBIM_CONTEXT_TYPE_MMS, "MBIM_CONTEXT_TYPE_MMS", "mms" },
44     { MBIM_CONTEXT_TYPE_LOCAL, "MBIM_CONTEXT_TYPE_LOCAL", "local" },
45     { 0, NULL, NULL },
46 };
47
48 struct mbim_enum mbim_cid_basic_connect_values[] = {
49     { MBIM_CID_BASIC_CONNECT_UNKNOWN, "MBIM_CID_BASIC_CONNECT_UNKNOWN", "unknown" },
50     { MBIM_CID_BASIC_CONNECT_DEVICE_CAPS, "MBIM_CID_BASIC_CONNECT_DEVICE_CAPS", "device-caps" },
51     { MBIM_CID_BASIC_CONNECT_SUBSCRIBER_READY_STATUS, "MBIM_CID_BASIC_CONNECT_SUBSCRIBER_READY_STATUS", "subscriber-ready-status" },
52     { MBIM_CID_BASIC_CONNECT_RADIO_STATE, "MBIM_CID_BASIC_CONNECT_RADIO_STATE", "radio-state" },
53     { MBIM_CID_BASIC_CONNECT_PIN, "MBIM_CID_BASIC_CONNECT_PIN", "pin" },
54     { MBIM_CID_BASIC_CONNECT_PIN_LIST, "MBIM_CID_BASIC_CONNECT_PIN_LIST", "pin-list" },
55     { MBIM_CID_BASIC_CONNECT_HOME_PROVIDER, "MBIM_CID_BASIC_CONNECT_HOME_PROVIDER", "home-provider" },
56     { MBIM_CID_BASIC_CONNECT_PREFERRED_PROVIDERS, "MBIM_CID_BASIC_CONNECT_PREFERRED_PROVIDERS", "preferred-providers" },
57     { MBIM_CID_BASIC_CONNECT_VISIBLE_PROVIDERS, "MBIM_CID_BASIC_CONNECT_VISIBLE_PROVIDERS", "visible-providers" },
58     { MBIM_CID_BASIC_CONNECT_REGISTER_STATE, "MBIM_CID_BASIC_CONNECT_REGISTER_STATE", "register-state" },
59     { MBIM_CID_BASIC_CONNECT_PACKET_SERVICE, "MBIM_CID_BASIC_CONNECT_PACKET_SERVICE", "packet-service" },
60     { MBIM_CID_BASIC_CONNECT_SIGNAL_STATE, "MBIM_CID_BASIC_CONNECT_SIGNAL_STATE", "signal-state" },
61     { MBIM_CID_BASIC_CONNECT_CONNECT, "MBIM_CID_BASIC_CONNECT_CONNECT", "connect" },
62     { MBIM_CID_BASIC_CONNECT_PROVISIONED_CONTEXTS, "MBIM_CID_BASIC_CONNECT_PROVISIONED_CONTEXTS", "provisioned-contexts" },
63     { MBIM_CID_BASIC_CONNECT_SERVICE_ACTIVATION, "MBIM_CID_BASIC_CONNECT_SERVICE_ACTIVATION", "service-activation" },
64     { MBIM_CID_BASIC_CONNECT_IP_CONFIGURATION, "MBIM_CID_BASIC_CONNECT_IP_CONFIGURATION", "ip-configuration" },
65     { MBIM_CID_BASIC_CONNECT_DEVICE_SERVICES, "MBIM_CID_BASIC_CONNECT_DEVICE_SERVICES", "device-services" },
66     { MBIM_CID_BASIC_CONNECT_DEVICE_SERVICE_SUBSCRIBE_LIST, "MBIM_CID_BASIC_CONNECT_DEVICE_SERVICE_SUBSCRIBE_LIST", "device-service-subscribe-list" },
67     { MBIM_CID_BASIC_CONNECT_PACKET_STATISTICS, "MBIM_CID_BASIC_CONNECT_PACKET_STATISTICS", "packet-statistics" },
68     { MBIM_CID_BASIC_CONNECT_NETWORK_IDLE_HINT, "MBIM_CID_BASIC_CONNECT_NETWORK_IDLE_HINT", "network-idle-hint" },
69     { MBIM_CID_BASIC_CONNECT_EMERGENCY_MODE, "MBIM_CID_BASIC_CONNECT_EMERGENCY_MODE", "emergency-mode" },
70     { MBIM_CID_BASIC_CONNECT_IP_PACKET_FILTERS, "MBIM_CID_BASIC_CONNECT_IP_PACKET_FILTERS", "ip-packet-filters" },
71     { MBIM_CID_BASIC_CONNECT_MULTICARRIER_PROVIDERS, "MBIM_CID_BASIC_CONNECT_MULTICARRIER_PROVIDERS", "multicarrier-providers" },
72     { 0, NULL, NULL },
73 };
74
75 struct mbim_enum mbim_cid_sms_values[] = {
76     { MBIM_CID_SMS_UNKNOWN, "MBIM_CID_SMS_UNKNOWN", "unknown" },
77     { MBIM_CID_SMS_CONFIGURATION, "MBIM_CID_SMS_CONFIGURATION", "configuration" },
78     { MBIM_CID_SMS_READ, "MBIM_CID_SMS_READ", "read" },
79     { MBIM_CID_SMS_SEND, "MBIM_CID_SMS_SEND", "send" },
80     { MBIM_CID_SMS_DELETE, "MBIM_CID_SMS_DELETE", "delete" },
81     { MBIM_CID_SMS_MESSAGE_STORE_STATUS, "MBIM_CID_SMS_MESSAGE_STORE_STATUS", "message-store-status" },
82     { 0, NULL, NULL },
83 };
84
85 struct mbim_enum mbim_cid_ussd_values[] = {
86     { MBIM_CID_USSD_UNKNOWN, "MBIM_CID_USSD_UNKNOWN", "ussd-unknown" },
87     { MBIM_CID_USSD, "MBIM_CID_USSD", "ussd" },
88     { 0, NULL, NULL },
89 };
90
91 struct mbim_enum mbim_cid_phonebook_values[] = {
92     { MBIM_CID_PHONEBOOK_UNKNOWN, "MBIM_CID_PHONEBOOK_UNKNOWN", "unknown" },
93     { MBIM_CID_PHONEBOOK_CONFIGURATION, "MBIM_CID_PHONEBOOK_CONFIGURATION", "configuration" },
94     { MBIM_CID_PHONEBOOK_READ, "MBIM_CID_PHONEBOOK_READ", "read" },
95     { MBIM_CID_PHONEBOOK_DELETE, "MBIM_CID_PHONEBOOK_DELETE", "delete" },
96     { MBIM_CID_PHONEBOOK_WRITE, "MBIM_CID_PHONEBOOK_WRITE", "write" },
97     { 0, NULL, NULL },
98 };
99
100 struct mbim_enum mbim_cid_stk_values[] = {
101     { MBIM_CID_STK_UNKNOWN, "MBIM_CID_STK_UNKNOWN", "unknown" },
102     { MBIM_CID_STK_PAC, "MBIM_CID_STK_PAC", "pac" },
103     { MBIM_CID_STK_TERMINAL_RESPONSE, "MBIM_CID_STK_TERMINAL_RESPONSE", "terminal-response" },
104     { MBIM_CID_STK_ENVELOPE, "MBIM_CID_STK_ENVELOPE", "envelope" },
105     { 0, NULL, NULL },
106 };
107
108 struct mbim_enum mbim_cid_auth_values[] = {
109     { MBIM_CID_AUTH_UNKNOWN, "MBIM_CID_AUTH_UNKNOWN", "unknown" },
110     { MBIM_CID_AUTH_AKA, "MBIM_CID_AUTH_AKA", "aka" },
111     { MBIM_CID_AUTH_AKAP, "MBIM_CID_AUTH_AKAP", "akap" },
112     { MBIM_CID_AUTH_SIM, "MBIM_CID_AUTH_SIM", "sim" },
113     { 0, NULL, NULL },
114 };
115
116 struct mbim_enum mbim_cid_dss_values[] = {
117     { MBIM_CID_DSS_UNKNOWN, "MBIM_CID_DSS_UNKNOWN", "unknown" },
118     { MBIM_CID_DSS_CONNECT, "MBIM_CID_DSS_CONNECT", "connect" },
119     { 0, NULL, NULL },
120 };
121
122 struct mbim_enum mbim_cid_ms_firmware_id_values[] = {
123     { MBIM_CID_MS_FIRMWARE_ID_UNKNOWN, "MBIM_CID_MS_FIRMWARE_ID_UNKNOWN", "unknown" },
124     { MBIM_CID_MS_FIRMWARE_ID_GET, "MBIM_CID_MS_FIRMWARE_ID_GET", "get" },
125     { 0, NULL, NULL },
126 };
127
128 struct mbim_enum mbim_cid_ms_host_shutdown_values[] = {
129     { MBIM_CID_MS_HOST_SHUTDOWN_UNKNOWN, "MBIM_CID_MS_HOST_SHUTDOWN_UNKNOWN", "unknown" },
130     { MBIM_CID_MS_HOST_SHUTDOWN_NOTIFY, "MBIM_CID_MS_HOST_SHUTDOWN_NOTIFY", "notify" },
131     { 0, NULL, NULL },
132 };
133
134 struct mbim_enum mbim_cid_proxy_control_values[] = {
135     { MBIM_CID_PROXY_CONTROL_UNKNOWN, "MBIM_CID_PROXY_CONTROL_UNKNOWN", "unknown" },
136     { MBIM_CID_PROXY_CONTROL_CONFIGURATION, "MBIM_CID_PROXY_CONTROL_CONFIGURATION", "configuration" },
137     { 0, NULL, NULL },
138 };
139
140 struct mbim_enum mbim_message_type_values[] = {
141     { MBIM_MESSAGE_TYPE_INVALID, "MBIM_MESSAGE_TYPE_INVALID", "invalid" },
142     { MBIM_MESSAGE_TYPE_OPEN, "MBIM_MESSAGE_TYPE_OPEN", "open" },
143     { MBIM_MESSAGE_TYPE_CLOSE, "MBIM_MESSAGE_TYPE_CLOSE", "close" },
144     { MBIM_MESSAGE_TYPE_COMMAND, "MBIM_MESSAGE_TYPE_COMMAND", "command" },
145     { MBIM_MESSAGE_TYPE_HOST_ERROR, "MBIM_MESSAGE_TYPE_HOST_ERROR", "host-error" },
146     { MBIM_MESSAGE_TYPE_OPEN_DONE, "MBIM_MESSAGE_TYPE_OPEN_DONE", "open-done" },
147     { MBIM_MESSAGE_TYPE_CLOSE_DONE, "MBIM_MESSAGE_TYPE_CLOSE_DONE", "close-done" },
148     { MBIM_MESSAGE_TYPE_COMMAND_DONE, "MBIM_MESSAGE_TYPE_COMMAND_DONE", "command-done" },
149     { MBIM_MESSAGE_TYPE_FUNCTION_ERROR, "MBIM_MESSAGE_TYPE_FUNCTION_ERROR", "function-error" },
150     { MBIM_MESSAGE_TYPE_INDICATE_STATUS, "MBIM_MESSAGE_TYPE_INDICATE_STATUS", "indicate-status" },
151     { 0, NULL, NULL },
152 };
153
154 struct mbim_enum mbim_message_command_type_values[] = {
155     { MBIM_MESSAGE_COMMAND_TYPE_UNKNOWN, "MBIM_MESSAGE_COMMAND_TYPE_UNKNOWN", "unknown" },
156     { MBIM_MESSAGE_COMMAND_TYPE_QUERY, "MBIM_MESSAGE_COMMAND_TYPE_QUERY", "query" },
157     { MBIM_MESSAGE_COMMAND_TYPE_SET, "MBIM_MESSAGE_COMMAND_TYPE_SET", "set" },
158     { 0, NULL, NULL },
159 };
160
161 struct mbim_enum mbim_device_type_values[] = {
162     { MBIM_DEVICE_TYPE_UNKNOWN, "MBIM_DEVICE_TYPE_UNKNOWN", "unknown" },
163     { MBIM_DEVICE_TYPE_EMBEDDED, "MBIM_DEVICE_TYPE_EMBEDDED", "embedded" },
164     { MBIM_DEVICE_TYPE_REMOVABLE, "MBIM_DEVICE_TYPE_REMOVABLE", "removable" },
165     { MBIM_DEVICE_TYPE_REMOTE, "MBIM_DEVICE_TYPE_REMOTE", "remote" },
166     { 0, NULL, NULL },
167 };
168
169 struct mbim_enum mbim_cellular_class_values[] = {
170     { MBIM_CELLULAR_CLASS_GSM, "MBIM_CELLULAR_CLASS_GSM", "gsm" },
171     { MBIM_CELLULAR_CLASS_CDMA, "MBIM_CELLULAR_CLASS_CDMA", "cdma" },
172     { 0, NULL, NULL },
173 };
174
175 struct mbim_enum mbim_voice_class_values[] = {
176     { MBIM_VOICE_CLASS_UNKNOWN, "MBIM_VOICE_CLASS_UNKNOWN", "unknown" },
177     { MBIM_VOICE_CLASS_NO_VOICE, "MBIM_VOICE_CLASS_NO_VOICE", "no-voice" },
178     { MBIM_VOICE_CLASS_SEPARATED_VOICE_DATA, "MBIM_VOICE_CLASS_SEPARATED_VOICE_DATA", "separated-voice-data" },
179     { MBIM_VOICE_CLASS_SIMULTANEOUS_VOICE_DATA, "MBIM_VOICE_CLASS_SIMULTANEOUS_VOICE_DATA", "simultaneous-voice-data" },
180     { 0, NULL, NULL },
181 };
182
183 struct mbim_enum mbim_sim_class_values[] = {
184     { MBIM_SIM_CLASS_LOGICAL, "MBIM_SIM_CLASS_LOGICAL", "logical" },
185     { MBIM_SIM_CLASS_REMOVABLE, "MBIM_SIM_CLASS_REMOVABLE", "removable" },
186     { 0, NULL, NULL },
187 };
188
189 struct mbim_enum mbim_data_class_values[] = {
190     { MBIM_DATA_CLASS_GPRS, "MBIM_DATA_CLASS_GPRS", "gprs" },
191     { MBIM_DATA_CLASS_EDGE, "MBIM_DATA_CLASS_EDGE", "edge" },
192     { MBIM_DATA_CLASS_UMTS, "MBIM_DATA_CLASS_UMTS", "umts" },
193     { MBIM_DATA_CLASS_HSDPA, "MBIM_DATA_CLASS_HSDPA", "hsdpa" },
194     { MBIM_DATA_CLASS_HSUPA, "MBIM_DATA_CLASS_HSUPA", "hsupa" },
195     { MBIM_DATA_CLASS_LTE, "MBIM_DATA_CLASS_LTE", "lte" },
196     { MBIM_DATA_CLASS_1XRTT, "MBIM_DATA_CLASS_1XRTT", "1xrtt" },
197     { MBIM_DATA_CLASS_1XEVDO, "MBIM_DATA_CLASS_1XEVDO", "1xevdo" },
198     { MBIM_DATA_CLASS_1XEVDO_REVA, "MBIM_DATA_CLASS_1XEVDO_REVA", "1xevdo-reva" },
199     { MBIM_DATA_CLASS_1XEVDV, "MBIM_DATA_CLASS_1XEVDV", "1xevdv" },
200     { MBIM_DATA_CLASS_3XRTT, "MBIM_DATA_CLASS_3XRTT", "3xrtt" },
201     { MBIM_DATA_CLASS_1XEVDO_REVB, "MBIM_DATA_CLASS_1XEVDO_REVB", "1xevdo-revb" },
202     { MBIM_DATA_CLASS_UMB, "MBIM_DATA_CLASS_UMB", "umb" },
203     { MBIM_DATA_CLASS_CUSTOM, "MBIM_DATA_CLASS_CUSTOM", "custom" },
204     { 0, NULL, NULL },
205 };
206
207 struct mbim_enum mbim_sms_caps_values[] = {
208     { MBIM_SMS_CAPS_PDU_RECEIVE, "MBIM_SMS_CAPS_PDU_RECEIVE", "pdu-receive" },
209     { MBIM_SMS_CAPS_PDU_SEND, "MBIM_SMS_CAPS_PDU_SEND", "pdu-send" },
210     { MBIM_SMS_CAPS_TEXT_RECEIVE, "MBIM_SMS_CAPS_TEXT_RECEIVE", "text-receive" },
211     { MBIM_SMS_CAPS_TEXT_SEND, "MBIM_SMS_CAPS_TEXT_SEND", "text-send" },
212     { 0, NULL, NULL },
213 };
214
215 struct mbim_enum mbim_ctrl_caps_values[] = {
216     { MBIM_CTRL_CAPS_REG_MANUAL, "MBIM_CTRL_CAPS_REG_MANUAL", "reg-manual" },
217     { MBIM_CTRL_CAPS_HW_RADIO_SWITCH, "MBIM_CTRL_CAPS_HW_RADIO_SWITCH", "hw-radio-switch" },
218     { MBIM_CTRL_CAPS_CDMA_MOBILE_IP, "MBIM_CTRL_CAPS_CDMA_MOBILE_IP", "cdma-mobile-ip" },
219     { MBIM_CTRL_CAPS_CDMA_SIMPLE_IP, "MBIM_CTRL_CAPS_CDMA_SIMPLE_IP", "cdma-simple-ip" },
220     { MBIM_CTRL_CAPS_MULTI_CARRIER, "MBIM_CTRL_CAPS_MULTI_CARRIER", "multi-carrier" },
221     { 0, NULL, NULL },
222 };
223
224 struct mbim_enum mbim_subscriber_ready_state_values[] = {
225     { MBIM_SUBSCRIBER_READY_STATE_NOT_INITIALIZED, "MBIM_SUBSCRIBER_READY_STATE_NOT_INITIALIZED", "not-initialized" },
226     { MBIM_SUBSCRIBER_READY_STATE_INITIALIZED, "MBIM_SUBSCRIBER_READY_STATE_INITIALIZED", "initialized" },
227     { MBIM_SUBSCRIBER_READY_STATE_SIM_NOT_INSERTED, "MBIM_SUBSCRIBER_READY_STATE_SIM_NOT_INSERTED", "sim-not-inserted" },
228     { MBIM_SUBSCRIBER_READY_STATE_BAD_SIM, "MBIM_SUBSCRIBER_READY_STATE_BAD_SIM", "bad-sim" },
229     { MBIM_SUBSCRIBER_READY_STATE_FAILURE, "MBIM_SUBSCRIBER_READY_STATE_FAILURE", "failure" },
230     { MBIM_SUBSCRIBER_READY_STATE_NOT_ACTIVATED, "MBIM_SUBSCRIBER_READY_STATE_NOT_ACTIVATED", "not-activated" },
231     { MBIM_SUBSCRIBER_READY_STATE_DEVICE_LOCKED, "MBIM_SUBSCRIBER_READY_STATE_DEVICE_LOCKED", "device-locked" },
232     { 0, NULL, NULL },
233 };
234
235 struct mbim_enum mbim_ready_info_flag_values[] = {
236     { MBIM_READY_INFO_FLAG_PROTECT_UNIQUE_ID, "MBIM_READY_INFO_FLAG_PROTECT_UNIQUE_ID", "id" },
237     { 0, NULL, NULL },
238 };
239
240 struct mbim_enum mbim_radio_switch_state_values[] = {
241     { MBIM_RADIO_SWITCH_STATE_OFF, "MBIM_RADIO_SWITCH_STATE_OFF", "off" },
242     { MBIM_RADIO_SWITCH_STATE_ON, "MBIM_RADIO_SWITCH_STATE_ON", "on" },
243     { 0, NULL, NULL },
244 };
245
246 struct mbim_enum mbim_pin_type_values[] = {
247     { MBIM_PIN_TYPE_UNKNOWN, "MBIM_PIN_TYPE_UNKNOWN", "unknown" },
248     { MBIM_PIN_TYPE_CUSTOM, "MBIM_PIN_TYPE_CUSTOM", "custom" },
249     { MBIM_PIN_TYPE_PIN1, "MBIM_PIN_TYPE_PIN1", "pin1" },
250     { MBIM_PIN_TYPE_PIN2, "MBIM_PIN_TYPE_PIN2", "pin2" },
251     { MBIM_PIN_TYPE_DEVICE_SIM_PIN, "MBIM_PIN_TYPE_DEVICE_SIM_PIN", "device-sim-pin" },
252     { MBIM_PIN_TYPE_DEVICE_FIRST_SIM_PIN, "MBIM_PIN_TYPE_DEVICE_FIRST_SIM_PIN", "device-first-sim-pin" },
253     { MBIM_PIN_TYPE_NETWORK_PIN, "MBIM_PIN_TYPE_NETWORK_PIN", "network-pin" },
254     { MBIM_PIN_TYPE_NETWORK_SUBSET_PIN, "MBIM_PIN_TYPE_NETWORK_SUBSET_PIN", "network-subset-pin" },
255     { MBIM_PIN_TYPE_SERVICE_PROVIDER_PIN, "MBIM_PIN_TYPE_SERVICE_PROVIDER_PIN", "service-provider-pin" },
256     { MBIM_PIN_TYPE_CORPORATE_PIN, "MBIM_PIN_TYPE_CORPORATE_PIN", "corporate-pin" },
257     { MBIM_PIN_TYPE_SUBSIDY_PIN, "MBIM_PIN_TYPE_SUBSIDY_PIN", "subsidy-pin" },
258     { MBIM_PIN_TYPE_PUK1, "MBIM_PIN_TYPE_PUK1", "puk1" },
259     { MBIM_PIN_TYPE_PUK2, "MBIM_PIN_TYPE_PUK2", "puk2" },
260     { MBIM_PIN_TYPE_DEVICE_FIRST_SIM_PUK, "MBIM_PIN_TYPE_DEVICE_FIRST_SIM_PUK", "device-first-sim-puk" },
261     { MBIM_PIN_TYPE_NETWORK_PUK, "MBIM_PIN_TYPE_NETWORK_PUK", "network-puk" },
262     { MBIM_PIN_TYPE_NETWORK_SUBSET_PUK, "MBIM_PIN_TYPE_NETWORK_SUBSET_PUK", "network-subset-puk" },
263     { MBIM_PIN_TYPE_SERVICE_PROVIDER_PUK, "MBIM_PIN_TYPE_SERVICE_PROVIDER_PUK", "service-provider-puk" },
264     { MBIM_PIN_TYPE_CORPORATE_PUK, "MBIM_PIN_TYPE_CORPORATE_PUK", "corporate-puk" },
265     { 0, NULL, NULL },
266 };
267
268 struct mbim_enum mbim_pin_state_values[] = {
269     { MBIM_PIN_STATE_UNLOCKED, "MBIM_PIN_STATE_UNLOCKED", "unlocked" },
270     { MBIM_PIN_STATE_LOCKED, "MBIM_PIN_STATE_LOCKED", "locked" },
271     { 0, NULL, NULL },
272 };
273
274 struct mbim_enum mbim_pin_operation_values[] = {
275     { MBIM_PIN_OPERATION_ENTER, "MBIM_PIN_OPERATION_ENTER", "enter" },
276     { MBIM_PIN_OPERATION_ENABLE, "MBIM_PIN_OPERATION_ENABLE", "enable" },
277     { MBIM_PIN_OPERATION_DISABLE, "MBIM_PIN_OPERATION_DISABLE", "disable" },
278     { MBIM_PIN_OPERATION_CHANGE, "MBIM_PIN_OPERATION_CHANGE", "change" },
279     { 0, NULL, NULL },
280 };
281
282 struct mbim_enum mbim_pin_mode_values[] = {
283     { MBIM_PIN_MODE_NOT_SUPPORTED, "MBIM_PIN_MODE_NOT_SUPPORTED", "not-supported" },
284     { MBIM_PIN_MODE_ENABLED, "MBIM_PIN_MODE_ENABLED", "enabled" },
285     { MBIM_PIN_MODE_DISABLED, "MBIM_PIN_MODE_DISABLED", "disabled" },
286     { 0, NULL, NULL },
287 };
288
289 struct mbim_enum mbim_pin_format_values[] = {
290     { MBIM_PIN_FORMAT_UNKNOWN, "MBIM_PIN_FORMAT_UNKNOWN", "unknown" },
291     { MBIM_PIN_FORMAT_NUMERIC, "MBIM_PIN_FORMAT_NUMERIC", "numeric" },
292     { MBIM_PIN_FORMAT_ALPHANUMERIC, "MBIM_PIN_FORMAT_ALPHANUMERIC", "alphanumeric" },
293     { 0, NULL, NULL },
294 };
295
296 struct mbim_enum mbim_provider_state_values[] = {
297     { MBIM_PROVIDER_STATE_UNKNOWN, "MBIM_PROVIDER_STATE_UNKNOWN", "unknown" },
298     { MBIM_PROVIDER_STATE_HOME, "MBIM_PROVIDER_STATE_HOME", "home" },
299     { MBIM_PROVIDER_STATE_FORBIDDEN, "MBIM_PROVIDER_STATE_FORBIDDEN", "forbidden" },
300     { MBIM_PROVIDER_STATE_PREFERRED, "MBIM_PROVIDER_STATE_PREFERRED", "preferred" },
301     { MBIM_PROVIDER_STATE_VISIBLE, "MBIM_PROVIDER_STATE_VISIBLE", "visible" },
302     { MBIM_PROVIDER_STATE_REGISTERED, "MBIM_PROVIDER_STATE_REGISTERED", "registered" },
303     { MBIM_PROVIDER_STATE_PREFERRED_MULTICARRIER, "MBIM_PROVIDER_STATE_PREFERRED_MULTICARRIER", "preferred-multicarrier" },
304     { 0, NULL, NULL },
305 };
306
307 struct mbim_enum mbim_visible_providers_action_values[] = {
308     { MBIM_VISIBLE_PROVIDERS_ACTION_FULL_SCAN, "MBIM_VISIBLE_PROVIDERS_ACTION_FULL_SCAN", "full-scan" },
309     { MBIM_VISIBLE_PROVIDERS_ACTION_RESTRICTED_SCAN, "MBIM_VISIBLE_PROVIDERS_ACTION_RESTRICTED_SCAN", "restricted-scan" },
310     { 0, NULL, NULL },
311 };
312
313 struct mbim_enum mbim_nw_error_values[] = {
314     { MBIM_NW_ERROR_UNKNOWN, "MBIM_NW_ERROR_UNKNOWN", "unknown" },
315     { MBIM_NW_ERROR_IMSI_UNKNOWN_IN_HLR, "MBIM_NW_ERROR_IMSI_UNKNOWN_IN_HLR", "imsi-unknown-in-hlr" },
316     { MBIM_NW_ERROR_ILLEGAL_MS, "MBIM_NW_ERROR_ILLEGAL_MS", "illegal-ms" },
317     { MBIM_NW_ERROR_IMSI_UNKNOWN_IN_VLR, "MBIM_NW_ERROR_IMSI_UNKNOWN_IN_VLR", "imsi-unknown-in-vlr" },
318     { MBIM_NW_ERROR_IMEI_NOT_ACCEPTED, "MBIM_NW_ERROR_IMEI_NOT_ACCEPTED", "imei-not-accepted" },
319     { MBIM_NW_ERROR_ILLEGAL_ME, "MBIM_NW_ERROR_ILLEGAL_ME", "illegal-me" },
320     { MBIM_NW_ERROR_GPRS_NOT_ALLOWED, "MBIM_NW_ERROR_GPRS_NOT_ALLOWED", "gprs-not-allowed" },
321     { MBIM_NW_ERROR_GPRS_AND_NON_GPRS_NOT_ALLOWED, "MBIM_NW_ERROR_GPRS_AND_NON_GPRS_NOT_ALLOWED", "gprs-and-non-gprs-not-allowed" },
322     { MBIM_NW_ERROR_MS_IDENTITY_NOT_DERIVED_BY_NETWORK, "MBIM_NW_ERROR_MS_IDENTITY_NOT_DERIVED_BY_NETWORK", "ms-identity-not-derived-by-network" },
323     { MBIM_NW_ERROR_IMPLICITLY_DETACHED, "MBIM_NW_ERROR_IMPLICITLY_DETACHED", "implicitly-detached" },
324     { MBIM_NW_ERROR_PLMN_NOT_ALLOWED, "MBIM_NW_ERROR_PLMN_NOT_ALLOWED", "plmn-not-allowed" },
325     { MBIM_NW_ERROR_LOCATION_AREA_NOT_ALLOWED, "MBIM_NW_ERROR_LOCATION_AREA_NOT_ALLOWED", "location-area-not-allowed" },
326     { MBIM_NW_ERROR_ROAMING_NOT_ALLOWED_IN_LOCATION_AREA, "MBIM_NW_ERROR_ROAMING_NOT_ALLOWED_IN_LOCATION_AREA", "roaming-not-allowed-in-location-area" },
327     { MBIM_NW_ERROR_GPRS_NOT_ALLOWED_IN_PLMN, "MBIM_NW_ERROR_GPRS_NOT_ALLOWED_IN_PLMN", "gprs-not-allowed-in-plmn" },
328     { MBIM_NW_ERROR_NO_CELLS_IN_LOCATION_AREA, "MBIM_NW_ERROR_NO_CELLS_IN_LOCATION_AREA", "no-cells-in-location-area" },
329     { MBIM_NW_ERROR_MSC_TEMPORARILY_NOT_REACHABLE, "MBIM_NW_ERROR_MSC_TEMPORARILY_NOT_REACHABLE", "msc-temporarily-not-reachable" },
330     { MBIM_NW_ERROR_NETWORK_FAILURE, "MBIM_NW_ERROR_NETWORK_FAILURE", "network-failure" },
331     { MBIM_NW_ERROR_MAC_FAILURE, "MBIM_NW_ERROR_MAC_FAILURE", "mac-failure" },
332     { MBIM_NW_ERROR_SYNCH_FAILURE, "MBIM_NW_ERROR_SYNCH_FAILURE", "synch-failure" },
333     { MBIM_NW_ERROR_CONGESTION, "MBIM_NW_ERROR_CONGESTION", "congestion" },
334     { MBIM_NW_ERROR_GSM_AUTHENTICATION_UNACCEPTABLE, "MBIM_NW_ERROR_GSM_AUTHENTICATION_UNACCEPTABLE", "gsm-authentication-unacceptable" },
335     { MBIM_NW_ERROR_NOT_AUTHORIZED_FOR_CSG, "MBIM_NW_ERROR_NOT_AUTHORIZED_FOR_CSG", "not-authorized-for-csg" },
336     { MBIM_NW_ERROR_MISSING_OR_UNKNOWN_APN, "MBIM_NW_ERROR_MISSING_OR_UNKNOWN_APN", "missing-or-unknown-apn" },
337     { MBIM_NW_ERROR_SERVICE_OPTION_NOT_SUPPORTED, "MBIM_NW_ERROR_SERVICE_OPTION_NOT_SUPPORTED", "service-option-not-supported" },
338     { MBIM_NW_ERROR_REQUESTED_SERVICE_OPTION_NOT_SUBSCRIBED, "MBIM_NW_ERROR_REQUESTED_SERVICE_OPTION_NOT_SUBSCRIBED", "requested-service-option-not-subscribed" },
339     { MBIM_NW_ERROR_SERVICE_OPTION_TEMPORARILY_OUT_OF_ORDER, "MBIM_NW_ERROR_SERVICE_OPTION_TEMPORARILY_OUT_OF_ORDER", "service-option-temporarily-out-of-order" },
340     { MBIM_NW_ERROR_NO_PDP_CONTEXT_ACTIVATED, "MBIM_NW_ERROR_NO_PDP_CONTEXT_ACTIVATED", "no-pdp-context-activated" },
341     { MBIM_NW_ERROR_SEMANTICALLY_INCORRECT_MESSAGE, "MBIM_NW_ERROR_SEMANTICALLY_INCORRECT_MESSAGE", "semantically-incorrect-message" },
342     { MBIM_NW_ERROR_INVALID_MANDATORY_INFORMATION, "MBIM_NW_ERROR_INVALID_MANDATORY_INFORMATION", "invalid-mandatory-information" },
343     { MBIM_NW_ERROR_MESSAGE_TYPE_NON_EXISTENT_OR_NOT_IMPLEMENTED, "MBIM_NW_ERROR_MESSAGE_TYPE_NON_EXISTENT_OR_NOT_IMPLEMENTED", "message-type-non-existent-or-not-implemented" },
344     { MBIM_NW_ERROR_MESSAGE_TYPE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE, "MBIM_NW_ERROR_MESSAGE_TYPE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE", "message-type-not-compatible-with-protocol-state" },
345     { MBIM_NW_ERROR_INFORMATION_ELEMENT_NON_EXISTENT_OR_NOT_IMPLEMENTED, "MBIM_NW_ERROR_INFORMATION_ELEMENT_NON_EXISTENT_OR_NOT_IMPLEMENTED", "information-element-non-existent-or-not-implemented" },
346     { MBIM_NW_ERROR_CONDITIONAL_IE_ERROR, "MBIM_NW_ERROR_CONDITIONAL_IE_ERROR", "conditional-ie-error" },
347     { MBIM_NW_ERROR_MESSAGE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE, "MBIM_NW_ERROR_MESSAGE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE", "message-not-compatible-with-protocol-state" },
348     { MBIM_NW_ERROR_PROTOCOL_ERROR_UNSPECIFIED, "MBIM_NW_ERROR_PROTOCOL_ERROR_UNSPECIFIED", "protocol-error-unspecified" },
349     { 0, NULL, NULL },
350 };
351
352 struct mbim_enum mbim_register_action_values[] = {
353     { MBIM_REGISTER_ACTION_AUTOMATIC, "MBIM_REGISTER_ACTION_AUTOMATIC", "automatic" },
354     { MBIM_REGISTER_ACTION_MANUAL, "MBIM_REGISTER_ACTION_MANUAL", "manual" },
355     { 0, NULL, NULL },
356 };
357
358 struct mbim_enum mbim_register_state_values[] = {
359     { MBIM_REGISTER_STATE_UNKNOWN, "MBIM_REGISTER_STATE_UNKNOWN", "unknown" },
360     { MBIM_REGISTER_STATE_DEREGISTERED, "MBIM_REGISTER_STATE_DEREGISTERED", "deregistered" },
361     { MBIM_REGISTER_STATE_SEARCHING, "MBIM_REGISTER_STATE_SEARCHING", "searching" },
362     { MBIM_REGISTER_STATE_HOME, "MBIM_REGISTER_STATE_HOME", "home" },
363     { MBIM_REGISTER_STATE_ROAMING, "MBIM_REGISTER_STATE_ROAMING", "roaming" },
364     { MBIM_REGISTER_STATE_PARTNER, "MBIM_REGISTER_STATE_PARTNER", "partner" },
365     { MBIM_REGISTER_STATE_DENIED, "MBIM_REGISTER_STATE_DENIED", "denied" },
366     { 0, NULL, NULL },
367 };
368
369 struct mbim_enum mbim_register_mode_values[] = {
370     { MBIM_REGISTER_MODE_UNKNOWN, "MBIM_REGISTER_MODE_UNKNOWN", "unknown" },
371     { MBIM_REGISTER_MODE_AUTOMATIC, "MBIM_REGISTER_MODE_AUTOMATIC", "automatic" },
372     { MBIM_REGISTER_MODE_MANUAL, "MBIM_REGISTER_MODE_MANUAL", "manual" },
373     { 0, NULL, NULL },
374 };
375
376 struct mbim_enum mbim_registration_flag_values[] = {
377     { MBIM_REGISTRATION_FLAG_NONE, "MBIM_REGISTRATION_FLAG_NONE", "none" },
378     { MBIM_REGISTRATION_FLAG_MANUAL_SELECTION_NOT_AVAILABLE, "MBIM_REGISTRATION_FLAG_MANUAL_SELECTION_NOT_AVAILABLE", "manual-selection-not-available" },
379     { MBIM_REGISTRATION_FLAG_PACKET_SERVICE_AUTOMATIC_ATTACH, "MBIM_REGISTRATION_FLAG_PACKET_SERVICE_AUTOMATIC_ATTACH", "packet-service-automatic-attach" },
380     { 0, NULL, NULL },
381 };
382
383 struct mbim_enum mbim_packet_service_action_values[] = {
384     { MBIM_PACKET_SERVICE_ACTION_ATTACH, "MBIM_PACKET_SERVICE_ACTION_ATTACH", "attach" },
385     { MBIM_PACKET_SERVICE_ACTION_DETACH, "MBIM_PACKET_SERVICE_ACTION_DETACH", "detach" },
386     { 0, NULL, NULL },
387 };
388
389 struct mbim_enum mbim_packet_service_state_values[] = {
390     { MBIM_PACKET_SERVICE_STATE_UNKNOWN, "MBIM_PACKET_SERVICE_STATE_UNKNOWN", "unknown" },
391     { MBIM_PACKET_SERVICE_STATE_ATTACHING, "MBIM_PACKET_SERVICE_STATE_ATTACHING", "attaching" },
392     { MBIM_PACKET_SERVICE_STATE_ATTACHED, "MBIM_PACKET_SERVICE_STATE_ATTACHED", "attached" },
393     { MBIM_PACKET_SERVICE_STATE_DETACHING, "MBIM_PACKET_SERVICE_STATE_DETACHING", "detaching" },
394     { MBIM_PACKET_SERVICE_STATE_DETACHED, "MBIM_PACKET_SERVICE_STATE_DETACHED", "detached" },
395     { 0, NULL, NULL },
396 };
397
398 struct mbim_enum mbim_activation_command_values[] = {
399     { MBIM_ACTIVATION_COMMAND_DEACTIVATE, "MBIM_ACTIVATION_COMMAND_DEACTIVATE", "deactivate" },
400     { MBIM_ACTIVATION_COMMAND_ACTIVATE, "MBIM_ACTIVATION_COMMAND_ACTIVATE", "activate" },
401     { 0, NULL, NULL },
402 };
403
404 struct mbim_enum mbim_compression_values[] = {
405     { MBIM_COMPRESSION_NONE, "MBIM_COMPRESSION_NONE", "none" },
406     { MBIM_COMPRESSION_ENABLE, "MBIM_COMPRESSION_ENABLE", "enable" },
407     { 0, NULL, NULL },
408 };
409
410 struct mbim_enum mbim_auth_protocol_values[] = {
411     { MBIM_AUTH_PROTOCOL_NONE, "MBIM_AUTH_PROTOCOL_NONE", "none" },
412     { MBIM_AUTH_PROTOCOL_PAP, "MBIM_AUTH_PROTOCOL_PAP", "pap" },
413     { MBIM_AUTH_PROTOCOL_CHAP, "MBIM_AUTH_PROTOCOL_CHAP", "chap" },
414     { MBIM_AUTH_PROTOCOL_MSCHAPV2, "MBIM_AUTH_PROTOCOL_MSCHAPV2", "mschapv2" },
415     { 0, NULL, NULL },
416 };
417
418 struct mbim_enum mbim_context_ip_type_values[] = {
419     { MBIM_CONTEXT_IP_TYPE_DEFAULT, "MBIM_CONTEXT_IP_TYPE_DEFAULT", "default" },
420     { MBIM_CONTEXT_IP_TYPE_IPV4, "MBIM_CONTEXT_IP_TYPE_IPV4", "ipv4" },
421     { MBIM_CONTEXT_IP_TYPE_IPV6, "MBIM_CONTEXT_IP_TYPE_IPV6", "ipv6" },
422     { MBIM_CONTEXT_IP_TYPE_IPV4V6, "MBIM_CONTEXT_IP_TYPE_IPV4V6", "ipv4v6" },
423     { MBIM_CONTEXT_IP_TYPE_IPV4_AND_IPV6, "MBIM_CONTEXT_IP_TYPE_IPV4_AND_IPV6", "ipv4-and-ipv6" },
424     { 0, NULL, NULL },
425 };
426
427 struct mbim_enum mbim_activation_state_values[] = {
428     { MBIM_ACTIVATION_STATE_UNKNOWN, "MBIM_ACTIVATION_STATE_UNKNOWN", "unknown" },
429     { MBIM_ACTIVATION_STATE_ACTIVATED, "MBIM_ACTIVATION_STATE_ACTIVATED", "activated" },
430     { MBIM_ACTIVATION_STATE_ACTIVATING, "MBIM_ACTIVATION_STATE_ACTIVATING", "activating" },
431     { MBIM_ACTIVATION_STATE_DEACTIVATED, "MBIM_ACTIVATION_STATE_DEACTIVATED", "deactivated" },
432     { MBIM_ACTIVATION_STATE_DEACTIVATING, "MBIM_ACTIVATION_STATE_DEACTIVATING", "deactivating" },
433     { 0, NULL, NULL },
434 };
435
436 struct mbim_enum mbim_voice_call_state_values[] = {
437     { MBIM_VOICE_CALL_STATE_NONE, "MBIM_VOICE_CALL_STATE_NONE", "none" },
438     { MBIM_VOICE_CALL_STATE_IN_PROGRESS, "MBIM_VOICE_CALL_STATE_IN_PROGRESS", "in-progress" },
439     { MBIM_VOICE_CALL_STATE_HANG_UP, "MBIM_VOICE_CALL_STATE_HANG_UP", "hang-up" },
440     { 0, NULL, NULL },
441 };
442
443 struct mbim_enum mbim_ip_configuration_available_flag_values[] = {
444     { MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_NONE, "MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_NONE", "none" },
445     { MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_ADDRESS, "MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_ADDRESS", "address" },
446     { MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_GATEWAY, "MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_GATEWAY", "gateway" },
447     { MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_DNS, "MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_DNS", "dns" },
448     { MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_MTU, "MBIM_IP_CONFIGURATION_AVAILABLE_FLAG_MTU", "mtu" },
449     { 0, NULL, NULL },
450 };
451
452 struct mbim_enum mbim_sms_storage_state_values[] = {
453     { MBIM_SMS_STORAGE_STATE_NOT_INITIALIZED, "MBIM_SMS_STORAGE_STATE_NOT_INITIALIZED", "not-initialized" },
454     { MBIM_SMS_STORAGE_STATE_INITIALIZED, "MBIM_SMS_STORAGE_STATE_INITIALIZED", "initialized" },
455     { 0, NULL, NULL },
456 };
457
458 struct mbim_enum mbim_sms_format_values[] = {
459     { MBIM_SMS_FORMAT_PDU, "MBIM_SMS_FORMAT_PDU", "pdu" },
460     { MBIM_SMS_FORMAT_CDMA, "MBIM_SMS_FORMAT_CDMA", "cdma" },
461     { 0, NULL, NULL },
462 };
463
464 struct mbim_enum mbim_sms_flag_values[] = {
465     { MBIM_SMS_FLAG_ALL, "MBIM_SMS_FLAG_ALL", "all" },
466     { MBIM_SMS_FLAG_INDEX, "MBIM_SMS_FLAG_INDEX", "index" },
467     { MBIM_SMS_FLAG_NEW, "MBIM_SMS_FLAG_NEW", "new" },
468     { MBIM_SMS_FLAG_OLD, "MBIM_SMS_FLAG_OLD", "old" },
469     { MBIM_SMS_FLAG_SENT, "MBIM_SMS_FLAG_SENT", "sent" },
470     { MBIM_SMS_FLAG_DRAFT, "MBIM_SMS_FLAG_DRAFT", "draft" },
471     { 0, NULL, NULL },
472 };
473
474 struct mbim_enum mbim_sms_cdma_lang_values[] = {
475     { MBIM_SMS_CDMA_LANG_UNKNOWN, "MBIM_SMS_CDMA_LANG_UNKNOWN", "unknown" },
476     { MBIM_SMS_CDMA_LANG_ENGLISH, "MBIM_SMS_CDMA_LANG_ENGLISH", "english" },
477     { MBIM_SMS_CDMA_LANG_FRENCH, "MBIM_SMS_CDMA_LANG_FRENCH", "french" },
478     { MBIM_SMS_CDMA_LANG_SPANISH, "MBIM_SMS_CDMA_LANG_SPANISH", "spanish" },
479     { MBIM_SMS_CDMA_LANG_JAPANESE, "MBIM_SMS_CDMA_LANG_JAPANESE", "japanese" },
480     { MBIM_SMS_CDMA_LANG_KOREAN, "MBIM_SMS_CDMA_LANG_KOREAN", "korean" },
481     { MBIM_SMS_CDMA_LANG_CHINESE, "MBIM_SMS_CDMA_LANG_CHINESE", "chinese" },
482     { MBIM_SMS_CDMA_LANG_HEBREW, "MBIM_SMS_CDMA_LANG_HEBREW", "hebrew" },
483     { 0, NULL, NULL },
484 };
485
486 struct mbim_enum mbim_sms_cdma_encoding_values[] = {
487     { MBIM_SMS_CDMA_ENCODING_OCTET, "MBIM_SMS_CDMA_ENCODING_OCTET", "octet" },
488     { MBIM_SMS_CDMA_ENCODING_EPM, "MBIM_SMS_CDMA_ENCODING_EPM", "epm" },
489     { MBIM_SMS_CDMA_ENCODING_7BIT_ASCII, "MBIM_SMS_CDMA_ENCODING_7BIT_ASCII", "7bit-ascii" },
490     { MBIM_SMS_CDMA_ENCODING_LA5, "MBIM_SMS_CDMA_ENCODING_LA5", "la5" },
491     { MBIM_SMS_CDMA_ENCODING_UNICODE, "MBIM_SMS_CDMA_ENCODING_UNICODE", "unicode" },
492     { MBIM_SMS_CDMA_ENCODING_SHIFT_JIS, "MBIM_SMS_CDMA_ENCODING_SHIFT_JIS", "shift-jis" },
493     { MBIM_SMS_CDMA_ENCODING_KOREAN, "MBIM_SMS_CDMA_ENCODING_KOREAN", "korean" },
494     { MBIM_SMS_CDMA_ENCODING_LATIN_HEBREW, "MBIM_SMS_CDMA_ENCODING_LATIN_HEBREW", "latin-hebrew" },
495     { MBIM_SMS_CDMA_ENCODING_LATIN, "MBIM_SMS_CDMA_ENCODING_LATIN", "latin" },
496     { MBIM_SMS_CDMA_ENCODING_GSM_7BIT, "MBIM_SMS_CDMA_ENCODING_GSM_7BIT", "gsm-7bit" },
497     { 0, NULL, NULL },
498 };
499
500 struct mbim_enum mbim_sms_status_values[] = {
501     { MBIM_SMS_STATUS_NEW, "MBIM_SMS_STATUS_NEW", "new" },
502     { MBIM_SMS_STATUS_OLD, "MBIM_SMS_STATUS_OLD", "old" },
503     { MBIM_SMS_STATUS_DRAFT, "MBIM_SMS_STATUS_DRAFT", "draft" },
504     { MBIM_SMS_STATUS_SENT, "MBIM_SMS_STATUS_SENT", "sent" },
505     { 0, NULL, NULL },
506 };
507
508 struct mbim_enum mbim_sms_status_flag_values[] = {
509     { MBIM_SMS_STATUS_FLAG_NONE, "MBIM_SMS_STATUS_FLAG_NONE", "none" },
510     { MBIM_SMS_STATUS_FLAG_MESSAGE_STORE_FULL, "MBIM_SMS_STATUS_FLAG_MESSAGE_STORE_FULL", "message-store-full" },
511     { MBIM_SMS_STATUS_FLAG_NEW_MESSAGE, "MBIM_SMS_STATUS_FLAG_NEW_MESSAGE", "new-message" },
512     { 0, NULL, NULL },
513 };
514
515 struct mbim_enum mbim_ussd_action_values[] = {
516     { MBIM_USSD_ACTION_INITIATE, "MBIM_USSD_ACTION_INITIATE", "initiate" },
517     { MBIM_USSD_ACTION_CONTINUE, "MBIM_USSD_ACTION_CONTINUE", "continue" },
518     { MBIM_USSD_ACTION_CANCEL, "MBIM_USSD_ACTION_CANCEL", "cancel" },
519     { 0, NULL, NULL },
520 };
521
522 struct mbim_enum mbim_ussd_response_values[] = {
523     { MBIM_USSD_RESPONSE_NO_ACTION_REQUIRED, "MBIM_USSD_RESPONSE_NO_ACTION_REQUIRED", "no-action-required" },
524     { MBIM_USSD_RESPONSE_ACTION_REQUIRED, "MBIM_USSD_RESPONSE_ACTION_REQUIRED", "action-required" },
525     { MBIM_USSD_RESPONSE_TERMINATED_BY_NETWORK, "MBIM_USSD_RESPONSE_TERMINATED_BY_NETWORK", "terminated-by-network" },
526     { MBIM_USSD_RESPONSE_OTHER_LOCAL_CLIENT, "MBIM_USSD_RESPONSE_OTHER_LOCAL_CLIENT", "other-local-client" },
527     { MBIM_USSD_RESPONSE_OPERATION_NOT_SUPPORTED, "MBIM_USSD_RESPONSE_OPERATION_NOT_SUPPORTED", "operation-not-supported" },
528     { MBIM_USSD_RESPONSE_NETWORK_TIMEOUT, "MBIM_USSD_RESPONSE_NETWORK_TIMEOUT", "network-timeout" },
529     { 0, NULL, NULL },
530 };
531
532 struct mbim_enum mbim_ussd_session_state_values[] = {
533     { MBIM_USSD_SESSION_STATE_NEW_SESSION, "MBIM_USSD_SESSION_STATE_NEW_SESSION", "new-session" },
534     { MBIM_USSD_SESSION_STATE_EXISTING_SESSION, "MBIM_USSD_SESSION_STATE_EXISTING_SESSION", "existing-session" },
535     { 0, NULL, NULL },
536 };
537
538 struct mbim_enum mbim_phonebook_state_values[] = {
539     { MBIM_PHONEBOOK_STATE_NOT_INITIALIZED, "MBIM_PHONEBOOK_STATE_NOT_INITIALIZED", "not-initialized" },
540     { MBIM_PHONEBOOK_STATE_INITIALIZED, "MBIM_PHONEBOOK_STATE_INITIALIZED", "initialized" },
541     { 0, NULL, NULL },
542 };
543
544 struct mbim_enum mbim_phonebook_flag_values[] = {
545     { MBIM_PHONEBOOK_FLAG_ALL, "MBIM_PHONEBOOK_FLAG_ALL", "all" },
546     { MBIM_PHONEBOOK_FLAG_INDEX, "MBIM_PHONEBOOK_FLAG_INDEX", "index" },
547     { 0, NULL, NULL },
548 };
549
550 struct mbim_enum mbim_phonebook_write_flag_values[] = {
551     { MBIM_PHONEBOOK_WRITE_FLAG_SAVE_UNUSED, "MBIM_PHONEBOOK_WRITE_FLAG_SAVE_UNUSED", "unused" },
552     { MBIM_PHONEBOOK_WRITE_FLAG_SAVE_INDEX, "MBIM_PHONEBOOK_WRITE_FLAG_SAVE_INDEX", "index" },
553     { 0, NULL, NULL },
554 };
555
556 struct mbim_enum mbim_stk_pac_profile_values[] = {
557     { MBIM_STK_PAC_PROFILE_NOT_HANDLED_BY_FUNCTION_HANDLED_BY_HOST, "MBIM_STK_PAC_PROFILE_NOT_HANDLED_BY_FUNCTION_HANDLED_BY_HOST", "not-handled-by-function-handled-by-host" },
558     { MBIM_STK_PAC_PROFILE_NOT_HANDLED_BY_FUNCTION_MAY_BE_HANDLED_BY_HOST, "MBIM_STK_PAC_PROFILE_NOT_HANDLED_BY_FUNCTION_MAY_BE_HANDLED_BY_HOST", "not-handled-by-function-may-be-handled-by-host" },
559     { MBIM_STK_PAC_PROFILE_HANDLED_BY_FUNCTION_ONLY_TRANSPARENT_TO_HOST, "MBIM_STK_PAC_PROFILE_HANDLED_BY_FUNCTION_ONLY_TRANSPARENT_TO_HOST", "handled-by-function-only-transparent-to-host" },
560     { MBIM_STK_PAC_PROFILE_HANDLED_BY_FUNCTION_NOTIFICATION_TO_HOST_POSSIBLE, "MBIM_STK_PAC_PROFILE_HANDLED_BY_FUNCTION_NOTIFICATION_TO_HOST_POSSIBLE", "handled-by-function-notification-to-host-possible" },
561     { MBIM_STK_PAC_PROFILE_HANDLED_BY_FUNCTION_NOTIFICATIONS_TO_HOST_ENABLED, "MBIM_STK_PAC_PROFILE_HANDLED_BY_FUNCTION_NOTIFICATIONS_TO_HOST_ENABLED", "handled-by-function-notifications-to-host-enabled" },
562     { MBIM_STK_PAC_PROFILE_HANDLED_BY_FUNCTION_CAN_BE_OVERRIDEN_BY_HOST, "MBIM_STK_PAC_PROFILE_HANDLED_BY_FUNCTION_CAN_BE_OVERRIDEN_BY_HOST", "handled-by-function-can-be-overriden-by-host" },
563     { MBIM_STK_PAC_PROFILE_HANDLED_BY_HOST_FUNCTION_NOT_ABLE_TO_HANDLE, "MBIM_STK_PAC_PROFILE_HANDLED_BY_HOST_FUNCTION_NOT_ABLE_TO_HANDLE", "handled-by-host-function-not-able-to-handle" },
564     { MBIM_STK_PAC_PROFILE_HANDLED_BY_HOST_FUNCTION_ABLE_TO_HANDLE, "MBIM_STK_PAC_PROFILE_HANDLED_BY_HOST_FUNCTION_ABLE_TO_HANDLE", "handled-by-host-function-able-to-handle" },
565     { 0, NULL, NULL },
566 };
567
568 struct mbim_enum mbim_stk_pac_type_values[] = {
569     { MBIM_STK_PAC_TYPE_PROACTIVE_COMMAND, "MBIM_STK_PAC_TYPE_PROACTIVE_COMMAND", "proactive-command" },
570     { MBIM_STK_PAC_TYPE_NOTIFICATION, "MBIM_STK_PAC_TYPE_NOTIFICATION", "notification" },
571     { 0, NULL, NULL },
572 };
573
574 struct mbim_enum mbim_network_idle_hint_state_values[] = {
575     { MBIM_NETWORK_IDLE_HINT_STATE_DISABLED, "MBIM_NETWORK_IDLE_HINT_STATE_DISABLED", "disabled" },
576     { MBIM_NETWORK_IDLE_HINT_STATE_ENABLED, "MBIM_NETWORK_IDLE_HINT_STATE_ENABLED", "enabled" },
577     { 0, NULL, NULL },
578 };
579
580 struct mbim_enum mbim_emergency_mode_state_values[] = {
581     { MBIM_EMERGENCY_MODE_STATE_OFF, "MBIM_EMERGENCY_MODE_STATE_OFF", "off" },
582     { MBIM_EMERGENCY_MODE_STATE_ON, "MBIM_EMERGENCY_MODE_STATE_ON", "on" },
583     { 0, NULL, NULL },
584 };
585
586 struct mbim_enum mbim_dss_link_state_values[] = {
587     { MBIM_DSS_LINK_STATE_DEACTIVATE, "MBIM_DSS_LINK_STATE_DEACTIVATE", "deactivate" },
588     { MBIM_DSS_LINK_STATE_ACTIVATE, "MBIM_DSS_LINK_STATE_ACTIVATE", "activate" },
589     { 0, NULL, NULL },
590 };