icera: implement 3GPP unsolicited messages enabling/disabling
This commit is contained in:
@@ -426,6 +426,56 @@ mm_iface_icera_modem_load_access_technologies (MMIfaceModem *self,
|
|||||||
result);
|
result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/* Disable unsolicited events (3GPP interface) */
|
||||||
|
|
||||||
|
gboolean
|
||||||
|
mm_iface_icera_modem_3gpp_disable_unsolicited_events_finish (MMIfaceModem3gpp *self,
|
||||||
|
GAsyncResult *res,
|
||||||
|
GError **error)
|
||||||
|
{
|
||||||
|
return !!mm_base_modem_at_command_finish (MM_BASE_MODEM (self), res, error);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
mm_iface_icera_modem_3gpp_disable_unsolicited_events (MMIfaceModem3gpp *self,
|
||||||
|
GAsyncReadyCallback callback,
|
||||||
|
gpointer user_data)
|
||||||
|
{
|
||||||
|
mm_base_modem_at_command (
|
||||||
|
MM_BASE_MODEM (self),
|
||||||
|
"%NWSTATE=0",
|
||||||
|
3,
|
||||||
|
FALSE,
|
||||||
|
callback,
|
||||||
|
user_data);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/* Enable unsolicited events (3GPP interface) */
|
||||||
|
|
||||||
|
gboolean
|
||||||
|
mm_iface_icera_modem_3gpp_enable_unsolicited_events_finish (MMIfaceModem3gpp *self,
|
||||||
|
GAsyncResult *res,
|
||||||
|
GError **error)
|
||||||
|
{
|
||||||
|
return !!mm_base_modem_at_command_finish (MM_BASE_MODEM (self), res, error);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
mm_iface_icera_modem_3gpp_enable_unsolicited_events (MMIfaceModem3gpp *self,
|
||||||
|
GAsyncReadyCallback callback,
|
||||||
|
gpointer user_data)
|
||||||
|
{
|
||||||
|
mm_base_modem_at_command (
|
||||||
|
MM_BASE_MODEM (self),
|
||||||
|
"%NWSTATE=1",
|
||||||
|
3,
|
||||||
|
FALSE,
|
||||||
|
callback,
|
||||||
|
user_data);
|
||||||
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@@ -450,7 +500,7 @@ mm_iface_icera_get_type (void)
|
|||||||
&info,
|
&info,
|
||||||
0);
|
0);
|
||||||
|
|
||||||
g_type_interface_add_prerequisite (iface_icera_type, MM_TYPE_IFACE_MODEM);
|
g_type_interface_add_prerequisite (iface_icera_type, MM_TYPE_BROADBAND_MODEM);
|
||||||
}
|
}
|
||||||
|
|
||||||
return iface_icera_type;
|
return iface_icera_type;
|
||||||
|
@@ -18,6 +18,7 @@
|
|||||||
#define MM_IFACE_ICERA_H
|
#define MM_IFACE_ICERA_H
|
||||||
|
|
||||||
#include "mm-iface-modem.h"
|
#include "mm-iface-modem.h"
|
||||||
|
#include "mm-iface-modem-3gpp.h"
|
||||||
#include "mm-broadband-modem.h"
|
#include "mm-broadband-modem.h"
|
||||||
|
|
||||||
#define MM_TYPE_IFACE_ICERA (mm_iface_icera_get_type ())
|
#define MM_TYPE_IFACE_ICERA (mm_iface_icera_get_type ())
|
||||||
@@ -66,4 +67,20 @@ gboolean mm_iface_icera_modem_load_access_technologies_finish (MMIfaceModem *sel
|
|||||||
guint *mask,
|
guint *mask,
|
||||||
GError **error);
|
GError **error);
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/* Modem 3GPP interface specific implementations */
|
||||||
|
|
||||||
|
void mm_iface_icera_modem_3gpp_enable_unsolicited_events (MMIfaceModem3gpp *self,
|
||||||
|
GAsyncReadyCallback callback,
|
||||||
|
gpointer user_data);
|
||||||
|
gboolean mm_iface_icera_modem_3gpp_enable_unsolicited_events_finish (MMIfaceModem3gpp *self,
|
||||||
|
GAsyncResult *res,
|
||||||
|
GError **error);
|
||||||
|
void mm_iface_icera_modem_3gpp_disable_unsolicited_events (MMIfaceModem3gpp *self,
|
||||||
|
GAsyncReadyCallback callback,
|
||||||
|
gpointer user_data);
|
||||||
|
gboolean mm_iface_icera_modem_3gpp_disable_unsolicited_events_finish (MMIfaceModem3gpp *self,
|
||||||
|
GAsyncResult *res,
|
||||||
|
GError **error);
|
||||||
|
|
||||||
#endif /* MM_IFACE_ICERA_H */
|
#endif /* MM_IFACE_ICERA_H */
|
||||||
|
Reference in New Issue
Block a user