modem-helpers-qmi: register QMI error translations

We register translations for QMI core and QMI protocol errors. These
translations are a best-effort, and they are not meant to be
exhaustive.

The original error description is included in the translated GError,
so that the details of the issue are not lost.
This commit is contained in:
Aleksander Morgado
2023-10-26 12:35:50 +00:00
parent b54de958ce
commit bfb0658909
4 changed files with 170 additions and 4 deletions
+4
View File
@@ -25,6 +25,7 @@
#if defined WITH_QMI
# include <libqmi-glib.h>
# include "mm-modem-helpers-qmi.h"
#endif
#if defined WITH_MBIM
@@ -594,6 +595,9 @@ normalize_mapped_error (const GError *error)
#if defined WITH_MBIM
mm_register_mbim_errors ();
#endif
#if defined WITH_QMI
mm_register_qmi_errors ();
#endif
#if defined WITH_QMI
if (error->domain == QMI_CORE_ERROR)
+161
View File
@@ -3291,3 +3291,164 @@ mm_error_from_qmi_loc_indication_status (QmiLocIndicationStatus status,
return FALSE;
}
}
/*****************************************************************************/
void
mm_register_qmi_errors (void)
{
static gsize qmi_errors_registered = 0;
if (!g_once_init_enter (&qmi_errors_registered))
return;
/* QMI core errors */
mm_register_error_mapping (QMI_CORE_ERROR, QMI_CORE_ERROR_FAILED, MM_CORE_ERROR, MM_CORE_ERROR_FAILED);
mm_register_error_mapping (QMI_CORE_ERROR, QMI_CORE_ERROR_WRONG_STATE, MM_CORE_ERROR, MM_CORE_ERROR_WRONG_STATE);
mm_register_error_mapping (QMI_CORE_ERROR, QMI_CORE_ERROR_TIMEOUT, MM_CORE_ERROR, MM_CORE_ERROR_TIMEOUT);
mm_register_error_mapping (QMI_CORE_ERROR, QMI_CORE_ERROR_INVALID_ARGS, MM_CORE_ERROR, MM_CORE_ERROR_INVALID_ARGS);
mm_register_error_mapping (QMI_CORE_ERROR, QMI_CORE_ERROR_INVALID_MESSAGE, MM_CORE_ERROR, MM_CORE_ERROR_INVALID_ARGS);
mm_register_error_mapping (QMI_CORE_ERROR, QMI_CORE_ERROR_TLV_NOT_FOUND, MM_CORE_ERROR, MM_CORE_ERROR_NOT_FOUND);
mm_register_error_mapping (QMI_CORE_ERROR, QMI_CORE_ERROR_TLV_TOO_LONG, MM_CORE_ERROR, MM_CORE_ERROR_INVALID_ARGS);
mm_register_error_mapping (QMI_CORE_ERROR, QMI_CORE_ERROR_UNSUPPORTED, MM_CORE_ERROR, MM_CORE_ERROR_UNSUPPORTED);
mm_register_error_mapping (QMI_CORE_ERROR, QMI_CORE_ERROR_TLV_EMPTY, MM_CORE_ERROR, MM_CORE_ERROR_INVALID_ARGS);
mm_register_error_mapping (QMI_CORE_ERROR, QMI_CORE_ERROR_UNEXPECTED_MESSAGE, MM_CORE_ERROR, MM_CORE_ERROR_WRONG_STATE);
mm_register_error_mapping (QMI_CORE_ERROR, QMI_CORE_ERROR_INVALID_DATA, MM_CORE_ERROR, MM_CORE_ERROR_INVALID_ARGS);
/* QMI protocol errors */
/* This should never happen, because QMI operations won't fail on this type of
* error. But still, just in case, treat it as an error during normalization. */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_NONE, MM_CORE_ERROR, MM_CORE_ERROR_FAILED);
/* This is not really an error in an operation, it is the modem reporting that the
* operation was a no-op. For the purposes of returning errors to the user, we will
* normalize it either way. */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_NO_EFFECT, MM_CORE_ERROR, MM_CORE_ERROR_FAILED);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_MALFORMED_MESSAGE, MM_CORE_ERROR, MM_CORE_ERROR_PROTOCOL);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_NO_MEMORY, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_MEMORY_FULL);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_INTERNAL, MM_CORE_ERROR, MM_CORE_ERROR_FAILED);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_ABORTED, MM_CORE_ERROR, MM_CORE_ERROR_ABORTED);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_CLIENT_IDS_EXHAUSTED, MM_CORE_ERROR, MM_CORE_ERROR_PROTOCOL);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_UNABORTABLE_TRANSACTION, MM_CORE_ERROR, MM_CORE_ERROR_PROTOCOL);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_INVALID_CLIENT_ID, MM_CORE_ERROR, MM_CORE_ERROR_PROTOCOL);
/* QMI_PROTOCOL_ERROR_NO_THRESHOLDS_PROVIDED */
/* QMI_PROTOCOL_ERROR_INVALID_HANDLE */
/* QMI_PROTOCOL_ERROR_INVALID_PROFILE */
/* QMI_PROTOCOL_ERROR_INVALID_PIN_ID */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_INCORRECT_PIN, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_SIM_PIN);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_NO_NETWORK_FOUND, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_NO_NETWORK);
/* QMI_PROTOCOL_ERROR_CALL_FAILED */
/* QMI_PROTOCOL_ERROR_OUT_OF_CALL */
/* QMI_PROTOCOL_ERROR_NOT_PROVISIONED */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_MISSING_ARGUMENT, MM_CORE_ERROR, MM_CORE_ERROR_PROTOCOL);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_ARGUMENT_TOO_LONG, MM_CORE_ERROR, MM_CORE_ERROR_PROTOCOL);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_INVALID_TRANSACTION_ID, MM_CORE_ERROR, MM_CORE_ERROR_PROTOCOL);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_DEVICE_IN_USE, MM_CORE_ERROR, MM_CORE_ERROR_RETRY);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_NETWORK_UNSUPPORTED, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_NOT_SUPPORTED);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_DEVICE_UNSUPPORTED, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_NOT_SUPPORTED);
/* QMI_PROTOCOL_ERROR_NO_FREE_PROFILE */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_INVALID_PDP_TYPE, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_UNKNOWN_PDP_ADDRESS_OR_TYPE);
/* QMI_PROTOCOL_ERROR_INVALID_TECHNOLOGY_PREFERENCE */
/* QMI_PROTOCOL_ERROR_INVALID_PROFILE_TYPE */
/* QMI_PROTOCOL_ERROR_INVALID_SERVICE_TYPE */
/* QMI_PROTOCOL_ERROR_INVALID_REGISTER_ACTION */
/* QMI_PROTOCOL_ERROR_INVALID_PS_ATTACH_ACTION */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_AUTHENTICATION_FAILED, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_USER_AUTHENTICATION_FAILED);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_PIN_BLOCKED, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_SIM_PUK);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_PIN_ALWAYS_BLOCKED, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_SIM_FAILURE);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_UIM_UNINITIALIZED, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_SIM_FAILURE);
/* QMI_PROTOCOL_ERROR_MAXIMUM_QOS_REQUESTS_IN_USE */
/* QMI_PROTOCOL_ERROR_INCORRECT_FLOW_FILTER */
/* QMI_PROTOCOL_ERROR_NETWORK_QOS_UNAWARE */
/* QMI_PROTOCOL_ERROR_INVALID_QOS_ID */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_REQUESTED_NUMBER_UNSUPPORTED, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_NOT_SUPPORTED);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_INTERFACE_NOT_FOUND, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_NOT_FOUND);
/* QMI_PROTOCOL_ERROR_FLOW_SUSPENDED */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_INVALID_DATA_FORMAT, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_PHONE_FAILURE);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_GENERAL_ERROR, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_PHONE_FAILURE);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_UNKNOWN_ERROR, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_UNKNOWN);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_INVALID_ARGUMENT, MM_CORE_ERROR, MM_CORE_ERROR_INVALID_ARGS);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_INVALID_INDEX, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_INVALID_INDEX);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_NO_ENTRY, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_NOT_FOUND);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_DEVICE_STORAGE_FULL, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_MEMORY_FULL);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_DEVICE_NOT_READY, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_PHONE_FAILURE);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_NETWORK_NOT_READY, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_NO_NETWORK);
/* QMI_PROTOCOL_ERROR_WMS_CAUSE_CODE */
/* QMI_PROTOCOL_ERROR_WMS_MESSAGE_NOT_SENT */
/* QMI_PROTOCOL_ERROR_WMS_MESSAGE_DELIVERY_FAILURE */
/* QMI_PROTOCOL_ERROR_WMS_INVALID_MESSAGE_ID */
/* QMI_PROTOCOL_ERROR_WMS_ENCODING */
/* QMI_PROTOCOL_ERROR_AUTHENTICATION_LOCK */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_INVALID_TRANSITION, MM_CORE_ERROR, MM_CORE_ERROR_WRONG_STATE);
/* QMI_PROTOCOL_ERROR_NOT_MCAST_INTERFACE */
/* QMI_PROTOCOL_ERROR_MAXIMUM_MCAST_REQUESTS_IN_USE */
/* QMI_PROTOCOL_ERROR_INVALID_MCAST_HANDLE */
/* QMI_PROTOCOL_ERROR_INVALID_IP_FAMILY_PREFERENCE */
/* QMI_PROTOCOL_ERROR_SESSION_INACTIVE */
/* QMI_PROTOCOL_ERROR_SESSION_INVALID */
/* QMI_PROTOCOL_ERROR_SESSION_OWNERSHIP */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_INSUFFICIENT_RESOURCES, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_INSUFFICIENT_RESOURCES);
/* QMI_PROTOCOL_ERROR_DISABLED */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_INVALID_OPERATION, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_NOT_SUPPORTED);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_INVALID_QMI_COMMAND, MM_CORE_ERROR, MM_CORE_ERROR_PROTOCOL);
/* QMI_PROTOCOL_ERROR_WMS_T_PDU_TYPE */
/* QMI_PROTOCOL_ERROR_WMS_SMSC_ADDRESS */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_INFORMATION_UNAVAILABLE, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_INVALID_MANDATORY_INFORMATION);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_SEGMENT_TOO_LONG, MM_CORE_ERROR, MM_CORE_ERROR_PROTOCOL);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_SEGMENT_ORDER, MM_CORE_ERROR, MM_CORE_ERROR_PROTOCOL);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_BUNDLING_NOT_SUPPORTED, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_NOT_SUPPORTED);
/* QMI_PROTOCOL_ERROR_OPERATION_PARTIAL_FAILURE */
/* QMI_PROTOCOL_ERROR_POLICY_MISMATCH */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_SIM_FILE_NOT_FOUND, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_NOT_FOUND);
/* QMI_PROTOCOL_ERROR_EXTENDED_INTERNAL */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_ACCESS_DENIED, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_NOT_ALLOWED);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_HARDWARE_RESTRICTED, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_NOT_ALLOWED);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_ACK_NOT_SENT, MM_CORE_ERROR, MM_CORE_ERROR_WRONG_STATE);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_INJECT_TIMEOUT, MM_CORE_ERROR, MM_CORE_ERROR_TIMEOUT);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_INCOMPATIBLE_STATE, MM_CORE_ERROR, MM_CORE_ERROR_WRONG_STATE);
/* QMI_PROTOCOL_ERROR_FDN_RESTRICT */
/* QMI_PROTOCOL_ERROR_SUPS_FAILURE_CASE */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_NO_RADIO, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_NOT_ALLOWED);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_NOT_SUPPORTED, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_NOT_SUPPORTED);
/* QMI_PROTOCOL_ERROR_NO_SUBSCRIPTION */
/* QMI_PROTOCOL_ERROR_CARD_CALL_CONTROL_FAILED */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_NETWORK_ABORTED, MM_CORE_ERROR, MM_CORE_ERROR_ABORTED);
/* QMI_PROTOCOL_ERROR_MSG_BLOCKED */
/* QMI_PROTOCOL_ERROR_INVALID_SESSION_TYPE */
/* QMI_PROTOCOL_ERROR_INVALID_PB_TYPE */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_NO_SIM, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_SIM_NOT_INSERTED);
/* QMI_PROTOCOL_ERROR_PB_NOT_READY */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_PIN_RESTRICTION, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_SIM_PIN);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_PIN2_RESTRICTION, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_SIM_PIN2);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_PUK_RESTRICTION, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_SIM_PUK);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_PUK2_RESTRICTION, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_SIM_PUK2);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_PB_ACCESS_RESTRICTED, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_NOT_ALLOWED);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_PB_DELETE_IN_PROGRESS, MM_CORE_ERROR, MM_CORE_ERROR_IN_PROGRESS);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_PB_TEXT_TOO_LONG, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_TEXT_TOO_LONG);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_PB_NUMBER_TOO_LONG, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_DIAL_STRING_TOO_LONG);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_PB_HIDDEN_KEY_RESTRICTION, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_NOT_ALLOWED);
/* QMI_PROTOCOL_ERROR_PB_NOT_AVAILABLE */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_DEVICE_MEMORY_ERROR, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_MEMORY_FAILURE);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_NO_PERMISSION, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_NOT_ALLOWED);
/* QMI_PROTOCOL_ERROR_TOO_SOON */
/* QMI_PROTOCOL_ERROR_TIME_NOT_ACQUIRED */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_OPERATION_IN_PROGRESS, MM_CORE_ERROR, MM_CORE_ERROR_IN_PROGRESS);
/* QMI_PROTOCOL_ERROR_FW_WRITE_FAILED */
/* QMI_PROTOCOL_ERROR_FW_INFO_READ_FAILED */
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_FW_FILE_NOT_FOUND, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_NOT_FOUND);
mm_register_error_mapping (QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_FW_DIR_NOT_FOUND, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_NOT_FOUND);
/* QMI_PROTOCOL_ERROR_FW_ALREADY_ACTIVATED */
/* QMI_PROTOCOL_ERROR_FW_CANNOT_GENERIC_IMAGE */
/* QMI_PROTOCOL_ERROR_FW_FILE_OPEN_FAILED */
/* QMI_PROTOCOL_ERROR_FW_UPDATE_DISCONTINUOUS_FRAME */
/* QMI_PROTOCOL_ERROR_FW_UPDATE_FAILED */
/* QMI_PROTOCOL_ERROR_CAT_EVENT_REGISTRATION_FAILED */
/* QMI_PROTOCOL_ERROR_CAT_INVALID_TERMINAL_RESPONSE */
/* QMI_PROTOCOL_ERROR_CAT_INVALID_ENVELOPE_COMMAND */
/* QMI_PROTOCOL_ERROR_CAT_ENVELOPE_COMMAND_BUSY */
/* QMI_PROTOCOL_ERROR_CAT_ENVELOPE_COMMAND_FAILED */
g_once_init_leave (&qmi_errors_registered, 1);
}
+1
View File
@@ -255,6 +255,7 @@ gboolean qmi_personalization_feature_from_mm_modem_3gpp_facility (MMModem3gppFac
/*****************************************************************************/
/* MM error translations */
void mm_register_qmi_errors (void);
GError *mm_error_from_wds_verbose_call_end_reason_3gpp (QmiWdsVerboseCallEndReason3gpp vcer_3gpp,
gpointer log_object);
gboolean mm_error_from_qmi_loc_indication_status (QmiLocIndicationStatus status,
+4 -4
View File
@@ -192,11 +192,11 @@ test_error_helpers_normalize (void)
normalize_and_assert_mm_error (TRUE, MM_CDMA_ACTIVATION_ERROR, 123456, "Unknown CDMA activation error");
#if defined WITH_QMI
normalize_and_assert_mm_error (TRUE, QMI_CORE_ERROR, QMI_CORE_ERROR_TIMEOUT, "Known QMI core error");
normalize_and_assert_mm_error (TRUE, QMI_CORE_ERROR, 123456, "Unknown QMI core error");
normalize_and_assert_mm_error (FALSE, QMI_CORE_ERROR, QMI_CORE_ERROR_TIMEOUT, "Known QMI core error");
normalize_and_assert_mm_error (TRUE, QMI_CORE_ERROR, 123456, "Unknown QMI core error");
normalize_and_assert_mm_error (TRUE, QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_ABORTED, "Known QMI protocol error");
normalize_and_assert_mm_error (TRUE, QMI_PROTOCOL_ERROR, 123456, "Unknown QMI protocol error");
normalize_and_assert_mm_error (FALSE, QMI_PROTOCOL_ERROR, QMI_PROTOCOL_ERROR_ABORTED, "Known QMI protocol error");
normalize_and_assert_mm_error (TRUE, QMI_PROTOCOL_ERROR, 123456, "Unknown QMI protocol error");
#endif
#if defined WITH_MBIM