iface-modem-cdma: use G_DECLARE|DEFINE_INTERFACE() macros

This commit is contained in:
Aleksander Morgado
2024-05-06 13:45:39 +00:00
parent 92a89efd02
commit 1c919890c6
9 changed files with 153 additions and 180 deletions
+2 -2
View File
@@ -58,7 +58,7 @@ static void iface_modem_3gpp_init (MMIfaceModem3gppInterface
static void iface_modem_3gpp_profile_manager_init (MMIfaceModem3gppProfileManagerInterface *iface);
static void iface_modem_3gpp_ussd_init (MMIfaceModem3gppUssdInterface *iface);
static void iface_modem_voice_init (MMIfaceModemVoiceInterface *iface);
static void iface_modem_cdma_init (MMIfaceModemCdma *iface);
static void iface_modem_cdma_init (MMIfaceModemCdmaInterface *iface);
static void iface_modem_messaging_init (MMIfaceModemMessagingInterface *iface);
static void iface_modem_location_init (MMIfaceModemLocationInterface *iface);
static void iface_modem_oma_init (MMIfaceModemOmaInterface *iface);
@@ -14047,7 +14047,7 @@ iface_modem_voice_init (MMIfaceModemVoiceInterface *iface)
}
static void
iface_modem_cdma_init (MMIfaceModemCdma *iface)
iface_modem_cdma_init (MMIfaceModemCdmaInterface *iface)
{
iface->load_meid = modem_cdma_load_meid;
iface->load_meid_finish = modem_cdma_load_meid_finish;
+3 -3
View File
@@ -65,7 +65,7 @@ static void iface_modem_init (MMIfaceModemInterface
static void iface_modem_3gpp_init (MMIfaceModem3gppInterface *iface);
static void iface_modem_3gpp_profile_manager_init (MMIfaceModem3gppProfileManagerInterface *iface);
static void iface_modem_3gpp_ussd_init (MMIfaceModem3gppUssdInterface *iface);
static void iface_modem_cdma_init (MMIfaceModemCdma *iface);
static void iface_modem_cdma_init (MMIfaceModemCdmaInterface *iface);
static void iface_modem_simple_init (MMIfaceModemSimpleInterface *iface);
static void iface_modem_location_init (MMIfaceModemLocationInterface *iface);
static void iface_modem_messaging_init (MMIfaceModemMessagingInterface *iface);
@@ -9781,7 +9781,7 @@ setup_registration_checks_results_new (MMBroadbandModem *self,
results->skip_qcdm_hdr_step = TRUE;
}
if (MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_detailed_registration_state ==
if (MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_detailed_registration_state ==
modem_cdma_get_detailed_registration_state) {
/* Skip CDMA1x Serving System check if we have Sprint specific
* commands AND if the default detailed registration checker
@@ -13633,7 +13633,7 @@ iface_modem_3gpp_ussd_init (MMIfaceModem3gppUssdInterface *iface)
}
static void
iface_modem_cdma_init (MMIfaceModemCdma *iface)
iface_modem_cdma_init (MMIfaceModemCdmaInterface *iface)
{
/* Initialization steps */
iface->load_esn = modem_cdma_load_esn;
+129 -149
View File
@@ -29,6 +29,8 @@
#define SUBSYSTEM_CDMA1X "cdma1x"
#define SUBSYSTEM_EVDO "evdo"
G_DEFINE_INTERFACE (MMIfaceModemCdma, mm_iface_modem_cdma, MM_TYPE_IFACE_MODEM)
/*****************************************************************************/
/* Private data context */
@@ -125,7 +127,7 @@ handle_activate_ready (MMIfaceModemCdma *self,
priv = get_private (self);
priv->activation_ongoing = FALSE;
if (!MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->activate_finish (self, res,&error))
if (!MM_IFACE_MODEM_CDMA_GET_IFACE (self)->activate_finish (self, res,&error))
mm_dbus_method_invocation_take_error (ctx->invocation, error);
else
mm_gdbus_modem_cdma_complete_activate (ctx->skeleton, ctx->invocation);
@@ -167,8 +169,8 @@ handle_activate_auth_ready (MMBaseModem *self,
}
/* If activating OTA is not implemented, report an error */
if (!MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->activate ||
!MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->activate_finish) {
if (!MM_IFACE_MODEM_CDMA_GET_IFACE (self)->activate ||
!MM_IFACE_MODEM_CDMA_GET_IFACE (self)->activate_finish) {
mm_dbus_method_invocation_return_error_literal (ctx->invocation, MM_CORE_ERROR, MM_CORE_ERROR_UNSUPPORTED,
"Cannot perform OTA activation: operation not supported");
handle_activate_context_free (ctx);
@@ -206,7 +208,7 @@ handle_activate_auth_ready (MMBaseModem *self,
case MM_MODEM_STATE_SEARCHING:
case MM_MODEM_STATE_REGISTERED:
priv->activation_ongoing = TRUE;
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->activate (
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->activate (
MM_IFACE_MODEM_CDMA (self),
ctx->carrier,
(GAsyncReadyCallback)handle_activate_ready,
@@ -291,7 +293,7 @@ handle_activate_manual_ready (MMIfaceModemCdma *self,
priv = get_private (self);
priv->activation_ongoing = FALSE;
if (!MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->activate_manual_finish (self, res,&error))
if (!MM_IFACE_MODEM_CDMA_GET_IFACE (self)->activate_manual_finish (self, res,&error))
mm_dbus_method_invocation_take_error (ctx->invocation, error);
else
mm_gdbus_modem_cdma_complete_activate_manual (ctx->skeleton, ctx->invocation);
@@ -334,8 +336,8 @@ handle_activate_manual_auth_ready (MMBaseModem *self,
}
/* If manual activation is not implemented, report an error */
if (!MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->activate_manual ||
!MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->activate_manual_finish) {
if (!MM_IFACE_MODEM_CDMA_GET_IFACE (self)->activate_manual ||
!MM_IFACE_MODEM_CDMA_GET_IFACE (self)->activate_manual_finish) {
mm_dbus_method_invocation_return_error_literal (ctx->invocation, MM_CORE_ERROR, MM_CORE_ERROR_UNSUPPORTED,
"Cannot perform manual activation: operation not supported");
handle_activate_manual_context_free (ctx);
@@ -372,7 +374,7 @@ handle_activate_manual_auth_ready (MMBaseModem *self,
case MM_MODEM_STATE_SEARCHING:
case MM_MODEM_STATE_REGISTERED:
priv->activation_ongoing = TRUE;
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->activate_manual (
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->activate_manual (
MM_IFACE_MODEM_CDMA (self),
properties,
(GAsyncReadyCallback)handle_activate_manual_ready,
@@ -450,7 +452,7 @@ register_in_network_ready (MMIfaceModemCdma *self,
{
GError *error = NULL;
if (!MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->register_in_network_finish (self, res, &error))
if (!MM_IFACE_MODEM_CDMA_GET_IFACE (self)->register_in_network_finish (self, res, &error))
g_task_return_error (task, error);
else
g_task_return_boolean (task, TRUE);
@@ -467,7 +469,7 @@ mm_iface_modem_cdma_register_in_network (MMIfaceModemCdma *self,
task = g_task_new (self, NULL, callback, user_data);
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->register_in_network (
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->register_in_network (
self,
max_registration_time,
(GAsyncReadyCallback)register_in_network_ready,
@@ -545,7 +547,7 @@ setup_registration_checks_ready (MMIfaceModemCdma *self,
ctx = g_task_get_task_data (task);
if (!MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->setup_registration_checks_finish (
if (!MM_IFACE_MODEM_CDMA_GET_IFACE (self)->setup_registration_checks_finish (
self,
res,
&ctx->skip_qcdm_call_manager_step,
@@ -575,7 +577,7 @@ get_call_manager_state_ready (MMIfaceModemCdma *self,
ctx = g_task_get_task_data (task);
if (!MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_call_manager_state_finish (
if (!MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_call_manager_state_finish (
self,
res,
&ctx->call_manager_system_mode,
@@ -611,7 +613,7 @@ get_hdr_state_ready (MMIfaceModemCdma *self,
ctx = g_task_get_task_data (task);
if (!MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_hdr_state_finish (
if (!MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_hdr_state_finish (
self,
res,
&ctx->hdr_hybrid_mode,
@@ -687,10 +689,11 @@ get_service_status_ready (MMIfaceModemCdma *self,
ctx = g_task_get_task_data (task);
if (!MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_service_status_finish (self,
res,
&has_service,
&error)) {
if (!MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_service_status_finish (
self,
res,
&has_service,
&error)) {
mm_obj_warn (self, "could not get service status: %s", error->message);
g_task_return_error (task, error);
g_object_unref (task);
@@ -720,7 +723,7 @@ get_cdma1x_serving_system_ready (MMIfaceModemCdma *self,
/* Note: used for *both* AT and QCDM serving system checks */
if (!MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_cdma1x_serving_system_finish (
if (!MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_cdma1x_serving_system_finish (
self,
res,
&ctx->cdma1x_class,
@@ -786,7 +789,7 @@ get_detailed_registration_state_ready (MMIfaceModemCdma *self,
ctx = g_task_get_task_data (task);
if (!MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_detailed_registration_state_finish (
if (!MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_detailed_registration_state_finish (
self,
res,
&detailed_cdma1x_state,
@@ -824,9 +827,9 @@ registration_check_step (GTask *task)
* to specify which of the next steps will be completely skipped. Useful
* when implementations have a best get_detailed_registration_state()
* so that they just need that to be run. */
if (MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->setup_registration_checks &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->setup_registration_checks_finish) {
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->setup_registration_checks (
if (MM_IFACE_MODEM_CDMA_GET_IFACE (self)->setup_registration_checks &&
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->setup_registration_checks_finish) {
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->setup_registration_checks (
self,
(GAsyncReadyCallback)setup_registration_checks_ready,
task);
@@ -838,10 +841,10 @@ registration_check_step (GTask *task)
case REGISTRATION_CHECK_STEP_QCDM_CALL_MANAGER_STATE:
mm_obj_dbg (self, "starting QCDM-based registration checks...");
if (!ctx->skip_qcdm_call_manager_step &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_call_manager_state &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_call_manager_state_finish) {
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_call_manager_state &&
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_call_manager_state_finish) {
/* Start by trying to get the call manager state. */
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_call_manager_state (
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_call_manager_state (
self,
(GAsyncReadyCallback)get_call_manager_state_ready,
task);
@@ -856,10 +859,10 @@ registration_check_step (GTask *task)
case REGISTRATION_CHECK_STEP_QCDM_HDR_STATE:
if (ctx->evdo_supported &&
!ctx->skip_qcdm_hdr_step &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_hdr_state &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_hdr_state_finish) {
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_hdr_state &&
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_hdr_state_finish) {
/* Get HDR (EVDO) state. */
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_hdr_state (
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_hdr_state (
self,
(GAsyncReadyCallback)get_hdr_state_ready,
task);
@@ -873,9 +876,9 @@ registration_check_step (GTask *task)
/* We only care about SID/NID here; nothing to do with registration
* state.
*/
if (MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_cdma1x_serving_system &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_cdma1x_serving_system_finish) {
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_cdma1x_serving_system (
if (MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_cdma1x_serving_system &&
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_cdma1x_serving_system_finish) {
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_cdma1x_serving_system (
self,
(GAsyncReadyCallback)get_cdma1x_serving_system_ready,
task);
@@ -895,9 +898,9 @@ registration_check_step (GTask *task)
/* If we don't have means to get service status, just assume we do have
* CDMA service and keep on */
if (!ctx->skip_at_cdma_service_status_step &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_service_status &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_service_status_finish) {
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_service_status (
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_service_status &&
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_service_status_finish) {
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_service_status (
self,
(GAsyncReadyCallback)get_service_status_ready,
task);
@@ -919,9 +922,9 @@ registration_check_step (GTask *task)
* themselves; if they do, they'll set these callbacks to NULL..
*/
if (!ctx->skip_at_cdma1x_serving_system_step &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_cdma1x_serving_system &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_cdma1x_serving_system_finish) {
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_cdma1x_serving_system (
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_cdma1x_serving_system &&
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_cdma1x_serving_system_finish) {
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_cdma1x_serving_system (
self,
(GAsyncReadyCallback)get_cdma1x_serving_system_ready,
task);
@@ -941,13 +944,13 @@ registration_check_step (GTask *task)
/* We let classes implementing this interface to look for more detailed
* registration info. */
if (!ctx->skip_detailed_registration_state &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_detailed_registration_state &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_detailed_registration_state_finish) {
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_detailed_registration_state &&
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_detailed_registration_state_finish) {
/* We pass the CDMA1x/EVDO registration states we got up to now.
* If the implementation can't improve the detail, it must either
* return the values it already got as input, or issue an error,
* and we'll assume it couldn't get any better value. */
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_detailed_registration_state (
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_detailed_registration_state (
self,
ctx->cdma1x_state,
ctx->evdo_state,
@@ -987,7 +990,7 @@ custom_run_registration_checks_ready (MMIfaceModemCdma *self,
{
GError *error = NULL;
if (!MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->run_registration_checks_finish (self, res, &error))
if (!MM_IFACE_MODEM_CDMA_GET_IFACE (self)->run_registration_checks_finish (self, res, &error))
g_task_return_error (task, error);
else
g_task_return_boolean (task, TRUE);
@@ -1014,24 +1017,24 @@ mm_iface_modem_cdma_run_registration_checks (MMIfaceModemCdma *self,
cdma1x_supported ? "yes" : "no",
evdo_supported ? "yes" : "no");
if (MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->run_registration_checks &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->run_registration_checks_finish) {
if (MM_IFACE_MODEM_CDMA_GET_IFACE (self)->run_registration_checks &&
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->run_registration_checks_finish) {
/* Plugins implementing full custom registration checks shouldn't implement
* sub-steps of the generic registration check sequence */
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->setup_registration_checks != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->setup_registration_checks_finish != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_call_manager_state != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_call_manager_state_finish != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_hdr_state != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_hdr_state_finish != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_service_status != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_service_status_finish != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_cdma1x_serving_system != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_cdma1x_serving_system_finish != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_detailed_registration_state != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->get_detailed_registration_state_finish != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_IFACE (self)->setup_registration_checks != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_IFACE (self)->setup_registration_checks_finish != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_call_manager_state != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_call_manager_state_finish != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_hdr_state != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_hdr_state_finish != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_service_status != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_service_status_finish != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_cdma1x_serving_system != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_cdma1x_serving_system_finish != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_detailed_registration_state != NULL);
g_warn_if_fail (MM_IFACE_MODEM_CDMA_GET_IFACE (self)->get_detailed_registration_state_finish != NULL);
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->run_registration_checks (
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->run_registration_checks (
self,
cdma1x_supported,
evdo_supported,
@@ -1371,7 +1374,7 @@ disable_unsolicited_events_ready (MMIfaceModemCdma *self,
DisablingContext *ctx;
GError *error = NULL;
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->disable_unsolicited_events_finish (self, res, &error);
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->disable_unsolicited_events_finish (self, res, &error);
if (error) {
mm_obj_dbg (self, "couldn't disable unsolicited events: %s", error->message);
g_error_free (error);
@@ -1391,7 +1394,7 @@ cleanup_unsolicited_events_ready (MMIfaceModemCdma *self,
DisablingContext *ctx;
GError *error = NULL;
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->cleanup_unsolicited_events_finish (self, res, &error);
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->cleanup_unsolicited_events_finish (self, res, &error);
if (error) {
mm_obj_dbg (self, "couldn't cleanup unsolicited events: %s", error->message);
g_error_free (error);
@@ -1423,9 +1426,9 @@ interface_disabling_step (GTask *task)
/* fall through */
case DISABLING_STEP_DISABLE_UNSOLICITED_EVENTS:
if (MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->disable_unsolicited_events &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->disable_unsolicited_events_finish) {
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->disable_unsolicited_events (
if (MM_IFACE_MODEM_CDMA_GET_IFACE (self)->disable_unsolicited_events &&
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->disable_unsolicited_events_finish) {
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->disable_unsolicited_events (
self,
(GAsyncReadyCallback)disable_unsolicited_events_ready,
task);
@@ -1435,9 +1438,9 @@ interface_disabling_step (GTask *task)
/* fall through */
case DISABLING_STEP_CLEANUP_UNSOLICITED_EVENTS:
if (MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->cleanup_unsolicited_events &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->cleanup_unsolicited_events_finish) {
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->cleanup_unsolicited_events (
if (MM_IFACE_MODEM_CDMA_GET_IFACE (self)->cleanup_unsolicited_events &&
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->cleanup_unsolicited_events_finish) {
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->cleanup_unsolicited_events (
self,
(GAsyncReadyCallback)cleanup_unsolicited_events_ready,
task);
@@ -1531,7 +1534,7 @@ setup_unsolicited_events_ready (MMIfaceModemCdma *self,
EnablingContext *ctx;
GError *error = NULL;
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->setup_unsolicited_events_finish (self, res, &error);
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->setup_unsolicited_events_finish (self, res, &error);
if (error) {
/* This error shouldn't be treated as critical */
mm_obj_dbg (self, "setting up unsolicited events failed: %s", error->message);
@@ -1552,7 +1555,7 @@ enable_unsolicited_events_ready (MMIfaceModemCdma *self,
EnablingContext *ctx;
GError *error = NULL;
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->enable_unsolicited_events_finish (self, res, &error);
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->enable_unsolicited_events_finish (self, res, &error);
if (error) {
/* This error shouldn't be treated as critical */
mm_obj_dbg (self, "enabling unsolicited events failed: %s", error->message);
@@ -1586,9 +1589,9 @@ interface_enabling_step (GTask *task)
/* fall through */
case ENABLING_STEP_SETUP_UNSOLICITED_EVENTS:
if (MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->setup_unsolicited_events &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->setup_unsolicited_events_finish) {
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->setup_unsolicited_events (
if (MM_IFACE_MODEM_CDMA_GET_IFACE (self)->setup_unsolicited_events &&
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->setup_unsolicited_events_finish) {
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->setup_unsolicited_events (
self,
(GAsyncReadyCallback)setup_unsolicited_events_ready,
task);
@@ -1598,9 +1601,9 @@ interface_enabling_step (GTask *task)
/* fall through */
case ENABLING_STEP_ENABLE_UNSOLICITED_EVENTS:
if (MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->enable_unsolicited_events &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->enable_unsolicited_events_finish) {
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->enable_unsolicited_events (
if (MM_IFACE_MODEM_CDMA_GET_IFACE (self)->enable_unsolicited_events &&
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->enable_unsolicited_events_finish) {
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->enable_unsolicited_events (
self,
(GAsyncReadyCallback)enable_unsolicited_events_ready,
task);
@@ -1695,7 +1698,7 @@ initialization_context_free (InitializationContext *ctx)
\
ctx = g_task_get_task_data (task); \
\
val = MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->load_##NAME##_finish (self, res, &error); \
val = MM_IFACE_MODEM_CDMA_GET_IFACE (self)->load_##NAME##_finish (self, res, &error); \
mm_gdbus_modem_cdma_set_##NAME (ctx->skeleton, val); \
g_free (val); \
\
@@ -1723,7 +1726,7 @@ load_activation_state_ready (MMIfaceModemCdma *self,
ctx = g_task_get_task_data (task);
state = MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->load_activation_state_finish (self, res, &error);
state = MM_IFACE_MODEM_CDMA_GET_IFACE (self)->load_activation_state_finish (self, res, &error);
mm_gdbus_modem_cdma_set_activation_state (ctx->skeleton, state);
if (error) {
@@ -1761,9 +1764,9 @@ interface_initialization_step (GTask *task)
* lifetime of the modem. Therefore, if we already have it loaded,
* don't try to load it again. */
if (!mm_gdbus_modem_cdma_get_meid (ctx->skeleton) &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->load_meid &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->load_meid_finish) {
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->load_meid (
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->load_meid &&
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->load_meid_finish) {
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->load_meid (
self,
(GAsyncReadyCallback)load_meid_ready,
task);
@@ -1777,9 +1780,9 @@ interface_initialization_step (GTask *task)
* lifetime of the modem. Therefore, if we already have it loaded,
* don't try to load it again. */
if (!mm_gdbus_modem_cdma_get_esn (ctx->skeleton) &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->load_esn &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->load_esn_finish) {
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->load_esn (
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->load_esn &&
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->load_esn_finish) {
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->load_esn (
self,
(GAsyncReadyCallback)load_esn_ready,
task);
@@ -1793,9 +1796,9 @@ interface_initialization_step (GTask *task)
* whole lifetime of the modem. Therefore, if we already have it loaded,
* don't try to load it again. */
if (mm_gdbus_modem_cdma_get_activation_state (ctx->skeleton) == MM_MODEM_CDMA_ACTIVATION_STATE_UNKNOWN &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->load_activation_state &&
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->load_activation_state_finish) {
MM_IFACE_MODEM_CDMA_GET_INTERFACE (self)->load_activation_state (
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->load_activation_state &&
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->load_activation_state_finish) {
MM_IFACE_MODEM_CDMA_GET_IFACE (self)->load_activation_state (
self,
(GAsyncReadyCallback)load_activation_state_ready,
task);
@@ -1910,78 +1913,55 @@ mm_iface_modem_cdma_shutdown (MMIfaceModemCdma *self)
/*****************************************************************************/
static void
iface_modem_cdma_init (gpointer g_iface)
mm_iface_modem_cdma_default_init (MMIfaceModemCdmaInterface *iface)
{
static gboolean initialized = FALSE;
static gsize initialized = 0;
if (initialized)
if (!g_once_init_enter (&initialized))
return;
/* Properties */
g_object_interface_install_property
(g_iface,
g_param_spec_object (MM_IFACE_MODEM_CDMA_DBUS_SKELETON,
"CDMA DBus skeleton",
"DBus skeleton for the CDMA interface",
MM_GDBUS_TYPE_MODEM_CDMA_SKELETON,
g_object_interface_install_property (
iface,
g_param_spec_object (MM_IFACE_MODEM_CDMA_DBUS_SKELETON,
"CDMA DBus skeleton",
"DBus skeleton for the CDMA interface",
MM_GDBUS_TYPE_MODEM_CDMA_SKELETON,
G_PARAM_READWRITE));
g_object_interface_install_property (
iface,
g_param_spec_enum (MM_IFACE_MODEM_CDMA_CDMA1X_REGISTRATION_STATE,
"CDMA1x Registration State",
"Registration state of the modem in the CDMA1x network",
MM_TYPE_MODEM_CDMA_REGISTRATION_STATE,
MM_MODEM_CDMA_REGISTRATION_STATE_UNKNOWN,
G_PARAM_READWRITE));
g_object_interface_install_property (
iface,
g_param_spec_enum (MM_IFACE_MODEM_CDMA_EVDO_REGISTRATION_STATE,
"EV-DO Registration State",
"Registration state of the modem in the EV-DO network",
MM_TYPE_MODEM_CDMA_REGISTRATION_STATE,
MM_MODEM_CDMA_REGISTRATION_STATE_UNKNOWN,
G_PARAM_READWRITE));
g_object_interface_install_property (
iface,
g_param_spec_boolean (MM_IFACE_MODEM_CDMA_CDMA1X_NETWORK_SUPPORTED,
"CDMA1x network supported",
"Whether the modem works in the CDMA1x network",
TRUE,
G_PARAM_READWRITE));
g_object_interface_install_property
(g_iface,
g_param_spec_enum (MM_IFACE_MODEM_CDMA_CDMA1X_REGISTRATION_STATE,
"CDMA1x Registration State",
"Registration state of the modem in the CDMA1x network",
MM_TYPE_MODEM_CDMA_REGISTRATION_STATE,
MM_MODEM_CDMA_REGISTRATION_STATE_UNKNOWN,
G_PARAM_READWRITE));
g_object_interface_install_property (
iface,
g_param_spec_boolean (MM_IFACE_MODEM_CDMA_EVDO_NETWORK_SUPPORTED,
"EV-DO network supported",
"Whether the modem works in the EV-DO network",
TRUE,
G_PARAM_READWRITE));
g_object_interface_install_property
(g_iface,
g_param_spec_enum (MM_IFACE_MODEM_CDMA_EVDO_REGISTRATION_STATE,
"EV-DO Registration State",
"Registration state of the modem in the EV-DO network",
MM_TYPE_MODEM_CDMA_REGISTRATION_STATE,
MM_MODEM_CDMA_REGISTRATION_STATE_UNKNOWN,
G_PARAM_READWRITE));
g_object_interface_install_property
(g_iface,
g_param_spec_boolean (MM_IFACE_MODEM_CDMA_CDMA1X_NETWORK_SUPPORTED,
"CDMA1x network supported",
"Whether the modem works in the CDMA1x network",
TRUE,
G_PARAM_READWRITE));
g_object_interface_install_property
(g_iface,
g_param_spec_boolean (MM_IFACE_MODEM_CDMA_EVDO_NETWORK_SUPPORTED,
"EV-DO network supported",
"Whether the modem works in the EV-DO network",
TRUE,
G_PARAM_READWRITE));
initialized = TRUE;
}
GType
mm_iface_modem_cdma_get_type (void)
{
static GType iface_modem_cdma_type = 0;
if (!G_UNLIKELY (iface_modem_cdma_type)) {
static const GTypeInfo info = {
sizeof (MMIfaceModemCdma), /* class_size */
iface_modem_cdma_init, /* base_init */
NULL, /* base_finalize */
};
iface_modem_cdma_type = g_type_register_static (G_TYPE_INTERFACE,
"MMIfaceModemCdma",
&info,
0);
g_type_interface_add_prerequisite (iface_modem_cdma_type, MM_TYPE_IFACE_MODEM);
}
return iface_modem_cdma_type;
g_once_init_leave (&initialized, 1);
}
+4 -11
View File
@@ -22,12 +22,10 @@
#define _LIBMM_INSIDE_MM
#include <libmm-glib.h>
#include "mm-port-serial-at.h"
#include "mm-iface-modem.h"
#define MM_TYPE_IFACE_MODEM_CDMA (mm_iface_modem_cdma_get_type ())
#define MM_IFACE_MODEM_CDMA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MM_TYPE_IFACE_MODEM_CDMA, MMIfaceModemCdma))
#define MM_IS_IFACE_MODEM_CDMA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MM_TYPE_IFACE_MODEM_CDMA))
#define MM_IFACE_MODEM_CDMA_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), MM_TYPE_IFACE_MODEM_CDMA, MMIfaceModemCdma))
#define MM_TYPE_IFACE_MODEM_CDMA mm_iface_modem_cdma_get_type ()
G_DECLARE_INTERFACE (MMIfaceModemCdma, mm_iface_modem_cdma, MM, IFACE_MODEM_CDMA, MMIfaceModem)
#define MM_IFACE_MODEM_CDMA_DBUS_SKELETON "iface-modem-cdma-dbus-skeleton"
#define MM_IFACE_MODEM_CDMA_CDMA1X_REGISTRATION_STATE "iface-modem-cdma-cdma1x-registration-state"
@@ -47,9 +45,7 @@
#define MM_IFACE_MODEM_CDMA_ALL_CDMA1X_ACCESS_TECHNOLOGIES_MASK \
(MM_MODEM_ACCESS_TECHNOLOGY_1XRTT)
typedef struct _MMIfaceModemCdma MMIfaceModemCdma;
struct _MMIfaceModemCdma {
struct _MMIfaceModemCdmaInterface {
GTypeInterface g_iface;
/* Loading of the MEID property */
@@ -228,9 +224,6 @@ struct _MMIfaceModemCdma {
GError **error);
};
GType mm_iface_modem_cdma_get_type (void);
G_DEFINE_AUTOPTR_CLEANUP_FUNC (MMIfaceModemCdma, g_object_unref)
/* Initialize CDMA interface (async) */
void mm_iface_modem_cdma_initialize (MMIfaceModemCdma *self,
GCancellable *cancellable,
@@ -33,8 +33,8 @@
#include "mm-iface-modem.h"
#include "mm-iface-modem-cdma.h"
static void iface_modem_init (MMIfaceModemInterface *iface);
static void iface_modem_cdma_init (MMIfaceModemCdma *iface);
static void iface_modem_init (MMIfaceModemInterface *iface);
static void iface_modem_cdma_init (MMIfaceModemCdmaInterface *iface);
G_DEFINE_TYPE_EXTENDED (MMBroadbandModemAnydata, mm_broadband_modem_anydata, MM_TYPE_BROADBAND_MODEM, 0,
G_IMPLEMENT_INTERFACE (MM_TYPE_IFACE_MODEM, iface_modem_init)
@@ -340,7 +340,7 @@ iface_modem_init (MMIfaceModemInterface *iface)
}
static void
iface_modem_cdma_init (MMIfaceModemCdma *iface)
iface_modem_cdma_init (MMIfaceModemCdmaInterface *iface)
{
iface->get_cdma1x_serving_system = NULL;
iface->get_cdma1x_serving_system_finish = NULL;
@@ -54,7 +54,7 @@ static void iface_modem_init (MMIfaceModemInterface *iface);
static void iface_modem_3gpp_init (MMIfaceModem3gppInterface *iface);
static void iface_modem_3gpp_ussd_init (MMIfaceModem3gppUssdInterface *iface);
static void iface_modem_location_init (MMIfaceModemLocationInterface *iface);
static void iface_modem_cdma_init (MMIfaceModemCdma *iface);
static void iface_modem_cdma_init (MMIfaceModemCdmaInterface *iface);
static void iface_modem_time_init (MMIfaceModemTimeInterface *iface);
static void iface_modem_voice_init (MMIfaceModemVoiceInterface *iface);
static void iface_modem_signal_init (MMIfaceModemSignalInterface *iface);
@@ -62,7 +62,7 @@ static void iface_modem_signal_init (MMIfaceModemSignalInterface *iface);
static MMIfaceModemInterface *iface_modem_parent;
static MMIfaceModem3gppInterface *iface_modem_3gpp_parent;
static MMIfaceModemLocationInterface *iface_modem_location_parent;
static MMIfaceModemCdma *iface_modem_cdma_parent;
static MMIfaceModemCdmaInterface *iface_modem_cdma_parent;
static MMIfaceModemVoiceInterface *iface_modem_voice_parent;
G_DEFINE_TYPE_EXTENDED (MMBroadbandModemHuawei, mm_broadband_modem_huawei, MM_TYPE_BROADBAND_MODEM, 0,
@@ -5046,7 +5046,7 @@ iface_modem_3gpp_ussd_init (MMIfaceModem3gppUssdInterface *iface)
}
static void
iface_modem_cdma_init (MMIfaceModemCdma *iface)
iface_modem_cdma_init (MMIfaceModemCdmaInterface *iface)
{
iface_modem_cdma_parent = g_type_interface_peek_parent (iface);
@@ -40,7 +40,7 @@
static void iface_modem_init (MMIfaceModemInterface *iface);
static void iface_modem_messaging_init (MMIfaceModemMessagingInterface *iface);
static void iface_modem_cdma_init (MMIfaceModemCdma *iface);
static void iface_modem_cdma_init (MMIfaceModemCdmaInterface *iface);
static void iface_modem_time_init (MMIfaceModemTimeInterface *iface);
static MMIfaceModemInterface *iface_modem_parent;
@@ -1584,7 +1584,7 @@ iface_modem_messaging_init (MMIfaceModemMessagingInterface *iface)
}
static void
iface_modem_cdma_init (MMIfaceModemCdma *iface)
iface_modem_cdma_init (MMIfaceModemCdmaInterface *iface)
{
iface->get_detailed_registration_state = modem_cdma_get_detailed_registration_state;
iface->get_detailed_registration_state_finish = modem_cdma_get_detailed_registration_state_finish;
@@ -38,11 +38,11 @@
#include "mm-broadband-bearer-sierra.h"
static void iface_modem_init (MMIfaceModemInterface *iface);
static void iface_modem_cdma_init (MMIfaceModemCdma *iface);
static void iface_modem_cdma_init (MMIfaceModemCdmaInterface *iface);
static void iface_modem_time_init (MMIfaceModemTimeInterface *iface);
static MMIfaceModemInterface *iface_modem_parent;
static MMIfaceModemCdma *iface_modem_cdma_parent;
static MMIfaceModemInterface *iface_modem_parent;
static MMIfaceModemCdmaInterface *iface_modem_cdma_parent;
G_DEFINE_TYPE_EXTENDED (MMBroadbandModemSierra, mm_broadband_modem_sierra, MM_TYPE_BROADBAND_MODEM, 0,
G_IMPLEMENT_INTERFACE (MM_TYPE_IFACE_MODEM, iface_modem_init)
@@ -1904,7 +1904,7 @@ iface_modem_init (MMIfaceModemInterface *iface)
}
static void
iface_modem_cdma_init (MMIfaceModemCdma *iface)
iface_modem_cdma_init (MMIfaceModemCdmaInterface *iface)
{
iface_modem_cdma_parent = g_type_interface_peek_parent (iface);
+3 -3
View File
@@ -32,9 +32,9 @@
#include "mm-iface-modem-cdma.h"
#include "mm-iface-modem.h"
static void iface_modem_cdma_init (MMIfaceModemCdma *iface);
static void iface_modem_cdma_init (MMIfaceModemCdmaInterface *iface);
static MMIfaceModemCdma *iface_modem_cdma_parent;
static MMIfaceModemCdmaInterface *iface_modem_cdma_parent;
G_DEFINE_TYPE_EXTENDED (MMBroadbandModemVia, mm_broadband_modem_via, MM_TYPE_BROADBAND_MODEM, 0,
G_IMPLEMENT_INTERFACE (MM_TYPE_IFACE_MODEM_CDMA, iface_modem_cdma_init))
@@ -518,7 +518,7 @@ finalize (GObject *object)
}
static void
iface_modem_cdma_init (MMIfaceModemCdma *iface)
iface_modem_cdma_init (MMIfaceModemCdmaInterface *iface)
{
iface_modem_cdma_parent = g_type_interface_peek_parent (iface);