diff options
-rw-r--r-- | plugins/zte/77-mm-zte-port-types.rules | 3 | ||||
-rw-r--r-- | plugins/zte/mm-plugin-zte.c | 7 |
2 files changed, 10 insertions, 0 deletions
diff --git a/plugins/zte/77-mm-zte-port-types.rules b/plugins/zte/77-mm-zte-port-types.rules index ac008dd7..6fcbbf2f 100644 --- a/plugins/zte/77-mm-zte-port-types.rules +++ b/plugins/zte/77-mm-zte-port-types.rules @@ -183,5 +183,8 @@ ATTRS{idProduct}=="2002", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}= ATTRS{idProduct}=="2003", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1" ATTRS{idProduct}=="2003", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1" +# Icera-based devices that use DHCP, not AT%IPDPADDR +ATTRS{product}=="K3805-z", ENV{ID_MM_ZTE_ICERA_DHCP}="1" + LABEL="mm_zte_port_types_end" diff --git a/plugins/zte/mm-plugin-zte.c b/plugins/zte/mm-plugin-zte.c index 739393c6..241e5b2c 100644 --- a/plugins/zte/mm-plugin-zte.c +++ b/plugins/zte/mm-plugin-zte.c @@ -92,6 +92,13 @@ grab_port (MMPlugin *self, pflags = MM_AT_PORT_FLAG_SECONDARY; } + if (g_udev_device_get_property_as_boolean (port, "ID_MM_ZTE_ICERA_DHCP")) { + mm_dbg ("Icera-based ZTE modem will use DHCP"); + g_object_set (modem, + MM_BROADBAND_MODEM_ICERA_DEFAULT_IP_METHOD, MM_BEARER_IP_METHOD_DHCP, + NULL); + } + return mm_base_modem_grab_port (modem, mm_port_probe_get_port_subsys (probe), mm_port_probe_get_port_name (probe), |