643 lines
25 KiB
C
643 lines
25 KiB
C
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
|
/*
|
|
* libqmi-glib -- GLib/GIO based library to control QMI devices
|
|
*
|
|
* This library is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
* License as published by the Free Software Foundation; either
|
|
* version 2 of the License, or (at your option) any later version.
|
|
*
|
|
* This library is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
* Lesser General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
* License along with this library; if not, write to the
|
|
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
* Boston, MA 02110-1301 USA.
|
|
*
|
|
* Copyright (C) 2012 Google Inc.
|
|
*/
|
|
|
|
#ifndef _LIBQMI_GLIB_QMI_ENUMS_NAS_H_
|
|
#define _LIBQMI_GLIB_QMI_ENUMS_NAS_H_
|
|
|
|
/*****************************************************************************/
|
|
/* Helper enums for the 'QMI NAS Event Report' indication */
|
|
|
|
/**
|
|
* QmiNasRadioInterface:
|
|
* @QMI_NAS_RADIO_INTERFACE_NONE: None, no service.
|
|
* @QMI_NAS_RADIO_INTERFACE_CDMA_1X: CDMA2000 1X.
|
|
* @QMI_NAS_RADIO_INTERFACE_CDMA_1XEVDO: CDMA2000 HRPD (1xEV-DO).
|
|
* @QMI_NAS_RADIO_INTERFACE_AMPS: AMPS.
|
|
* @QMI_NAS_RADIO_INTERFACE_GSM: GSM.
|
|
* @QMI_NAS_RADIO_INTERFACE_UMTS: UMTS.
|
|
* @QMI_NAS_RADIO_INTERFACE_LTE: LTE.
|
|
* @QMI_NAS_RADIO_INTERFACE_TD_SCDMA: TD-SCDMA.
|
|
*
|
|
* Radio interface technology.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_RADIO_INTERFACE_NONE = 0x00,
|
|
QMI_NAS_RADIO_INTERFACE_CDMA_1X = 0x01,
|
|
QMI_NAS_RADIO_INTERFACE_CDMA_1XEVDO = 0x02,
|
|
QMI_NAS_RADIO_INTERFACE_AMPS = 0x03,
|
|
QMI_NAS_RADIO_INTERFACE_GSM = 0x04,
|
|
QMI_NAS_RADIO_INTERFACE_UMTS = 0x05,
|
|
QMI_NAS_RADIO_INTERFACE_LTE = 0x08,
|
|
QMI_NAS_RADIO_INTERFACE_TD_SCDMA = 0x09
|
|
} QmiNasRadioInterface;
|
|
|
|
/**
|
|
* QmiNasActiveBand:
|
|
* @QMI_NAS_ACTIVE_BAND_BC_0: Band class 0.
|
|
* @QMI_NAS_ACTIVE_BAND_BC_1: Band class 1.
|
|
* @QMI_NAS_ACTIVE_BAND_BC_2: Band class 2.
|
|
* @QMI_NAS_ACTIVE_BAND_BC_3: Band class 3.
|
|
* @QMI_NAS_ACTIVE_BAND_BC_4: Band class 4.
|
|
* @QMI_NAS_ACTIVE_BAND_BC_5: Band class 5.
|
|
* @QMI_NAS_ACTIVE_BAND_BC_6: Band class 6.
|
|
* @QMI_NAS_ACTIVE_BAND_BC_7: Band class 7.
|
|
* @QMI_NAS_ACTIVE_BAND_BC_8: Band class 8.
|
|
* @QMI_NAS_ACTIVE_BAND_BC_9: Band class 9.
|
|
* @QMI_NAS_ACTIVE_BAND_BC_10: Band class 10.
|
|
* @QMI_NAS_ACTIVE_BAND_BC_11: Band class 11.
|
|
* @QMI_NAS_ACTIVE_BAND_BC_12: Band class 12.
|
|
* @QMI_NAS_ACTIVE_BAND_BC_13: Band class 13.
|
|
* @QMI_NAS_ACTIVE_BAND_BC_14: Band class 14.
|
|
* @QMI_NAS_ACTIVE_BAND_BC_15: Band class 15.
|
|
* @QMI_NAS_ACTIVE_BAND_BC_16: Band class 16.
|
|
* @QMI_NAS_ACTIVE_BAND_BC_17: Band class 17.
|
|
* @QMI_NAS_ACTIVE_BAND_BC_18: Band class 18.
|
|
* @QMI_NAS_ACTIVE_BAND_BC_19: Band class 19.
|
|
* @QMI_NAS_ACTIVE_BAND_GSM_450: GSM 450.
|
|
* @QMI_NAS_ACTIVE_BAND_GSM_480: GSM 480.
|
|
* @QMI_NAS_ACTIVE_BAND_GSM_750: GSM 750.
|
|
* @QMI_NAS_ACTIVE_BAND_GSM_850: GSM 850.
|
|
* @QMI_NAS_ACTIVE_BAND_GSM_900_EXTENDED: GSM 900 (Extended).
|
|
* @QMI_NAS_ACTIVE_BAND_GSM_900_PRIMARY: GSM 900 (Primary).
|
|
* @QMI_NAS_ACTIVE_BAND_GSM_900_RAILWAYS: GSM 900 (Railways).
|
|
* @QMI_NAS_ACTIVE_BAND_GSM_1800: GSM 1800.
|
|
* @QMI_NAS_ACTIVE_BAND_GSM_1900: GSM 1900.
|
|
* @QMI_NAS_ACTIVE_BAND_WCDMA_2100: WCDMA 2100.
|
|
* @QMI_NAS_ACTIVE_BAND_WCDMA_PCS_1900: WCDMA PCS 1900.
|
|
* @QMI_NAS_ACTIVE_BAND_WCDMA_DCS_1800: WCDMA DCS 1800.
|
|
* @QMI_NAS_ACTIVE_BAND_WCDMA_1700_US: WCDMA 1700 (U.S.).
|
|
* @QMI_NAS_ACTIVE_BAND_WCDMA_850: WCDMA 850.
|
|
* @QMI_NAS_ACTIVE_BAND_WCDMA_800: WCDMA 800.
|
|
* @QMI_NAS_ACTIVE_BAND_WCDMA_2600: WCDMA 2600.
|
|
* @QMI_NAS_ACTIVE_BAND_WCDMA_900: WCDMA 900.
|
|
* @QMI_NAS_ACTIVE_BAND_WCDMA_1700_JAPAN: WCDMA 1700 (Japan).
|
|
* @QMI_NAS_ACTIVE_BAND_WCDMA_1500_JAPAN: WCDMA 1500 (Japan).
|
|
* @QMI_NAS_ACTIVE_BAND_WCDMA_850_JAPAN: WCDMA 850 (Japan).
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_1: E-UTRA band 1.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_2: E-UTRA band 2.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_3: E-UTRA band 3.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_4: E-UTRA band 4.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_5: E-UTRA band 5.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_6: E-UTRA band 6.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_7: E-UTRA band 7.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_8: E-UTRA band 8.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_9: E-UTRA band 9.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_10: E-UTRA band 10.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_11: E-UTRA band 11.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_12: E-UTRA band 12.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_13: E-UTRA band 13.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_14: E-UTRA band 14.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_17: E-UTRA band 17.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_18: E-UTRA band 18.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_19: E-UTRA band 19.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_20: E-UTRA band 20.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_21: E-UTRA band 21.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_24: E-UTRA band 24.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_25: E-UTRA band 25.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_33: E-UTRA band 33.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_34: E-UTRA band 34.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_35: E-UTRA band 35.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_36: E-UTRA band 36.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_37: E-UTRA band 37.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_38: E-UTRA band 38.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_39: E-UTRA band 39.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_40: E-UTRA band 40.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_41: E-UTRA band 41.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_42: E-UTRA band 42.
|
|
* @QMI_NAS_ACTIVE_BAND_EUTRA_43: E-UTRA band 43.
|
|
* @QMI_NAS_ACTIVE_BAND_TDSCDMA_A: TD-SCDMA Band A.
|
|
* @QMI_NAS_ACTIVE_BAND_TDSCDMA_B: TD-SCDMA Band B.
|
|
* @QMI_NAS_ACTIVE_BAND_TDSCDMA_C: TD-SCDMA Band C.
|
|
* @QMI_NAS_ACTIVE_BAND_TDSCDMA_D: TD-SCDMA Band D.
|
|
* @QMI_NAS_ACTIVE_BAND_TDSCDMA_E: TD-SCDMA Band E.
|
|
* @QMI_NAS_ACTIVE_BAND_TDSCDMA_F: TD-SCDMA Band F.
|
|
*
|
|
* Band classes.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_ACTIVE_BAND_BC_0 = 0,
|
|
QMI_NAS_ACTIVE_BAND_BC_1 = 1,
|
|
QMI_NAS_ACTIVE_BAND_BC_2 = 2,
|
|
QMI_NAS_ACTIVE_BAND_BC_3 = 3,
|
|
QMI_NAS_ACTIVE_BAND_BC_4 = 4,
|
|
QMI_NAS_ACTIVE_BAND_BC_5 = 5,
|
|
QMI_NAS_ACTIVE_BAND_BC_6 = 6,
|
|
QMI_NAS_ACTIVE_BAND_BC_7 = 7,
|
|
QMI_NAS_ACTIVE_BAND_BC_8 = 8,
|
|
QMI_NAS_ACTIVE_BAND_BC_9 = 9,
|
|
QMI_NAS_ACTIVE_BAND_BC_10 = 10,
|
|
QMI_NAS_ACTIVE_BAND_BC_11 = 11,
|
|
QMI_NAS_ACTIVE_BAND_BC_12 = 12,
|
|
QMI_NAS_ACTIVE_BAND_BC_13 = 13,
|
|
QMI_NAS_ACTIVE_BAND_BC_14 = 14,
|
|
QMI_NAS_ACTIVE_BAND_BC_15 = 15,
|
|
QMI_NAS_ACTIVE_BAND_BC_16 = 16,
|
|
QMI_NAS_ACTIVE_BAND_BC_17 = 17,
|
|
QMI_NAS_ACTIVE_BAND_BC_18 = 18,
|
|
QMI_NAS_ACTIVE_BAND_BC_19 = 19,
|
|
QMI_NAS_ACTIVE_BAND_GSM_450 = 40,
|
|
QMI_NAS_ACTIVE_BAND_GSM_480 = 41,
|
|
QMI_NAS_ACTIVE_BAND_GSM_750 = 42,
|
|
QMI_NAS_ACTIVE_BAND_GSM_850 = 43,
|
|
QMI_NAS_ACTIVE_BAND_GSM_900_EXTENDED = 44,
|
|
QMI_NAS_ACTIVE_BAND_GSM_900_PRIMARY = 45,
|
|
QMI_NAS_ACTIVE_BAND_GSM_900_RAILWAYS = 46,
|
|
QMI_NAS_ACTIVE_BAND_GSM_1800 = 47,
|
|
QMI_NAS_ACTIVE_BAND_GSM_1900 = 48,
|
|
QMI_NAS_ACTIVE_BAND_WCDMA_2100 = 80,
|
|
QMI_NAS_ACTIVE_BAND_WCDMA_PCS_1900 = 81,
|
|
QMI_NAS_ACTIVE_BAND_WCDMA_DCS_1800 = 82,
|
|
QMI_NAS_ACTIVE_BAND_WCDMA_1700_US = 83,
|
|
QMI_NAS_ACTIVE_BAND_WCDMA_850 = 84,
|
|
QMI_NAS_ACTIVE_BAND_WCDMA_800 = 85,
|
|
QMI_NAS_ACTIVE_BAND_WCDMA_2600 = 86,
|
|
QMI_NAS_ACTIVE_BAND_WCDMA_900 = 87,
|
|
QMI_NAS_ACTIVE_BAND_WCDMA_1700_JAPAN = 88,
|
|
QMI_NAS_ACTIVE_BAND_WCDMA_1500_JAPAN = 90,
|
|
QMI_NAS_ACTIVE_BAND_WCDMA_850_JAPAN = 91,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_1 = 120,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_2 = 121,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_3 = 122,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_4 = 123,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_5 = 124,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_6 = 125,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_7 = 126,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_8 = 127,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_9 = 128,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_10 = 129,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_11 = 130,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_12 = 131,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_13 = 132,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_14 = 133,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_17 = 134,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_18 = 143,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_19 = 144,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_20 = 145,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_21 = 146,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_24 = 147,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_25 = 148,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_33 = 135,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_34 = 136,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_35 = 137,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_36 = 138,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_37 = 139,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_38 = 140,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_39 = 141,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_40 = 142,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_41 = 149,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_42 = 150,
|
|
QMI_NAS_ACTIVE_BAND_EUTRA_43 = 151,
|
|
QMI_NAS_ACTIVE_BAND_TDSCDMA_A = 200,
|
|
QMI_NAS_ACTIVE_BAND_TDSCDMA_B = 201,
|
|
QMI_NAS_ACTIVE_BAND_TDSCDMA_C = 202,
|
|
QMI_NAS_ACTIVE_BAND_TDSCDMA_D = 203,
|
|
QMI_NAS_ACTIVE_BAND_TDSCDMA_E = 204,
|
|
QMI_NAS_ACTIVE_BAND_TDSCDMA_F = 205
|
|
} QmiNasActiveBand;
|
|
|
|
/**
|
|
* QmiNasNetworkServiceDomain:
|
|
* @QMI_NAS_NETWORK_SERVICE_DOMAIN_NONE: No service.
|
|
* @QMI_NAS_NETWORK_SERVICE_DOMAIN_CS: Circuit switched.
|
|
* @QMI_NAS_NETWORK_SERVICE_DOMAIN_PS: Packet switched.
|
|
* @QMI_NAS_NETWORK_SERVICE_DOMAIN_CS_PS: Circuit and packet switched.
|
|
* @QMI_NAS_NETWORK_SERVICE_DOMAIN_UNKNOWN: Unknown service..
|
|
*
|
|
* Network Service Domain.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_NETWORK_SERVICE_DOMAIN_NONE = 0x00,
|
|
QMI_NAS_NETWORK_SERVICE_DOMAIN_CS = 0x01,
|
|
QMI_NAS_NETWORK_SERVICE_DOMAIN_PS = 0x02,
|
|
QMI_NAS_NETWORK_SERVICE_DOMAIN_CS_PS = 0x03,
|
|
QMI_NAS_NETWORK_SERVICE_DOMAIN_UNKNOWN = 0x04,
|
|
} QmiNasNetworkServiceDomain;
|
|
|
|
/**
|
|
* QmiNasEvdoSinrLevel:
|
|
* @QMI_NAS_EVDO_SINR_LEVEL_0: -9 dB.
|
|
* @QMI_NAS_EVDO_SINR_LEVEL_1: -6 dB.
|
|
* @QMI_NAS_EVDO_SINR_LEVEL_2: -4.5 dB.
|
|
* @QMI_NAS_EVDO_SINR_LEVEL_3: -3 dB.
|
|
* @QMI_NAS_EVDO_SINR_LEVEL_4: -2 dB.
|
|
* @QMI_NAS_EVDO_SINR_LEVEL_5: +1 dB.
|
|
* @QMI_NAS_EVDO_SINR_LEVEL_6: +3 dB.
|
|
* @QMI_NAS_EVDO_SINR_LEVEL_7: +6 dB.
|
|
* @QMI_NAS_EVDO_SINR_LEVEL_8: +9 dB.
|
|
*
|
|
* EV-DO SINR level.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_EVDO_SINR_LEVEL_0 = 0,
|
|
QMI_NAS_EVDO_SINR_LEVEL_1 = 1,
|
|
QMI_NAS_EVDO_SINR_LEVEL_2 = 2,
|
|
QMI_NAS_EVDO_SINR_LEVEL_3 = 3,
|
|
QMI_NAS_EVDO_SINR_LEVEL_4 = 4,
|
|
QMI_NAS_EVDO_SINR_LEVEL_5 = 5,
|
|
QMI_NAS_EVDO_SINR_LEVEL_6 = 6,
|
|
QMI_NAS_EVDO_SINR_LEVEL_7 = 7,
|
|
QMI_NAS_EVDO_SINR_LEVEL_8 = 8
|
|
} QmiNasEvdoSinrLevel;
|
|
|
|
/*****************************************************************************/
|
|
/* Helper enums for the 'QMI NAS Get Signal Strength' request/response */
|
|
|
|
/**
|
|
* QmiNasSignalStrengthRequest:
|
|
* @QMI_NAS_SIGNAL_STRENGTH_REQUEST_NONE: None.
|
|
* @QMI_NAS_SIGNAL_STRENGTH_REQUEST_RSSI: Request RSSI information.
|
|
* @QMI_NAS_SIGNAL_STRENGTH_REQUEST_ECIO: Request ECIO information.
|
|
* @QMI_NAS_SIGNAL_STRENGTH_REQUEST_IO: Request IO information.
|
|
* @QMI_NAS_SIGNAL_STRENGTH_REQUEST_SINR: Request SINR information.
|
|
* @QMI_NAS_SIGNAL_STRENGTH_REQUEST_ERROR_RATE: Request error rate information.
|
|
* @QMI_NAS_SIGNAL_STRENGTH_REQUEST_RSRQ: Request RSRQ information.
|
|
* @QMI_NAS_SIGNAL_STRENGTH_REQUEST_LTE_SNR: Request LTE SNR information.
|
|
* @QMI_NAS_SIGNAL_STRENGTH_REQUEST_LTE_RSRP: Request LTE RSRP information.
|
|
*
|
|
* Extra information to request when gathering Signal Strength.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_SIGNAL_STRENGTH_REQUEST_NONE = 0,
|
|
QMI_NAS_SIGNAL_STRENGTH_REQUEST_RSSI = 1 << 0,
|
|
QMI_NAS_SIGNAL_STRENGTH_REQUEST_ECIO = 1 << 1,
|
|
QMI_NAS_SIGNAL_STRENGTH_REQUEST_IO = 1 << 2,
|
|
QMI_NAS_SIGNAL_STRENGTH_REQUEST_SINR = 1 << 3,
|
|
QMI_NAS_SIGNAL_STRENGTH_REQUEST_ERROR_RATE = 1 << 4,
|
|
QMI_NAS_SIGNAL_STRENGTH_REQUEST_RSRQ = 1 << 5,
|
|
QMI_NAS_SIGNAL_STRENGTH_REQUEST_LTE_SNR = 1 << 6,
|
|
QMI_NAS_SIGNAL_STRENGTH_REQUEST_LTE_RSRP = 1 << 7
|
|
} QmiNasSignalStrengthRequest;
|
|
|
|
/*****************************************************************************/
|
|
/* Helper enums for the 'QMI NAS Network Scan' request/response */
|
|
|
|
/**
|
|
* QmiNasNetworkScanType:
|
|
* @QMI_NAS_NETWORK_SCAN_TYPE_GSM: GSM network.
|
|
* @QMI_NAS_NETWORK_SCAN_TYPE_UMTS: UMTS network.
|
|
* @QMI_NAS_NETWORK_SCAN_TYPE_LTE: LTE network.
|
|
* @QMI_NAS_NETWORK_SCAN_TYPE_TD_SCDMA: TD-SCDMA network.
|
|
*
|
|
* Flags to use when specifying which networks to scan.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_NETWORK_SCAN_TYPE_GSM = 1 << 0,
|
|
QMI_NAS_NETWORK_SCAN_TYPE_UMTS = 1 << 1,
|
|
QMI_NAS_NETWORK_SCAN_TYPE_LTE = 1 << 2,
|
|
QMI_NAS_NETWORK_SCAN_TYPE_TD_SCDMA = 1 << 3
|
|
} QmiNasNetworkScanType;
|
|
|
|
/**
|
|
* QmiNasNetworkStatus:
|
|
* @QMI_NAS_NETWORK_STATUS_CURRENT_SERVING: Network is in use, current serving.
|
|
* @QMI_NAS_NETWORK_STATUS_AVAILABLE: Network is vailable.
|
|
* @QMI_NAS_NETWORK_STATUS_HOME: Network is home network.
|
|
* @QMI_NAS_NETWORK_STATUS_ROAMING: Network is a roaming network.
|
|
* @QMI_NAS_NETWORK_STATUS_FORBIDDEN: Network is forbidden.
|
|
* @QMI_NAS_NETWORK_STATUS_NOT_FORBIDDEN: Network is not forbidden.
|
|
* @QMI_NAS_NETWORK_STATUS_PREFERRED: Network is preferred.
|
|
* @QMI_NAS_NETWORK_STATUS_NOT_PREFERRED: Network is not preferred.
|
|
*
|
|
* Flags to specify the status of a given network.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_NETWORK_STATUS_CURRENT_SERVING = 1 << 0,
|
|
QMI_NAS_NETWORK_STATUS_AVAILABLE = 1 << 1,
|
|
QMI_NAS_NETWORK_STATUS_HOME = 1 << 2,
|
|
QMI_NAS_NETWORK_STATUS_ROAMING = 1 << 3,
|
|
QMI_NAS_NETWORK_STATUS_FORBIDDEN = 1 << 4,
|
|
QMI_NAS_NETWORK_STATUS_NOT_FORBIDDEN = 1 << 5,
|
|
QMI_NAS_NETWORK_STATUS_PREFERRED = 1 << 6,
|
|
QMI_NAS_NETWORK_STATUS_NOT_PREFERRED = 1 << 7
|
|
} QmiNasNetworkStatus;
|
|
|
|
/*****************************************************************************/
|
|
/* Helper enums for the 'QMI NAS Get Serving System' request/response */
|
|
|
|
/**
|
|
* QmiNasRegistrationState:
|
|
* @QMI_NAS_REGISTRATION_STATE_NOT_REGISTERED: Not registered.
|
|
* @QMI_NAS_REGISTRATION_STATE_REGISTERED: Registered.
|
|
* @QMI_NAS_REGISTRATION_STATE_NOT_REGISTERED_SEARCHING: Searching.
|
|
* @QMI_NAS_REGISTRATION_STATE_REGISTRATION_DENIED: Registration denied.
|
|
* @QMI_NAS_REGISTRATION_STATE_UNKNOWN: Unknown.
|
|
*
|
|
* Status of the network registration.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_REGISTRATION_STATE_NOT_REGISTERED = 0x00,
|
|
QMI_NAS_REGISTRATION_STATE_REGISTERED = 0x01,
|
|
QMI_NAS_REGISTRATION_STATE_NOT_REGISTERED_SEARCHING = 0x02,
|
|
QMI_NAS_REGISTRATION_STATE_REGISTRATION_DENIED = 0x03,
|
|
QMI_NAS_REGISTRATION_STATE_UNKNOWN = 0x04
|
|
} QmiNasRegistrationState;
|
|
|
|
/**
|
|
* QmiNasAttachState:
|
|
* @QMI_NAS_ATTACH_STATE_UNKNOWN: Unknown attach state.
|
|
* @QMI_NAS_ATTACH_STATE_ATTACHED: Attached.
|
|
* @QMI_NAS_ATTACH_STATE_DETACHED: Detached.
|
|
*
|
|
* Domain attach state.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_ATTACH_STATE_UNKNOWN = 0x00,
|
|
QMI_NAS_ATTACH_STATE_ATTACHED = 0x01,
|
|
QMI_NAS_ATTACH_STATE_DETACHED = 0x02,
|
|
} QmiNasAttachState;
|
|
|
|
/**
|
|
* QmiNasNetworkType:
|
|
* @QMI_NAS_NETWORK_TYPE_UNKNOWN: Unknown.
|
|
* @QMI_NAS_NETWORK_TYPE_3GPP: 3GPP network.
|
|
* @QMI_NAS_NETWORK_TYPE_3GPP2: 3GPP2 network.
|
|
*
|
|
* Type of network.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_NETWORK_TYPE_UNKNOWN = 0x00,
|
|
QMI_NAS_NETWORK_TYPE_3GPP = 0x01,
|
|
QMI_NAS_NETWORK_TYPE_3GPP2 = 0x02
|
|
} QmiNasNetworkType;
|
|
|
|
/**
|
|
* QmiNasRoamingIndicatorStatus:
|
|
* @QMI_NAS_ROAMING_INDICATOR_STATUS_ON: Roaming.
|
|
* @QMI_NAS_ROAMING_INDICATOR_STATUS_OFF: Home.
|
|
*
|
|
* Status of the roaming indication.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_ROAMING_INDICATOR_STATUS_ON = 0x00,
|
|
QMI_NAS_ROAMING_INDICATOR_STATUS_OFF = 0x01,
|
|
/* next values only for 3GPP2 */
|
|
} QmiNasRoamingIndicatorStatus;
|
|
|
|
/**
|
|
* QmiNasDataCapability:
|
|
* @QMI_NAS_DATA_CAPABILITY_GPRS: GPRS.
|
|
* @QMI_NAS_DATA_CAPABILITY_EDGE: EDGE.
|
|
* @QMI_NAS_DATA_CAPABILITY_HSDPA: HSDPA.
|
|
* @QMI_NAS_DATA_CAPABILITY_HSUPA: HSUPA.
|
|
* @QMI_NAS_DATA_CAPABILITY_WCDMA: WCDMA.
|
|
* @QMI_NAS_DATA_CAPABILITY_CDMA: CDMA.
|
|
* @QMI_NAS_DATA_CAPABILITY_EVDO_REV_0: EV-DO revision 0.
|
|
* @QMI_NAS_DATA_CAPABILITY_EVDO_REV_A: EV-DO revision A.
|
|
* @QMI_NAS_DATA_CAPABILITY_GSM: GSM.
|
|
* @QMI_NAS_DATA_CAPABILITY_EVDO_REV_B: EV-DO revision B.
|
|
* @QMI_NAS_DATA_CAPABILITY_LTE: LTE.
|
|
* @QMI_NAS_DATA_CAPABILITY_HSDPA_PLUS: HSDPA+.
|
|
* @QMI_NAS_DATA_CAPABILITY_DC_HSDPA_PLUS: DC-HSDPA+.
|
|
*
|
|
* Data capability of the network.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_DATA_CAPABILITY_GPRS = 0x01,
|
|
QMI_NAS_DATA_CAPABILITY_EDGE = 0x02,
|
|
QMI_NAS_DATA_CAPABILITY_HSDPA = 0x03,
|
|
QMI_NAS_DATA_CAPABILITY_HSUPA = 0x04,
|
|
QMI_NAS_DATA_CAPABILITY_WCDMA = 0x05,
|
|
QMI_NAS_DATA_CAPABILITY_CDMA = 0x06,
|
|
QMI_NAS_DATA_CAPABILITY_EVDO_REV_0 = 0x07,
|
|
QMI_NAS_DATA_CAPABILITY_EVDO_REV_A = 0x08,
|
|
QMI_NAS_DATA_CAPABILITY_GSM = 0x09,
|
|
QMI_NAS_DATA_CAPABILITY_EVDO_REV_B = 0x0A,
|
|
QMI_NAS_DATA_CAPABILITY_LTE = 0x0B,
|
|
QMI_NAS_DATA_CAPABILITY_HSDPA_PLUS = 0x0C,
|
|
QMI_NAS_DATA_CAPABILITY_DC_HSDPA_PLUS = 0x0D
|
|
} QmiNasDataCapability;
|
|
|
|
/**
|
|
* QmiNasServiceStatus:
|
|
* @QMI_NAS_SERVICE_STATUS_NONE: No service.
|
|
* @QMI_NAS_SERVICE_STATUS_LIMITED: Limited service.
|
|
* @QMI_NAS_SERVICE_STATUS_AVAILABLE: Service available.
|
|
* @QMI_NAS_SERVICE_STATUS_LIMITED_REGIONAL: Limited regional service.
|
|
* @QMI_NAS_SERVICE_STATUS_POWER_SAVE: Device in power save mode.
|
|
*
|
|
* Status of the service.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_SERVICE_STATUS_NONE = 0x00,
|
|
QMI_NAS_SERVICE_STATUS_LIMITED = 0x01,
|
|
QMI_NAS_SERVICE_STATUS_AVAILABLE = 0x02,
|
|
QMI_NAS_SERVICE_STATUS_LIMITED_REGIONAL = 0x03,
|
|
QMI_NAS_SERVICE_STATUS_POWER_SAVE = 0x04
|
|
} QmiNasServiceStatus;
|
|
|
|
/**
|
|
* QmiNasHdrPersonality:
|
|
* @QMI_NAS_HDR_PERSONALITY_UNKNOWN: Unknown.
|
|
* @QMI_NAS_HDR_PERSONALITY_HRPD: HRPD.
|
|
* @QMI_NAS_HDR_PERSONALITY_EHRPD: eHRPD.
|
|
*
|
|
* HDR personality type.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_HDR_PERSONALITY_UNKNOWN = 0x00,
|
|
QMI_NAS_HDR_PERSONALITY_HRPD = 0x01,
|
|
QMI_NAS_HDR_PERSONALITY_EHRPD = 0x02,
|
|
} QmiNasHdrPersonality;
|
|
|
|
/**
|
|
* QmiNasCallBarringStatus:
|
|
* @QMI_NAS_CALL_BARRING_STATUS_NORMAL_ONLY: Normal calls only.
|
|
* @QMI_NAS_CALL_BARRING_STATUS_EMERGENCY_ONLY: Emergency calls only.
|
|
* @QMI_NAS_CALL_BARRING_STATUS_NO_CALLS: No calls allowed.
|
|
* @QMI_NAS_CALL_BARRING_STATUS_ALL_CALLS: All calls allowed.
|
|
* @QMI_NAS_CALL_BARRING_STATUS_UNKNOWN: Unknown.
|
|
*
|
|
* Status of the call barring functionality.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_CALL_BARRING_STATUS_NORMAL_ONLY = 0x00,
|
|
QMI_NAS_CALL_BARRING_STATUS_EMERGENCY_ONLY = 0x01,
|
|
QMI_NAS_CALL_BARRING_STATUS_NO_CALLS = 0x02,
|
|
QMI_NAS_CALL_BARRING_STATUS_ALL_CALLS = 0x03,
|
|
QMI_NAS_CALL_BARRING_STATUS_UNKNOWN = -1
|
|
} QmiNasCallBarringStatus;
|
|
|
|
/*****************************************************************************/
|
|
/* Helper enums for the 'QMI NAS Get Technology Preference' request/response */
|
|
|
|
/**
|
|
* QmiNasRadioTechnologyPreference:
|
|
* @QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_3GPP2: 3GPP2 technology.
|
|
* @QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_3GPP: 3GPP technology.
|
|
* @QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_ANALOG: AMPS if 3GPP2, GSM if 3GPP.
|
|
* @QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_DIGITAL: CDMA if 3GPP2, WCDMA if 3GPP.
|
|
* @QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_HDR: CDMA EV-DO.
|
|
* @QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_LTE: LTE.
|
|
*
|
|
* Flags to specify the radio technology preference.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_3GPP2 = 1 << 0,
|
|
QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_3GPP = 1 << 1,
|
|
QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_ANALOG = 1 << 2,
|
|
QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_DIGITAL = 1 << 3,
|
|
QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_HDR = 1 << 4,
|
|
QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_LTE = 1 << 5
|
|
} QmiNasRadioTechnologyPreference;
|
|
|
|
/**
|
|
* QmiNasPreferenceDuration:
|
|
* @QMI_NAS_PREFERENCE_DURATION_PERMANENT: Permanent.
|
|
* @QMI_NAS_PREFERENCE_DURATION_POWER_CYCLE: Until the next power cycle.
|
|
* @QMI_NAS_PREFERENCE_DURATION_ONE_CALL: Until end of call.
|
|
* @QMI_NAS_PREFERENCE_DURATION_ONE_CALL_OR_TIME: Until end of call or a specified time.
|
|
* @QMI_NAS_PREFERENCE_DURATION_INTERNAL_ONE_CALL_1: Internal reason 1, one call.
|
|
* @QMI_NAS_PREFERENCE_DURATION_INTERNAL_ONE_CALL_2: Internal reason 2, one call.
|
|
* @QMI_NAS_PREFERENCE_DURATION_INTERNAL_ONE_CALL_3: Internal reason 3, one call.
|
|
*
|
|
* Duration of the preference setting.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_PREFERENCE_DURATION_PERMANENT = 0x00,
|
|
QMI_NAS_PREFERENCE_DURATION_POWER_CYCLE = 0x01,
|
|
QMI_NAS_PREFERENCE_DURATION_ONE_CALL = 0x02,
|
|
QMI_NAS_PREFERENCE_DURATION_ONE_CALL_OR_TIME = 0x03,
|
|
QMI_NAS_PREFERENCE_DURATION_INTERNAL_ONE_CALL_1 = 0x04,
|
|
QMI_NAS_PREFERENCE_DURATION_INTERNAL_ONE_CALL_2 = 0x05,
|
|
QMI_NAS_PREFERENCE_DURATION_INTERNAL_ONE_CALL_3 = 0x06
|
|
} QmiNasPreferenceDuration;
|
|
|
|
/*****************************************************************************/
|
|
/* Helper enums for the 'QMI NAS Get/Set System Selection Preference'
|
|
* requests/responses */
|
|
|
|
/**
|
|
* QmiNasRatModePreference:
|
|
* @QMI_NAS_RAT_MODE_PREFERENCE_CDMA_1X: CDMA2000 1X.
|
|
* @QMI_NAS_RAT_MODE_PREFERENCE_CDMA_1XEVDO: CDMA2000 HRPD (1xEV-DO).
|
|
* @QMI_NAS_RAT_MODE_PREFERENCE_GSM: GSM.
|
|
* @QMI_NAS_RAT_MODE_PREFERENCE_UMTS: UMTS.
|
|
* @QMI_NAS_RAT_MODE_PREFERENCE_LTE: LTE.
|
|
* @QMI_NAS_RAT_MODE_PREFERENCE_TD_SCDMA: TD-SCDMA.
|
|
*
|
|
* Flags specifying radio access technology mode preference.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_RAT_MODE_PREFERENCE_CDMA_1X = 1 << 0,
|
|
QMI_NAS_RAT_MODE_PREFERENCE_CDMA_1XEVDO = 1 << 1,
|
|
QMI_NAS_RAT_MODE_PREFERENCE_GSM = 1 << 2,
|
|
QMI_NAS_RAT_MODE_PREFERENCE_UMTS = 1 << 3,
|
|
QMI_NAS_RAT_MODE_PREFERENCE_LTE = 1 << 4,
|
|
QMI_NAS_RAT_MODE_PREFERENCE_TD_SCDMA = 1 << 5
|
|
} QmiNasRatModePreference;
|
|
|
|
/**
|
|
* QmiNasCdmaPrlPreference:
|
|
* @QMI_NAS_CDMA_PRL_PREFERENCE_A_SIDE_ONLY: System A only.
|
|
* @QMI_NAS_CDMA_PRL_PREFERENCE_B_SIDE_ONLY: System B only.
|
|
* @QMI_NAS_CDMA_PRL_PREFERENCE_ANY: Any system.
|
|
*
|
|
* Flags specifying the preference when using CDMA Band Class 0.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_CDMA_PRL_PREFERENCE_A_SIDE_ONLY = 0x0001,
|
|
QMI_NAS_CDMA_PRL_PREFERENCE_B_SIDE_ONLY = 0x0002,
|
|
QMI_NAS_CDMA_PRL_PREFERENCE_ANY = 0x3FFF
|
|
} QmiNasCdmaPrlPreference;
|
|
|
|
/**
|
|
* QmiNasRoamingPreference:
|
|
* @QMI_NAS_ROAMING_PREFERENCE_OFF: Only non-roaming networks.
|
|
* @QMI_NAS_ROAMING_PREFERENCE_NOT_OFF: Only roaming networks.
|
|
* @QMI_NAS_ROAMING_PREFERENCE_NOT_FLASHING: Only non-roaming networks or not flashing.
|
|
* @QMI_NAS_ROAMING_PREFERENCE_ANY: Don't filter by roaming when acquiring networks.
|
|
*
|
|
* Roaming preference.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_ROAMING_PREFERENCE_OFF = 0x01,
|
|
QMI_NAS_ROAMING_PREFERENCE_NOT_OFF = 0x02,
|
|
QMI_NAS_ROAMING_PREFERENCE_NOT_FLASHING = 0x03,
|
|
QMI_NAS_ROAMING_PREFERENCE_ANY = 0xFF
|
|
} QmiNasRoamingPreference;
|
|
|
|
/**
|
|
* QmiNasNetworkSelectionPreference:
|
|
* @QMI_NAS_NETWORK_SELECTION_PREFERENCE_AUTOMATIC:
|
|
* @QMI_NAS_NETWORK_SELECTION_PREFERENCE_MANUAL:
|
|
*
|
|
* Network selection preference.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_NETWORK_SELECTION_PREFERENCE_AUTOMATIC = 0x00,
|
|
QMI_NAS_NETWORK_SELECTION_PREFERENCE_MANUAL = 0x01
|
|
} QmiNasNetworkSelectionPreference;
|
|
|
|
/**
|
|
* QmiNasServiceDomainPreference:
|
|
* @QMI_NAS_SERVICE_DOMAIN_PREFERENCE_CS_ONLY: Circuit-switched only.
|
|
* @QMI_NAS_SERVICE_DOMAIN_PREFERENCE_PS_ONLY: Packet-switched only.
|
|
* @QMI_NAS_SERVICE_DOMAIN_PREFERENCE_CS_PS: Circuit-switched and packet-switched.
|
|
* @QMI_NAS_SERVICE_DOMAIN_PREFERENCE_PS_ATTACH: Packet-switched attach.
|
|
* @QMI_NAS_SERVICE_DOMAIN_PREFERENCE_PS_DETACH:Packet-switched dettach.
|
|
*
|
|
* Service domain preference.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_SERVICE_DOMAIN_PREFERENCE_CS_ONLY = 0x00,
|
|
QMI_NAS_SERVICE_DOMAIN_PREFERENCE_PS_ONLY = 0x01,
|
|
QMI_NAS_SERVICE_DOMAIN_PREFERENCE_CS_PS = 0x02,
|
|
QMI_NAS_SERVICE_DOMAIN_PREFERENCE_PS_ATTACH = 0x03,
|
|
QMI_NAS_SERVICE_DOMAIN_PREFERENCE_PS_DETACH = 0x04,
|
|
} QmiNasServiceDomainPreference;
|
|
|
|
/**
|
|
* QmiNasGsmWcdmaAcquisitionOrderPreference:
|
|
* @QMI_NAS_GSM_WCDMA_ACQUISITION_ORDER_PREFERENCE_AUTOMATIC: Automatic.
|
|
* @QMI_NAS_GSM_WCDMA_ACQUISITION_ORDER_PREFERENCE_GSM: GSM first, then WCDMA.
|
|
* @QMI_NAS_GSM_WCDMA_ACQUISITION_ORDER_PREFERENCE_WCDMA: WCDMA first, then GSM.
|
|
*
|
|
* GSM/WCDMA acquisition order preference.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_GSM_WCDMA_ACQUISITION_ORDER_PREFERENCE_AUTOMATIC = 0x00,
|
|
QMI_NAS_GSM_WCDMA_ACQUISITION_ORDER_PREFERENCE_GSM = 0x01,
|
|
QMI_NAS_GSM_WCDMA_ACQUISITION_ORDER_PREFERENCE_WCDMA = 0x02
|
|
} QmiNasGsmWcdmaAcquisitionOrderPreference;
|
|
|
|
/**
|
|
* QmiNasTdScdmaBandPreference:
|
|
* @QMI_NAS_TD_SCDMA_BAND_PREFERENCE_A: Band A.
|
|
* @QMI_NAS_TD_SCDMA_BAND_PREFERENCE_B: Band B.
|
|
* @QMI_NAS_TD_SCDMA_BAND_PREFERENCE_C: Band C.
|
|
* @QMI_NAS_TD_SCDMA_BAND_PREFERENCE_D: Band D.
|
|
* @QMI_NAS_TD_SCDMA_BAND_PREFERENCE_E: Band E.
|
|
* @QMI_NAS_TD_SCDMA_BAND_PREFERENCE_F: Band F.
|
|
*
|
|
* Flags to specify TD-SCDMA-specific frequency band preferences.
|
|
*/
|
|
typedef enum {
|
|
QMI_NAS_TD_SCDMA_BAND_PREFERENCE_A = 1 << 0,
|
|
QMI_NAS_TD_SCDMA_BAND_PREFERENCE_B = 1 << 1,
|
|
QMI_NAS_TD_SCDMA_BAND_PREFERENCE_C = 1 << 2,
|
|
QMI_NAS_TD_SCDMA_BAND_PREFERENCE_D = 1 << 3,
|
|
QMI_NAS_TD_SCDMA_BAND_PREFERENCE_E = 1 << 4,
|
|
QMI_NAS_TD_SCDMA_BAND_PREFERENCE_F = 1 << 5
|
|
} QmiNasTdScdmaBandPreference;
|
|
|
|
#endif /* _LIBQMI_GLIB_QMI_ENUMS_NAS_H_ */
|