nas: implement "Get Serving System" request/response
This commit is contained in:
parent
b2bc79f28b
commit
fd65ff12d2
|
@ -511,6 +511,221 @@
|
|||
"format" : "guint8",
|
||||
"public-format" : "gboolean" } ] } } ] },
|
||||
|
||||
// *********************************************************************************
|
||||
{ "name" : "Get Serving System",
|
||||
"type" : "Message",
|
||||
"service" : "NAS",
|
||||
"id" : "0x0024",
|
||||
"version" : "1.0",
|
||||
"output" : [ { "common-ref" : "Operation Result" },
|
||||
{ "name" : "Serving System",
|
||||
"id" : "0x01",
|
||||
"mandatory" : "yes",
|
||||
"type" : "TLV",
|
||||
"format" : "sequence",
|
||||
"contents" : [ { "name" : "Registration State",
|
||||
"format" : "guint8",
|
||||
"public-format" : "QmiNasRegistrationState" },
|
||||
{ "name" : "CS Attach State",
|
||||
"format" : "guint8",
|
||||
"public-format" : "QmiNasAttachState" },
|
||||
{ "name" : "PS Attach State",
|
||||
"format" : "guint8",
|
||||
"public-format" : "QmiNasAttachState" },
|
||||
{ "name" : "Selected Network",
|
||||
"format" : "guint8",
|
||||
"public-format" : "QmiNasNetworkType" },
|
||||
{ "name" : "Radio Interfaces",
|
||||
"format" : "array",
|
||||
"array-element" : { "format" : "gint8",
|
||||
"public-format" : "QmiNasRadioInterface" } } ] },
|
||||
{ "name" : "Roaming Indicator",
|
||||
"id" : "0x10",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "guint8",
|
||||
"public-format" : "QmiNasRoamingIndicatorStatus" },
|
||||
{ "name" : "Data Service Capability",
|
||||
"id" : "0x11",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "array",
|
||||
"array-element" : { "format" : "guint8",
|
||||
"public-format" : "QmiNasDataCapability" } },
|
||||
{ "name" : "Current PLMN",
|
||||
"id" : "0x12",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "sequence",
|
||||
"contents" : [ { "name" : "MCC",
|
||||
"format" : "guint16" },
|
||||
{ "name" : "MNC",
|
||||
"format" : "guint16" },
|
||||
{ "name" : "Description",
|
||||
"format" : "string" } ] },
|
||||
{ "name" : "CDMA System ID",
|
||||
"id" : "0x13",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "sequence",
|
||||
"contents" : [ { "name" : "SID",
|
||||
"format" : "guint16" },
|
||||
{ "name" : "NID",
|
||||
"format" : "guint16" } ] },
|
||||
{ "name" : "CDMA Base Station Info",
|
||||
"id" : "0x14",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "sequence",
|
||||
"contents" : [ { "name" : "Base Station ID",
|
||||
"format" : "guint16" },
|
||||
{ "name" : "Base Station Latitude",
|
||||
"format" : "gint32" },
|
||||
{ "name" : "Base Station Longitude",
|
||||
"format" : "gint32" } ] },
|
||||
{ "name" : "Roaming Indicator List",
|
||||
"id" : "0x15",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "array",
|
||||
"array-element" : { "name" : "Element",
|
||||
"format" : "struct",
|
||||
"contents" : [ { "name" : "Radio Interface",
|
||||
"format" : "guint8",
|
||||
"public-format" : "QmiNasRadioInterface" },
|
||||
{ "name" : "Roaming Indicator",
|
||||
"format" : "guint8",
|
||||
"public-format" : "QmiNasRoamingIndicatorStatus" } ] } },
|
||||
{ "name" : "Default Roaming Indicator",
|
||||
"id" : "0x16",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "guint8",
|
||||
"public-format" : "QmiNasRoamingIndicatorStatus" },
|
||||
{ "name" : "Time Zone 3GPP2",
|
||||
"id" : "0x17",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "sequence",
|
||||
"contents" : [ { "name" : "Leap Seconds",
|
||||
"format" : "guint8" },
|
||||
{ "name" : "Local Time Offset",
|
||||
"format" : "gint8" },
|
||||
{ "name" : "Daylight Saving Time",
|
||||
"format" : "guint8",
|
||||
"public-format" : "gboolean" } ] },
|
||||
{ "name" : "CDMA P Rev",
|
||||
"id" : "0x18",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "guint8" },
|
||||
{ "name" : "Time Zone 3GPP",
|
||||
"id" : "0x1A",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "gint8" },
|
||||
{ "name" : "Daylight Saving Time Adjustment 3GPP",
|
||||
"id" : "0x1B",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "guint8" },
|
||||
{ "name" : "LAC 3GPP",
|
||||
"id" : "0x1C",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "guint16" },
|
||||
{ "name" : "CID 3GPP",
|
||||
"id" : "0x1D",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "guint32" },
|
||||
{ "name" : "Concurrent Service Info 3GPP2",
|
||||
"id" : "0x1E",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "guint8",
|
||||
"public-format" : "gboolean"},
|
||||
{ "name" : "PRL Indicator 3GPP2",
|
||||
"id" : "0x1F",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "guint8",
|
||||
"public-format" : "gboolean"},
|
||||
{ "name" : "Dual Transfer Mode Supported",
|
||||
"id" : "0x20",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "guint8",
|
||||
"public-format" : "gboolean"},
|
||||
{ "name" : "Detailed Service Status",
|
||||
"id" : "0x21",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "sequence",
|
||||
"contents" : [ { "name" : "Status",
|
||||
"format" : "guint8",
|
||||
"public-format" : "QmiNasServiceStatus" },
|
||||
{ "name" : "Capability",
|
||||
"format" : "guint8",
|
||||
"public-format" : "QmiNasNetworkServiceDomain" },
|
||||
{ "name" : "HDR Status",
|
||||
"format" : "guint8",
|
||||
"public-format" : "QmiNasServiceStatus" },
|
||||
{ "name" : "HDR Hybrid",
|
||||
"format" : "guint8",
|
||||
"public-format" : "gboolean" },
|
||||
{ "name" : "Forbidden",
|
||||
"format" : "guint8",
|
||||
"public-format" : "gboolean" } ] },
|
||||
{ "name" : "CDMA System Info",
|
||||
"id" : "0x22",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "sequence",
|
||||
"contents" : [ { "name" : "MCC",
|
||||
"format" : "guint16" },
|
||||
{ "name" : "IMSI_11_12",
|
||||
"format" : "guint8" } ] },
|
||||
{ "name" : "HDR Personality",
|
||||
"id" : "0x23",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "guint8",
|
||||
"public-format" : "QmiNasHdrPersonality"},
|
||||
{ "name" : "LTE TAC",
|
||||
"id" : "0x24",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "guint16" },
|
||||
{ "name" : "Call Barring Status",
|
||||
"id" : "0x25",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "sequence",
|
||||
"contents" : [ { "name" : "CS Status",
|
||||
"format" : "gint32",
|
||||
"public-format" : "QmiNasCallBarringStatus" },
|
||||
{ "name" : "PS Status",
|
||||
"format" : "gint32",
|
||||
"public-format" : "QmiNasCallBarringStatus" } ] },
|
||||
{ "name" : "UMTS Primary Scrambling Code",
|
||||
"id" : "0x26",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "guint16" },
|
||||
{ "name" : "MNC PCS Digit Include Status",
|
||||
"id" : "0x27",
|
||||
"mandatory" : "no",
|
||||
"type" : "TLV",
|
||||
"format" : "sequence",
|
||||
"contents" : [ { "name" : "MCC",
|
||||
"format" : "guint16" },
|
||||
{ "name" : "MNC",
|
||||
"format" : "guint16" },
|
||||
{ "name" : "Includes PCS Digit",
|
||||
"format" : "guint8",
|
||||
"public-format" : "gboolean" } ] } ] },
|
||||
|
||||
// *********************************************************************************
|
||||
{ "name" : "Set Technology Preference",
|
||||
"type" : "Message",
|
||||
|
|
|
@ -216,16 +216,20 @@ typedef enum {
|
|||
|
||||
/**
|
||||
* 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_CS = 1,
|
||||
QMI_NAS_NETWORK_SERVICE_DOMAIN_PS = 2,
|
||||
QMI_NAS_NETWORK_SERVICE_DOMAIN_CS_PS = 3,
|
||||
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;
|
||||
|
||||
/**
|
||||
|
@ -326,6 +330,152 @@ typedef enum {
|
|||
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 */
|
||||
|
||||
|
|
Loading…
Reference in New Issue