dell: support XMM-based devices

This commit is contained in:
LiuQiFeng
2018-12-10 13:13:53 +01:00
committed by Aleksander Morgado
parent e198ec7f2a
commit 26e269ec70
2 changed files with 46 additions and 11 deletions

View File

@@ -1046,9 +1046,22 @@ libmm_plugin_dell_la_SOURCES += \
$(NULL)
endif
libmm_plugin_dell_la_CPPFLAGS = $(PLUGIN_COMMON_COMPILER_FLAGS) $(NOVATEL_COMMON_COMPILER_FLAGS) $(SIERRA_COMMON_COMPILER_FLAGS) $(TELIT_COMMON_COMPILER_FLAGS) $(MBM_COMMON_COMPILER_FLAGS)
libmm_plugin_dell_la_LDFLAGS = $(PLUGIN_COMMON_LINKER_FLAGS)
libmm_plugin_dell_la_LIBADD = $(NOVATEL_COMMON_LIBADD_FLAGS) $(SIERRA_COMMON_LIBADD_FLAGS) $(TELIT_COMMON_LIBADD_FLAGS) $(MBM_COMMON_LIBADD_FLAGS)
libmm_plugin_dell_la_CPPFLAGS = \
$(PLUGIN_COMMON_COMPILER_FLAGS) \
$(NOVATEL_COMMON_COMPILER_FLAGS) \
$(SIERRA_COMMON_COMPILER_FLAGS) \
$(TELIT_COMMON_COMPILER_FLAGS) \
$(XMM_COMMON_COMPILER_FLAGS) \
$(MBM_COMMON_COMPILER_FLAGS) \
$(NULL)
libmm_plugin_dell_la_LDFLAGS = $(PLUGIN_COMMON_LINKER_FLAGS)
libmm_plugin_dell_la_LIBADD = \
$(NOVATEL_COMMON_LIBADD_FLAGS) \
$(SIERRA_COMMON_LIBADD_FLAGS) \
$(TELIT_COMMON_LIBADD_FLAGS) \
$(XMM_COMMON_LIBADD_FLAGS) \
$(MBM_COMMON_LIBADD_FLAGS) \
$(NULL)
dist_udevrules_DATA += dell/77-mm-dell-port-types.rules

View File

@@ -34,6 +34,7 @@
#include "mm-broadband-modem-sierra.h"
#include "mm-common-sierra.h"
#include "mm-broadband-modem-telit.h"
#include "mm-broadband-modem-xmm.h"
#include "mm-common-telit.h"
#include "mm-log.h"
@@ -43,6 +44,7 @@
#if defined WITH_MBIM
#include "mm-broadband-modem-mbim.h"
#include "mm-broadband-modem-mbim-xmm.h"
#include "mm-broadband-modem-dell-dw5821e.h"
#endif
@@ -405,6 +407,16 @@ create_modem (MMPlugin *self,
vendor,
product));
}
if (mm_port_probe_list_is_xmm (probes)) {
mm_dbg ("MBIM-powered XMM-based modem found...");
return MM_BASE_MODEM (mm_broadband_modem_mbim_xmm_new (uid,
drivers,
mm_plugin_get_name (self),
vendor,
product));
}
mm_dbg ("MBIM-powered Dell-branded modem found...");
return MM_BASE_MODEM (mm_broadband_modem_mbim_new (uid,
drivers,
@@ -441,6 +453,15 @@ create_modem (MMPlugin *self,
product));
}
if (mm_port_probe_list_is_xmm (probes)) {
mm_dbg ("XMM-based modem found...");
return MM_BASE_MODEM (mm_broadband_modem_xmm_new (uid,
drivers,
mm_plugin_get_name (self),
vendor,
product));
}
mm_dbg ("Dell-branded generic modem found...");
return MM_BASE_MODEM (mm_broadband_modem_new (uid,
drivers,
@@ -484,14 +505,15 @@ mm_plugin_create (void)
return MM_PLUGIN (
g_object_new (MM_TYPE_PLUGIN_DELL,
MM_PLUGIN_NAME, "Dell",
MM_PLUGIN_ALLOWED_SUBSYSTEMS, subsystems,
MM_PLUGIN_ALLOWED_VENDOR_IDS, vendors,
MM_PLUGIN_ALLOWED_AT, TRUE,
MM_PLUGIN_CUSTOM_INIT, &custom_init,
MM_PLUGIN_ALLOWED_QCDM, TRUE,
MM_PLUGIN_ALLOWED_QMI, TRUE,
MM_PLUGIN_ALLOWED_MBIM, TRUE,
MM_PLUGIN_NAME, "Dell",
MM_PLUGIN_ALLOWED_SUBSYSTEMS, subsystems,
MM_PLUGIN_ALLOWED_VENDOR_IDS, vendors,
MM_PLUGIN_ALLOWED_AT, TRUE,
MM_PLUGIN_CUSTOM_INIT, &custom_init,
MM_PLUGIN_ALLOWED_QCDM, TRUE,
MM_PLUGIN_ALLOWED_QMI, TRUE,
MM_PLUGIN_ALLOWED_MBIM, TRUE,
MM_PLUGIN_XMM_PROBE, TRUE,
NULL));
}