/* * Copyright (C) 2021 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #ifndef OHOS_HRIL_ENUM_H #define OHOS_HRIL_ENUM_H #define HRIL_VERSION 1 #define HRIL_VERSION_MIN 1 #define HRIL_MAX_CDMA_MESSAGE_LEN 255 #define HRIL_MAX_CDMA_ADDRESS_LEN 36 #ifndef TRUE #define TRUE 1 #define FALSE 0 #endif #define PARAMETER_SIZE 128 typedef enum { HRIL_SIM_SLOT_0, HRIL_SIM_SLOT_1, HRIL_SIM_SLOT_2, HRIL_SIM_SLOT_3, } HRilSimSlotId; typedef enum { HRIL_ERR_NULL_POINT = -1, HRIL_ERR_SUCCESS = 0, HRIL_ERR_GENERIC_FAILURE, HRIL_ERR_INVALID_PARAMETER, HRIL_ERR_MEMORY_FULL, HRIL_ERR_CMD_SEND_FAILURE, HRIL_ERR_CMD_NO_CARRIER, HRIL_ERR_INVALID_RESPONSE, HRIL_ERR_REPEAT_STATUS, HRIL_ERR_NETWORK_SEARCHING, HRIL_ERR_NETWORK_SEARCHING_INTERRUPTED, HRIL_ERR_MODEM_DEVICE_CLOSE, // network error HRIL_ERR_NO_SIMCARD_INSERTED, HRIL_ERR_NEED_PIN_CODE, HRIL_ERR_NEED_PUK_CODE, HRIL_ERR_NETWORK_SEARCH_TIMEOUT, HRIL_ERR_PINPUK_PASSWORD_NOCORRECT, HRIL_ERR_INVALID_MODEM_PARAMETER = 50, HRIL_ERR_HDF_IPC_FAILURE = 65535, } HRilErrNumber; /* From 3GPP TS 27.007 V4.3.0 (2001-12) ATD%s%s */ typedef enum { HRIL_CALL_ACTIVATE = 0, HRIL_CALL_HOLDING = 1, HRIL_CALL_DIALING = 2, /* MO call */ HRIL_CALL_ALERTING = 3, /* MO call */ HRIL_CALL_INCOMING = 4, /* MT call */ HRIL_CALL_WAITING = 5 /* MT call */ } HRilCallState; typedef enum { HRIL_CALL_FAIL_NO_VALID_NUMBER = 1, HRIL_CALL_FAIL_NO_LINE_TO_TARGET_ADDRESS = 3, HRIL_ERR_CALL_CAUSE = 5 } HRilLastCallErrorCode; typedef enum { HRIL_CALL_MODE_CS_ONLY = 1, HRIL_CALL_MODE_CS_1ST_PS_2ND, HRIL_CALL_MODE_PS_1ST_CS_2ND, HRIL_CALL_MODE_PS_ONLY, } HRilVoiceCallMode; typedef enum { HRIL_RADIO_POWER_STATE_UNAVAILABLE = -1, HRIL_RADIO_POWER_STATE_OFF = 0, HRIL_RADIO_POWER_STATE_ON = 1, } HRilRadioState; typedef enum { HRIL_DSDS_MODE_V2 = 0, HRIL_DSDS_MODE_V3 = 1, } HRilDsdsMode; typedef enum { HRIL_CALL_VOICE, HRIL_CALL_DATA, HRIL_CALL_FAX } HRilCallMode; typedef enum { NO_REG_MT_NO_SEARCH = 0, REG_MT_HOME = 1, NO_REG_MT_SEARCHING = 2, REG_MT_REJECTED = 3, REG_MT_UNKNOWN = 4, REG_MT_ROAMING = 5, REG_MT_EMERGENCY = 6, } HRilRegStatus; typedef enum { REG_NOT_NOTIFY = 0, /* AT command: +CREG,+CGREG,+CEREG,+C5GREG,n=0,Turn off notify function */ REG_NOTIFY_STAT_ONLY, /* AT command: +CREG,+CGREG,+CEREG,+C5GREG,n=1,notify data format type 1 */ REG_NOTIFY_STAT_LAC_CELLID, /* AT command: +CREG,+CGREG,+CEREG,+C5GREG,n=2,notify data format type 2 */ } HRilRegNotifyMode; // 3GPP TS 27.007 V3.9.0 (2001-06) 7.11 Call forwarding number and conditions +CCFC typedef enum { CALL_FORWARD_REASON_UNCONDITIONAL, CALL_FORWARD_REASON_MOBILE_BUSY, CALL_FORWARD_REASON_NO_REPLY, CALL_FORWARD_REASON_NO_REACHABLE, CALL_FORWARD_REASON_ALL_CF, /* all call forwarding (refer 3GPP TS 22.030 [19]) */ CALL_FORWARD_REASON_ALL_CCF, /* all conditional call forwarding */ } CallForwardReasonType; // 3GPP TS 27.007 V3.9.0 (2001-06) 7.11 Call forwarding number and conditions +CCFC typedef enum { CALL_FORWARD_CLASS_X_VOICE = 1, CALL_FORWARD_CLASS_X_DATA = 2, CALL_FORWARD_CLASS_X_FAX = 4, CALL_FORWARD_CLASS_X_SMS = 8, /* short message service */ CALL_FORWARD_CLASS_X_DCS = 16, /* data circuit sync */ CALL_FORWARD_CLASS_X_DCAS = 32, /* dedicated packet access */ CALL_FORWARD_CLASS_X_DPA = 64, /* all conditional call forwarding */ CALL_FORWARD_CLASS_X_DPADA = 128, /* dedicated PAD access */ } CallForwardClassX; // 3GPP TS 27.007 V3.9.0 (2001-06) 7.11 Call forwarding number and conditions +CCFC typedef enum { CALL_FORWARD_MODE_DISABLE, CALL_FORWARD_MODE_ENABLE, CALL_FORWARD_MODE_QUERY_STATUS, CALL_FORWARD_MODE_REGISTRATION, CALL_FORWARD_MODE_ERASURE, } CallForwardMode; // 3GPP TS 27.007 V3.9.0 (2001-06) Call related supplementary services +CHLD // 3GPP TS 27.007 V3.9.0 (2001-06) 7.22 Informative examples typedef enum { TYPE_HANG_UP_HOLD_WAIT = 1, TYPE_HANG_UP_ACTIVE = 2, } HRilCallSupplementType; typedef enum { HRIL_RESPONSE = 0, HRIL_NOTIFICATION = 1, } ReportType; typedef enum { HRIL_UNLOCK_SUCCESS = 0, HRIL_UNLOCK_PASSWORD_ERR = 1, HRIL_UNLOCK_OTHER_ERR = 2, } PinPukResultType; typedef enum { HRIL_REPORT_ERR_TYPE_NONE = 0, HRIL_REPORT_ERR_TYPE_GENERIC, HRIL_REPORT_ERR_TYPE_CME, HRIL_REPORT_ERR_TYPE_CMS, } ReportErrorType; typedef enum { NETWORK_TYPE_UNKNOWN = 0, /* indicates no cell information */ NETWORK_TYPE_GSM, NETWORK_TYPE_CDMA, NETWORK_TYPE_WCDMA, NETWORK_TYPE_TDSCDMA, NETWORK_TYPE_LTE, NETWORK_TYPE_NR } RatType; /* Radio Access Technology */ typedef enum { HRIL_SIM_NOT_READY = -1, HRIL_SIM_NOT_INSERTED = 0, HRIL_SIM_READY = 1, HRIL_SIM_PIN, HRIL_SIM_PUK, HRIL_SIM_PIN2, HRIL_SIM_PUK2, HRIL_PH_NET_PIN, HRIL_PH_NET_PUK, HRIL_PH_NET_SUB_PIN, HRIL_PH_NET_SUB_PUK, HRIL_PH_SP_PIN, HRIL_PH_SP_PUK } HRilSimState; typedef enum { HRIL_PIN_STATE_UNKNOWN, HRIL_PIN_NOT_VERIFIED, HRIL_PIN_VERIFIED, HRIL_PIN_DISABLED, HRIL_PIN_BLOCKED_ENABLED, HRIL_PIN_BLOCKED_PERM } HRilSimPinState; typedef enum { HRIL_NETWORK_AUTO = 0, HRIL_NETWORK_GSM = 1, HRIL_NETWORK_WCDMA = 2, HRIL_NETWORK_LTE = 3, HRIL_NETWORK_LTE_WCDMA = 4, HRIL_NETWORK_LTE_WCDMA_GSM = 5, HRIL_NETWORK_WCDMA_GSM = 6, HRIL_NETWORK_CDMA = 7, HRIL_NETWORK_EVDO = 8, HRIL_NETWORK_EVDO_CDMA = 9, HRIL_NETWORK_WCDMA_GSM_EVDO_CDMA = 10, HRIL_NETWORK_LTE_EVDO_CDMA = 11, HRIL_NETWORK_LTE_WCDMA_GSM_EVDO_CDMA = 12, HRIL_NETWORK_TDSCDMA = 13, HRIL_NETWORK_TDSCDMA_GSM = 14, HRIL_NETWORK_TDSCDMA_WCDMA = 15, HRIL_NETWORK_TDSCDMA_WCDMA_GSM = 16, HRIL_NETWORK_LTE_TDSCDMA = 17, HRIL_NETWORK_LTE_TDSCDMA_GSM = 18, HRIL_NETWORK_LTE_TDSCDMA_WCDMA = 19, HRIL_NETWORK_LTE_TDSCDMA_WCDMA_GSM = 20, HRIL_NETWORK_TDSCDMA_WCDMA_GSM_EVDO_CDMA = 21, HRIL_NETWORK_LTE_TDSCDMA_WCDMA_GSM_EVDO_CDMA = 22, HRIL_NETWORK_NR = 31, HRIL_NETWORK_NR_LTE = 32, HRIL_NETWORK_NR_LTE_WCDMA = 33, HRIL_NETWORK_NR_LTE_WCDMA_GSM = 34, HRIL_NETWORK_NR_LTE_EVDO_CDMA = 35, HRIL_NETWORK_NR_LTE_WCDMA_GSM_EVDO_CDMA = 36, HRIL_NETWORK_NR_LTE_TDSCDMA = 37, HRIL_NETWORK_NR_LTE_TDSCDMA_GSM = 38, HRIL_NETWORK_NR_LTE_TDSCDMA_WCDMA = 39, HRIL_NETWORK_NR_LTE_TDSCDMA_WCDMA_GSM = 40, HRIL_NETWORK_NR_LTE_TDSCDMA_WCDMA_GSM_EVDO_CDMA = 41, } HRilPreferredNetworkType; typedef enum { HRIL_USIM_INVALID = 0, HRIL_USIM_VALID = 1, HRIL_USIM_CS_INVALID = 2, HRIL_USIM_PS_INVALID = 3, HRIL_USIM_CS_PS_INVALID = 4, HRIL_ROM_SIM = 240, HRIL_NO_USIM = 255, } HRilSimStatus; typedef enum { HRIL_SIM_CARD_UNLOCK = 0, HRIL_SIM_CARD_LOCK = 1, } HRilSimLockStatus; typedef enum { HRIL_NO_ROAM = 0, HRIL_ROAMING = 1, HRIL_ROAM_UNKNOWN = 2, } HRilRoamStatus; typedef enum { HRIL_NO_SRV_SERVICE = 0, HRIL_RESTRICTED_SERVICE = 1, HRIL_SERVICE_VALID = 2, HRIL_REGIONAL_SERVICE = 3, HRIL_ENERGY_SAVING_SERVICE = 4, } HRilSrvStatus; typedef enum { HRIL_NO_DOMAIN_SERVICE = 0, HRIL_CS_SERVICE = 1, HRIL_PS_SERVICE = 2, HRIL_CS_PS_SERVICE = 3, HRIL_CS_PS_SEARCHING = 4, HRIL_CDMA_NOT_SUPPORT = 255, } HRilSrvDomain; typedef enum { HRIL_NO_SYSMODE_SERVICE = 0, HRIL_GSM_MODE = 1, HRIL_CDMA_MODE = 2, HRIL_WCDMA_MODE = 3, HRIL_TDSCDMA_MODE = 4, HRIL_WIMAX_MODE = 5, HRIL_LTE_MODE = 6, HRIL_LTE_CA_MODE = 7, HRIL_NR_MODE = 8, } HRilSysMode; typedef enum { HRIL_ACT_NO_SERVICE = 0, HRIL_ACT_GSM = 1, HRIL_ACT_GPRS = 2, HRIL_ACT_EDGE = 3, HRIL_ACT_IS95A = 21, HRIL_ACT_IS95B = 22, HRIL_ACT_CDMA2000_1X = 23, HRIL_ACT_EVDO_REL0 = 24, HRIL_ACT_EVDO_RELA = 25, HRIL_ACT_EVDO_RELB = 26, HRIL_ACT_HYBRID_CDMA2000_1X = 27, HRIL_ACT_HYBRID_EVDO_REL0 = 28, HRIL_ACT_HYBRID_EVDO_RELA = 29, HRIL_ACT_HYBRID_EVDO_RELB = 30, HRIL_ACT_WCDMA = 41, HRIL_ACT_HSDPA = 42, HRIL_ACT_HSUPA = 43, HRIL_ACT_HSPA = 44, HRIL_ACT_HSPAP = 45, HRIL_ACT_DC_HSPAP = 46, HRIL_ACT_TDSCDMA = 61, HRIL_ACT_802_16E = 81, HRIL_ACT_LTE = 101, HRIL_ACT_LTE_CA, HRIL_ACT_NR, } HRilVoiceSubMode; typedef enum { RADIO_TECHNOLOGY_UNKNOWN = 0, RADIO_TECHNOLOGY_GSM = 1, RADIO_TECHNOLOGY_1XRTT = 2, RADIO_TECHNOLOGY_WCDMA = 3, RADIO_TECHNOLOGY_HSPA = 4, RADIO_TECHNOLOGY_HSPAP = 5, RADIO_TECHNOLOGY_TD_SCDMA = 6, RADIO_TECHNOLOGY_EVDO = 7, RADIO_TECHNOLOGY_EHRPD = 8, RADIO_TECHNOLOGY_LTE = 9, RADIO_TECHNOLOGY_LTE_CA = 10, RADIO_TECHNOLOGY_IWLAN = 11, RADIO_TECHNOLOGY_NR = 12, RADIO_TECHNOLOGY_INVALID = 65535, } HRilRadioTech; /* reference 3GPP TS 24.008 V17.4.0 (2021-09) * Unsuccessful PDP context activation initiated by the MS */ typedef enum { HRIL_PDP_ERR_NONE = 0, HRIL_PDP_ERR_RETRY, HRIL_PDP_ERR_UNKNOWN = 65535, /* Unknown error */ HRIL_PDP_ERR_OPERATOR_DETERMINED_BARRING = 8, /* Operator Determined Barring---No need to retry */ HRIL_PDP_ERR_SHORTAGE_RESOURCES = 26, /* insufficient resources */ HRIL_PDP_ERR_MISSING_OR_UNKNOWN_APN, /* missing or unknown APN---No need to retry */ HRIL_PDP_ERR_UNKNOWN_PDP_ADDR_OR_TYPE, /* unknown PDP address or PDP type---No need to retry */ HRIL_PDP_ERR_USER_VERIFICATION, /* user authentication failed---No need to retry */ HRIL_PDP_ERR_ACTIVATION_REJECTED_GGSN, /* activation rejected by GGSN, Serving GW or PDN GW---No need to retry */ HRIL_PDP_ERR_ACTIVATION_REJECTED_UNSPECIFIED, /* activation rejected, unspecified */ HRIL_PDP_ERR_SERVICE_OPTION_NOT_SUPPORTED, /* service option not supported---No need to retry */ HRIL_PDP_ERR_REQUESTED_SERVICE_OPTION_NOT_SUBSCRIBED, /* requested service option not subscribed * ---No need to retry */ HRIL_PDP_ERR_SERVICE_OPTION_TEMPORARILY_OUT_OF_ORDER, /* service option temporarily out of order */ HRIL_PDP_ERR_NSAPI_ALREADY_USED, /* NSAPI already used---No need to retry */ HRIL_PDP_ERR_IPV4_ONLY_ALLOWED = 50, /* PDP type IPv4 only allowed---No need to retry */ HRIL_PDP_ERR_IPV6_ONLY_ALLOWED, /* PDP type IPv6 only allowed---No need to retry */ HRIL_PDP_ERR_IPV4V6_ONLY_ALLOWED = 57, /* PDP type IPv4v6 only allowed---No need to retry */ HRIL_PDP_ERR_NON_IP_ONLY_ALLOWED, /* PDP type non IP only allowed---No need to retry */ HRIL_PDP_ERR_MAX_NUM_OF_PDP_CONTEXTS = 65, /* maximum number of PDP contexts reached---No need to retry */ HRIL_PDP_ERR_APN_NOT_SUPPORTED_IN_CURRENT_RAT_PLMN, /* requested APN not supported in current RAT * and PLMN combination */ HRIL_PDP_ERR_PROTOCOL_ERRORS = 95, /* #95 - 111: protocol errors---No need to retry */ HRIL_PDP_ERR_APN_RESTRICTION_VALUE_INCOMPATIBLE = 112, /* APN restriction value incompatible * with active PDP context */ HRIL_PDP_ERR_MULT_ACCESSES_PDN_NOT_ALLOWED = 113, /* Multiple accesses to a PDN connection not allowed */ } HRilPdpErrorReason; typedef enum { HRIL_EVENT_COUNT_0 = 0, HRIL_EVENT_COUNT_1, HRIL_EVENT_COUNT_2, HRIL_EVENT_COUNT_3, HRIL_EVENT_COUNT_4 } HRilSendEventCount; typedef enum { HRIL_SIM_TYPE_UNKNOWN = 0, HRIL_SIM_TYPE_SIM, HRIL_SIM_TYPE_USIM } HRilSimType; typedef enum { HRIL_UNNEED_ACK = 0, HRIL_NEED_ACK } HRilAckTypes; typedef enum { NOTIFICATION_FILTER_ALL = -1, NOTIFICATION_FILTER_NONE = 0, NOTIFICATION_FILTER_SIGNAL_STRENGTH = 1, NOTIFICATION_FILTER_NETWORK_STATE = 2, NOTIFICATION_FILTER_DATA_CALL = 4, NOTIFICATION_FILTER_LINK_CAPACITY = 8, NOTIFICATION_FILTER_PHYSICAL_CHANNEL_CONFIG = 16 } HRilNotificationFilter; typedef enum { POWER_SAVE_MODE, CHARGING_STATE, LOW_DATA_STATE } HRilDeviceStateType; typedef enum { HRIL_SERVING_CELL_UNKNOWN, HRIL_SERVING_CELL_PRIMARY, HRIL_SERVING_CELL_SECONDARY } HRilCellConnectionStatus; typedef enum { HRIL_RADIO_PROTOCOL_PHASE_INITIAL, /* LM is configured is initial value and value after COMPLETE. */ HRIL_RADIO_PROTOCOL_PHASE_CHECK, /* CHECK is sent before UPDATE and indicates that an UPDATE will be * forthcoming with these same parameters. */ HRIL_RADIO_PROTOCOL_PHASE_UPDATE, /* UPDATE is sent after all LM's receive CHECK and returned success, * if any CHECK's fail no UPDATE will be sent. */ HRIL_RADIO_PROTOCOL_PHASE_NOTIFY, /* NOTIFY is sent with HNOTI_SIM_RADIO_PROTOCOL_UPDATED. */ HRIL_RADIO_PROTOCOL_PHASE_COMPLETE /* COMPLETE is sent after all previous phases have completed. * If an error occurs in any previous commands the * and fields will be the prior configuration thus * restoring the configuration to the previous value. An error returned * by this command will generally be ignored or may cause that logical * modem to be removed from service */ } HRilRadioProtocolPhase; typedef enum { HRIL_RADIO_PROTOCOL_TECH_UNKNOWN = 1 << RADIO_TECHNOLOGY_UNKNOWN, HRIL_RADIO_PROTOCOL_TECH_GSM = 1 << RADIO_TECHNOLOGY_GSM, HRIL_RADIO_PROTOCOL_TECH_1XRTT = 1 << RADIO_TECHNOLOGY_1XRTT, HRIL_RADIO_PROTOCOL_TECH_WCDMA = 1 << RADIO_TECHNOLOGY_WCDMA, HRIL_RADIO_PROTOCOL_TECH_HSPA = 1 << RADIO_TECHNOLOGY_HSPA, HRIL_RADIO_PROTOCOL_TECH_HSPAP = 1 << RADIO_TECHNOLOGY_HSPAP, HRIL_RADIO_PROTOCOL_TECH_TD_SCDMA = 1 << RADIO_TECHNOLOGY_TD_SCDMA, HRIL_RADIO_PROTOCOL_TECH_EVDO = 1 << RADIO_TECHNOLOGY_EVDO, HRIL_RADIO_PROTOCOL_TECH_EHRPD = 1 << RADIO_TECHNOLOGY_EHRPD, HRIL_RADIO_PROTOCOL_TECH_LTE = 1 << RADIO_TECHNOLOGY_LTE, HRIL_RADIO_PROTOCOL_TECH_LTE_CA = 1 << RADIO_TECHNOLOGY_LTE_CA, HRIL_RADIO_PROTOCOL_TECH_IWLAN = 1 << RADIO_TECHNOLOGY_IWLAN, HRIL_RADIO_PROTOCOL_TECH_NR = 1 << RADIO_TECHNOLOGY_NR } HRilRadioProtocolTech; typedef enum { HRIL_RADIO_PROTOCOL_STATUS_NONE, HRIL_RADIO_PROTOCOL_STATUS_SUCCESS, HRIL_RADIO_PROTOCOL_STATUS_FAIL } HRilRadioProtocolStatus; typedef enum { TTY_MODE_OFF = 0, TTY_MODE_FULL, TTY_MODE_HCO, TTY_MODE_VCO } TTYMode; typedef enum { CARD_POWER_DOWN = 0, CARD_POWER_UP, CARD_POWER_UP_PASS_THROUGH } CardPowerState; #endif // OHOS_HRIL_ENUM_H