static MMBaseModem * create_modem (MMPlugin *self, const gchar *sysfs_path, const gchar **drivers, guint16 vendor, guint16 product, GList *probes, GError **error) { propagate_port_mode_results (probes); #if defined WITH_QMI if (mm_port_probe_list_has_qmi_port (probes)) { mm_dbg ("QMI-powered Huawei modem found..."); return MM_BASE_MODEM (mm_broadband_modem_qmi_new (sysfs_path, drivers, mm_plugin_get_name (self), vendor, product)); } #endif #if defined WITH_MBIM if (mm_port_probe_list_has_mbim_port (probes)) { mm_dbg ("MBIM-powered Huawei modem found..."); return MM_BASE_MODEM (mm_broadband_modem_mbim_new (sysfs_path, drivers, mm_plugin_get_name (self), vendor, product)); } #endif return MM_BASE_MODEM (mm_broadband_modem_huawei_new (sysfs_path, drivers, mm_plugin_get_name (self), vendor, product)); }
static MMBaseModem * create_modem (MMPlugin *self, const gchar *sysfs_path, const gchar **drivers, guint16 vendor, guint16 product, GList *probes, GError **error) { /* Note: at this point we don't make any difference between different * Dell-branded QMI or MBIM modems; they may come from Novatel, Ericsson or * Sierra. */ #if defined WITH_QMI if (mm_port_probe_list_has_qmi_port (probes)) { mm_dbg ("QMI-powered Dell-branded modem found..."); return MM_BASE_MODEM (mm_broadband_modem_qmi_new (sysfs_path, drivers, mm_plugin_get_name (self), vendor, product)); } #endif #if defined WITH_MBIM if (mm_port_probe_list_has_mbim_port (probes)) { mm_dbg ("MBIM-powered Dell-branded modem found..."); return MM_BASE_MODEM (mm_broadband_modem_mbim_new (sysfs_path, drivers, mm_plugin_get_name (self), vendor, product)); } #endif if (port_probe_list_has_manufacturer_port (probes, DELL_MANUFACTURER_NOVATEL)) { mm_dbg ("Novatel-powered Dell-branded modem found..."); return MM_BASE_MODEM (mm_broadband_modem_novatel_new (sysfs_path, drivers, mm_plugin_get_name (self), vendor, product)); } if (port_probe_list_has_manufacturer_port (probes, DELL_MANUFACTURER_SIERRA)) { mm_dbg ("Sierra-powered Dell-branded modem found..."); return MM_BASE_MODEM (mm_broadband_modem_sierra_new (sysfs_path, drivers, mm_plugin_get_name (self), vendor, product)); } if (port_probe_list_has_manufacturer_port (probes, DELL_MANUFACTURER_TELIT)) { mm_dbg ("Telit-powered Dell-branded modem found..."); return MM_BASE_MODEM (mm_broadband_modem_telit_new (sysfs_path, drivers, mm_plugin_get_name (self), vendor, product)); } mm_dbg ("Dell-branded generic modem found..."); return MM_BASE_MODEM (mm_broadband_modem_new (sysfs_path, drivers, mm_plugin_get_name (self), vendor, product)); }