aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@aleksander.es>2016-09-18 15:43:30 +0200
committerAleksander Morgado <aleksander@aleksander.es>2016-09-18 15:43:30 +0200
commitc7d8ac622a56142325af1e9b51d0cce1f06eaa3d (patch)
tree6713acc93267b3e988c74f761496196c64234b98
parentaa0e1081070b1062c696d31ed3c68e9511733ad1 (diff)
udev: fix tagging per interface number
Commit 7ff57f9808f35d434b638a67b84481271c67c90e introduced a change to try to use ATTRS{bInterfaceNumber} as a common way to match by interface number, but this logic is broken because all the rules that we use to match by interface number (attribute in the interface device) also require matching by idVendor and idProduct (attributes in the physdev device), and udev rules forbid matches from more than one parent device at a time. We could use ATTR{bInterfaceNumber} (instead of ATTRS) to tag the actual USB interface device, but that would require a change in all the plugins to look for the tag not in the TTY device, but in its parent. So, recover the original behavior, where a hidden property is created containing the first bInterfaceNumber found in the list of parent devices, and then run the matches against idVendor and idProduct only if the hidden property is found with the expected value.
-rw-r--r--plugins/cinterion/77-mm-cinterion-port-types.rules3
-rw-r--r--plugins/haier/77-mm-haier-port-types.rules3
-rw-r--r--plugins/longcheer/77-mm-longcheer-port-types.rules168
-rw-r--r--plugins/mbm/77-mm-ericsson-mbm.rules40
-rw-r--r--plugins/mtk/77-mm-mtk-port-types.rules26
-rw-r--r--plugins/nokia/77-mm-nokia-port-types.rules27
-rw-r--r--plugins/simtech/77-mm-simtech-port-types.rules15
-rw-r--r--plugins/telit/77-mm-telit-port-types.rules29
-rw-r--r--plugins/x22x/77-mm-x22x-port-types.rules42
-rw-r--r--plugins/zte/77-mm-zte-port-types.rules245
10 files changed, 307 insertions, 291 deletions
diff --git a/plugins/cinterion/77-mm-cinterion-port-types.rules b/plugins/cinterion/77-mm-cinterion-port-types.rules
index d92e19e5..f43f0b8e 100644
--- a/plugins/cinterion/77-mm-cinterion-port-types.rules
+++ b/plugins/cinterion/77-mm-cinterion-port-types.rules
@@ -5,7 +5,8 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="1e2d", GOTO="mm_cinterion_port_types"
GOTO="mm_cinterion_port_types_end"
LABEL="mm_cinterion_port_types"
+SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
-ATTRS{idVendor}=="1e2d", ATTRS{idProduct}=="0053", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_CINTERION_PORT_TYPE_GPS}="1"
+ATTRS{idVendor}=="1e2d", ATTRS{idProduct}=="0053", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_CINTERION_PORT_TYPE_GPS}="1"
LABEL="mm_cinterion_port_types_end"
diff --git a/plugins/haier/77-mm-haier-port-types.rules b/plugins/haier/77-mm-haier-port-types.rules
index 878bfc91..d095847f 100644
--- a/plugins/haier/77-mm-haier-port-types.rules
+++ b/plugins/haier/77-mm-haier-port-types.rules
@@ -5,8 +5,9 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="201e", GOTO="mm_haier_port_types"
GOTO="mm_haier_port_types_end"
LABEL="mm_haier_port_types"
+SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
# Haier CE81B
-ATTRS{idVendor}=="201e", ATTRS{idProduct}=="10f8", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_HAIER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="201e", ATTRS{idProduct}=="10f8", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_HAIER_PORT_TYPE_MODEM}="1"
LABEL="mm_haier_port_types_end"
diff --git a/plugins/longcheer/77-mm-longcheer-port-types.rules b/plugins/longcheer/77-mm-longcheer-port-types.rules
index 256c8f17..512c3ded 100644
--- a/plugins/longcheer/77-mm-longcheer-port-types.rules
+++ b/plugins/longcheer/77-mm-longcheer-port-types.rules
@@ -18,152 +18,154 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="1bbb", GOTO="mm_tamobile_vendorcheck"
GOTO="mm_longcheer_port_types_end"
LABEL="mm_longcheer_vendorcheck"
+SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="3197", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="3197", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="3197", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="3197", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="3197", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6000", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6000", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6000", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6000", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6000", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6060", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6060", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6060", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6060", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6060", ENV{ID_MM_LONGCHEER_TAGGED}="1"
# Alcatel One Touch X020
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6061", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6061", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6061", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6061", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6061", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7001", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7001", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7001", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7001", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7001", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7001", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7001", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7002", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7002", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7002", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7002", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7002", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7002", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7002", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7002", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7002", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7101", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7101", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7101", ATTRS{bInterfaceNumber}=="05", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7101", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7101", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7101", ENV{.MM_USBIFNUM}=="05", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7101", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7102", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7102", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7102", ATTRS{bInterfaceNumber}=="05", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7102", ATTRS{bInterfaceNumber}=="06", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7102", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7102", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7102", ENV{.MM_USBIFNUM}=="05", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7102", ENV{.MM_USBIFNUM}=="06", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7102", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8000", ATTRS{bInterfaceNumber}=="05", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8000", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8000", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8000", ENV{.MM_USBIFNUM}=="05", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8000", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8000", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8000", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8001", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8001", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8001", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8001", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8001", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8001", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8001", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8002", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8002", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8002", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8002", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8002", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8002", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8002", ENV{ID_MM_LONGCHEER_TAGGED}="1"
# ChinaBird PL68
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9000", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9000", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9000", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9000", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9000", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9001", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9001", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9001", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9001", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9001", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9001", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9001", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9002", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9002", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9002", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9002", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9002", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9002", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9002", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9003", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9003", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9003", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9003", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9003", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9003", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9003", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9003", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9003", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9004", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9004", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9004", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9004", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9004", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9005", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9005", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9005", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9005", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9005", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9010", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9010", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9010", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9010", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9010", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9010", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9010", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9012", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9012", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9012", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9012", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9012", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9012", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9012", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9020", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9020", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9020", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9020", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9020", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9020", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9020", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9022", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9022", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9022", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9022", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9022", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9022", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9022", ENV{ID_MM_LONGCHEER_TAGGED}="1"
# Zoom products
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9602", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9602", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9602", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9602", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9602", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9602", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9602", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9603", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9603", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9603", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9603", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9603", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9603", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9603", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9604", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9604", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9604", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9604", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9604", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9604", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9604", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9605", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9605", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9605", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9605", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9605", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9605", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9605", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9605", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9605", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9606", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9606", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9606", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9606", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9606", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9606", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9606", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9606", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9606", ENV{ID_MM_LONGCHEER_TAGGED}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9607", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9607", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9607", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9607", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9607", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9607", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9607", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9607", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9607", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9607", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9607", ENV{ID_MM_LONGCHEER_TAGGED}="1"
GOTO="mm_longcheer_port_types_end"
LABEL="mm_tamobile_vendorcheck"
+SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
# Alcatel One Touch X060s
-ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ENV{ID_MM_LONGCHEER_TAGGED}="1"
GOTO="mm_longcheer_port_types_end"
diff --git a/plugins/mbm/77-mm-ericsson-mbm.rules b/plugins/mbm/77-mm-ericsson-mbm.rules
index cedd7d3c..63181fd3 100644
--- a/plugins/mbm/77-mm-ericsson-mbm.rules
+++ b/plugins/mbm/77-mm-ericsson-mbm.rules
@@ -9,19 +9,20 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="0930", GOTO="mm_mbm_toshiba_vendorcheck"
GOTO="mm_mbm_end"
LABEL="mm_mbm_ericsson_vendorcheck"
+SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
# Ericsson F3507g
-ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1900", ATTRS{bInterfaceNumber}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
+ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1900", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1900", ENV{ID_MM_ERICSSON_MBM}="1"
-ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1902", ATTRS{bInterfaceNumber}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
+ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1902", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1902", ENV{ID_MM_ERICSSON_MBM}="1"
# Ericsson F3607gw
-ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1904", ATTRS{bInterfaceNumber}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
+ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1904", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1904", ENV{ID_MM_ERICSSON_MBM}="1"
-ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1905", ATTRS{bInterfaceNumber}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
+ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1905", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1905", ENV{ID_MM_ERICSSON_MBM}="1"
-ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1906", ATTRS{bInterfaceNumber}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
+ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1906", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1906", ENV{ID_MM_ERICSSON_MBM}="1"
# Ericsson F3307
@@ -38,9 +39,9 @@ ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1049", ENV{ID_MM_ERICSSON_MBM}="1"
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="190b", ENV{ID_MM_ERICSSON_MBM}="1"
# Ericsson F5521gw
-ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="190d", ATTRS{bInterfaceNumber}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
+ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="190d", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="190d", ENV{ID_MM_ERICSSON_MBM}="1"
-ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1911", ATTRS{bInterfaceNumber}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
+ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1911", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1911", ENV{ID_MM_ERICSSON_MBM}="1"
# Ericsson H5321gw
@@ -62,9 +63,9 @@ ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="191f", ENV{ID_MM_ERICSSON_MBM}="1"
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1921", ENV{ID_MM_ERICSSON_MBM}="1"
# Ericsson H5321gw
-ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1926", ATTRS{bInterfaceNumber}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
+ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1926", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1926", ENV{ID_MM_ERICSSON_MBM}="1"
-ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1927", ATTRS{bInterfaceNumber}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
+ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1927", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1927", ENV{ID_MM_ERICSSON_MBM}="1"
# Ericsson C3304w
@@ -92,6 +93,7 @@ ATTRS{idVendor}=="0fce", ATTRS{idProduct}=="d103", ENV{ID_MM_ERICSSON_MBM}="1"
GOTO="mm_mbm_end"
LABEL="mm_mbm_dell_vendorcheck"
+SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
# Dell 5560
ATTRS{idVendor}=="413c", ATTRS{idProduct}=="818e", ENV{ID_MM_ERICSSON_MBM}="1"
@@ -100,24 +102,25 @@ ATTRS{idVendor}=="413c", ATTRS{idProduct}=="818e", ENV{ID_MM_ERICSSON_MBM}="1"
ATTRS{idVendor}=="413c", ATTRS{idProduct}=="818d", ENV{ID_MM_ERICSSON_MBM}="1"
# Dell 5530 HSDPA
-ATTRS{idVendor}=="413c", ATTRS{idProduct}=="8147", ATTRS{bInterfaceNumber}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
+ATTRS{idVendor}=="413c", ATTRS{idProduct}=="8147", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
ATTRS{idVendor}=="413c", ATTRS{idProduct}=="8147", ENV{ID_MM_ERICSSON_MBM}="1"
# Dell F3607gw
-ATTRS{idVendor}=="413c", ATTRS{idProduct}=="8183", ATTRS{bInterfaceNumber}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
+ATTRS{idVendor}=="413c", ATTRS{idProduct}=="8183", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
ATTRS{idVendor}=="413c", ATTRS{idProduct}=="8183", ENV{ID_MM_ERICSSON_MBM}="1"
-ATTRS{idVendor}=="413c", ATTRS{idProduct}=="8184", ATTRS{bInterfaceNumber}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
+ATTRS{idVendor}=="413c", ATTRS{idProduct}=="8184", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
ATTRS{idVendor}=="413c", ATTRS{idProduct}=="8184", ENV{ID_MM_ERICSSON_MBM}="1"
# Dell F3307
-ATTRS{idVendor}=="413c", ATTRS{idProduct}=="818b", ATTRS{bInterfaceNumber}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
+ATTRS{idVendor}=="413c", ATTRS{idProduct}=="818b", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
ATTRS{idVendor}=="413c", ATTRS{idProduct}=="818b", ENV{ID_MM_ERICSSON_MBM}="1"
-ATTRS{idVendor}=="413c", ATTRS{idProduct}=="818c", ATTRS{bInterfaceNumber}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
+ATTRS{idVendor}=="413c", ATTRS{idProduct}=="818c", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
ATTRS{idVendor}=="413c", ATTRS{idProduct}=="818c", ENV{ID_MM_ERICSSON_MBM}="1"
GOTO="mm_mbm_end"
LABEL="mm_mbm_hp_vendorcheck"
+SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
# HP hs2330 Mobile Broadband Module
ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="271d", ENV{ID_MM_ERICSSON_MBM}="1"
@@ -129,7 +132,7 @@ ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="261d", ENV{ID_MM_ERICSSON_MBM}="1"
ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="3a1d", ENV{ID_MM_ERICSSON_MBM}="1"
# HP hs2350 Mobile Broadband Module
-ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="3d1d", ATTRS{bInterfaceNumber}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
+ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="3d1d", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="3d1d", ENV{ID_MM_ERICSSON_MBM}="1"
# HP lc2000 Mobile Broadband Module
@@ -141,15 +144,16 @@ ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="2f1d", ENV{ID_MM_ERICSSON_MBM}="1"
GOTO="mm_mbm_end"
LABEL="mm_mbm_toshiba_vendorcheck"
+SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
# Toshiba
-ATTRS{idVendor}=="0930", ATTRS{idProduct}=="130b", ATTRS{bInterfaceNumber}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
+ATTRS{idVendor}=="0930", ATTRS{idProduct}=="130b", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
ATTRS{idVendor}=="0930", ATTRS{idProduct}=="130b", ENV{ID_MM_ERICSSON_MBM}="1"
# Toshiba F3607gw
-ATTRS{idVendor}=="0930", ATTRS{idProduct}=="130c", ATTRS{bInterfaceNumber}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
+ATTRS{idVendor}=="0930", ATTRS{idProduct}=="130c", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
ATTRS{idVendor}=="0930", ATTRS{idProduct}=="130c", ENV{ID_MM_ERICSSON_MBM}="1"
-ATTRS{idVendor}=="0930", ATTRS{idProduct}=="1311", ATTRS{bInterfaceNumber}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
+ATTRS{idVendor}=="0930", ATTRS{idProduct}=="1311", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
ATTRS{idVendor}=="0930", ATTRS{idProduct}=="1311", ENV{ID_MM_ERICSSON_MBM}="1"
# Toshiba F3307
diff --git a/plugins/mtk/77-mm-mtk-port-types.rules b/plugins/mtk/77-mm-mtk-port-types.rules
index 4353c669..dd8a067a 100644
--- a/plugins/mtk/77-mm-mtk-port-types.rules
+++ b/plugins/mtk/77-mm-mtk-port-types.rules
@@ -9,25 +9,26 @@ GOTO="mm_mtk_port_types_end"
# MediaTek devices ---------------------------
LABEL="mm_mtk_port_types_vendorcheck"
+SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
-ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a1", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_MTK_MODEM_PORT}="1"
-ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a1", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_MTK_AT_PORT}="1"
+ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a1", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_MTK_MODEM_PORT}="1"
+ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a1", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_MTK_AT_PORT}="1"
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a1", ENV{ID_MM_MTK_TAGGED}="1"
-ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a2", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_MTK_MODEM_PORT}="1"
-ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a2", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_MTK_AT_PORT}="1"
+ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a2", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_MTK_MODEM_PORT}="1"
+ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a2", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_MTK_AT_PORT}="1"
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a2", ENV{ID_MM_MTK_TAGGED}="1"
-ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a4", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_MTK_MODEM_PORT}="1"
-ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a4", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_MTK_AT_PORT}="1"
+ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a4", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_MTK_MODEM_PORT}="1"
+ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a4", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_MTK_AT_PORT}="1"
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a4", ENV{ID_MM_MTK_TAGGED}="1"
-ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a5", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_MTK_MODEM_PORT}="1"
-ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a5", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_MTK_AT_PORT}="1"
+ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a5", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_MTK_MODEM_PORT}="1"
+ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a5", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_MTK_AT_PORT}="1"
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a5", ENV{ID_MM_MTK_TAGGED}="1"
-ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a7", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_MTK_MODEM_PORT}="1"
-ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a7", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_MTK_AT_PORT}="1"
+ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a7", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_MTK_MODEM_PORT}="1"
+ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a7", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_MTK_AT_PORT}="1"
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a7", ENV{ID_MM_MTK_TAGGED}="1"
GOTO="mm_mtk_port_types_end"
@@ -35,6 +36,7 @@ GOTO="mm_mtk_port_types_end"
# D-Link devices ---------------------------
LABEL="mm_dlink_port_types_vendorcheck"
+SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
# D-Link DWM-156 A3
ATTRS{idVendor}=="07d1", ATTRS{idProduct}=="7e11", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_MTK_MODEM_PORT}="1"
@@ -42,8 +44,8 @@ ATTRS{idVendor}=="07d1", ATTRS{idProduct}=="7e11", ENV{.MM_USBIFNUM}=="03", ENV{
ATTRS{idVendor}=="07d1", ATTRS{idProduct}=="7e11", ENV{ID_MM_MTK_TAGGED}="1"
# D-Link DWM-156 A5 (and later?)
-ATTRS{idVendor}=="2001", ATTRS{idProduct}=="7d00", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_MTK_MODEM_PORT}="1"
-ATTRS{idVendor}=="2001", ATTRS{idProduct}=="7d00", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_MTK_AT_PORT}="1"
+ATTRS{idVendor}=="2001", ATTRS{idProduct}=="7d00", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_MTK_MODEM_PORT}="1"
+ATTRS{idVendor}=="2001", ATTRS{idProduct}=="7d00", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_MTK_AT_PORT}="1"
ATTRS{idVendor}=="2001", ATTRS{idProduct}=="7d00", ENV{ID_MM_MTK_TAGGED}="1"
GOTO="mm_mtk_port_types_end"
diff --git a/plugins/nokia/77-mm-nokia-port-types.rules b/plugins/nokia/77-mm-nokia-port-types.rules
index fdb40095..a3e9fdb8 100644
--- a/plugins/nokia/77-mm-nokia-port-types.rules
+++ b/plugins/nokia/77-mm-nokia-port-types.rules
@@ -5,33 +5,34 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="0421", GOTO="mm_nokia_port_types"
GOTO="mm_nokia_port_types_end"
LABEL="mm_nokia_port_types"
+SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
# For Nokia Internet Sticks (CS-xx) the modem/PPP port appears to always be USB interface 1
-ATTRS{idVendor}=="0421", ATTRS{idProduct}=="060D", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="0421", ATTRS{idProduct}=="060D", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="0421", ATTRS{idProduct}=="0611", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="0421", ATTRS{idProduct}=="0611", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="0421", ATTRS{idProduct}=="061A", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="0421", ATTRS{idProduct}=="061A", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="0421", ATTRS{idProduct}=="061B", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="0421", ATTRS{idProduct}=="061B", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="0421", ATTRS{idProduct}=="061F", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="0421", ATTRS{idProduct}=="061F", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="0421", ATTRS{idProduct}=="0619", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="0421", ATTRS{idProduct}=="0619", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="0421", ATTRS{idProduct}=="0620", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="0421", ATTRS{idProduct}=="0620", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="0421", ATTRS{idProduct}=="0623", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="0421", ATTRS{idProduct}=="0623", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="0421", ATTRS{idProduct}=="0624", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="0421", ATTRS{idProduct}=="0624", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="0421", ATTRS{idProduct}=="0625", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="0421", ATTRS{idProduct}=="0625", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="0421", ATTRS{idProduct}=="062A", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="0421", ATTRS{idProduct}=="062A", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="0421", ATTRS{idProduct}=="062E", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="0421", ATTRS{idProduct}=="062E", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="0421", ATTRS{idProduct}=="062F", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="0421", ATTRS{idProduct}=="062F", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
LABEL="mm_nokia_port_types_end"
diff --git a/plugins/simtech/77-mm-simtech-port-types.rules b/plugins/simtech/77-mm-simtech-port-types.rules
index f91b270c..d0a9a6fc 100644
--- a/plugins/simtech/77-mm-simtech-port-types.rules
+++ b/plugins/simtech/77-mm-simtech-port-types.rules
@@ -15,21 +15,22 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="1e0e", GOTO="mm_simtech_port_types"
GOTO="mm_simtech_port_types_end"
LABEL="mm_simtech_port_types"
+SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
# A-LINK 3GU
-ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="cefe", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_SIMTECH_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="cefe", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_SIMTECH_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="cefe", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_SIMTECH_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="cefe", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_SIMTECH_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="cefe", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_SIMTECH_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="cefe", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_SIMTECH_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="cefe", ENV{ID_MM_SIMTECH_TAGGED}="1"
# Prolink PH-300
-ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="9100", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_SIMTECH_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="9100", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_SIMTECH_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="9100", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_SIMTECH_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="9100", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_SIMTECH_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="9100", ENV{ID_MM_SIMTECH_TAGGED}="1"
# SCT UM300
-ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="9200", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_SIMTECH_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="9200", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_SIMTECH_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="9200", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_SIMTECH_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="9200", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_SIMTECH_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="9200", ENV{ID_MM_SIMTECH_TAGGED}="1"
LABEL="mm_simtech_port_types_end"
diff --git a/plugins/telit/77-mm-telit-port-types.rules b/plugins/telit/77-mm-telit-port-types.rules
index 5e667c3e..ecb919d4 100644
--- a/plugins/telit/77-mm-telit-port-types.rules
+++ b/plugins/telit/77-mm-telit-port-types.rules
@@ -5,37 +5,38 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="1bc7", GOTO="mm_telit_port_types"
GOTO="mm_telit_port_types_end"
LABEL="mm_telit_port_types"
+SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
# UC864-E, UC864-E-AUTO, UC864-K, UC864-WD, UC864-WDU
-ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1003", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_TELIT_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1003", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_TELIT_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1003", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_TELIT_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1003", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_TELIT_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1003", ENV{ID_MM_TELIT_TAGGED}="1"
# UC864-G
-ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1004", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_TELIT_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1004", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_TELIT_PORT_TYPE_NMEA}="1"
-ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1004", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_TELIT_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1004", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_TELIT_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1004", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_TELIT_PORT_TYPE_NMEA}="1"
+ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1004", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_TELIT_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1004", ENV{ID_MM_TELIT_TAGGED}="1"
# CC864-DUAL
-ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1005", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_TELIT_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1005", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_TELIT_PORT_TYPE_NMEA}="1"
-ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1005", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_TELIT_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1005", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_TELIT_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1005", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_TELIT_PORT_TYPE_NMEA}="1"
+ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1005", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_TELIT_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1005", ENV{ID_MM_TELIT_TAGGED}="1"
# CC864-SINGLE, CC864-KPS
-ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1006", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_TELIT_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1006", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_TELIT_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1006", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_TELIT_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1006", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_TELIT_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1006", ENV{ID_MM_TELIT_TAGGED}="1"
# DE910-DUAL
-ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1010", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_TELIT_PORT_TYPE_NMEA}="1"
-ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1010", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_TELIT_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1010", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_TELIT_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1010", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_TELIT_PORT_TYPE_NMEA}="1"
+ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1010", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_TELIT_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1010", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_TELIT_PORT_TYPE_MODEM}="1"
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1010", ENV{ID_MM_TELIT_TAGGED}="1"
# CE910-DUAL
-ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1011", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_TELIT_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1011", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_TELIT_PORT_TYPE_MODEM}="1"
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1011", ENV{ID_MM_TELIT_TAGGED}="1"
# HE910, UE910, UL865 (dynamic port identification supported)
diff --git a/plugins/x22x/77-mm-x22x-port-types.rules b/plugins/x22x/77-mm-x22x-port-types.rules
index 34ba3a45..52a7cbcc 100644
--- a/plugins/x22x/77-mm-x22x-port-types.rules
+++ b/plugins/x22x/77-mm-x22x-port-types.rules
@@ -16,27 +16,28 @@ GOTO="mm_x22x_port_types_end"
# Generic JRD devices ---------------------------
LABEL="mm_x22x_generic_vendorcheck"
+SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
# Alcatel X200
-ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_X22X_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_X22X_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ENV{ID_MM_X22X_TAGGED}="1"
-ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0017", ATTRS{bInterfaceNumber}=="05", ENV{ID_MM_X22X_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0017", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0017", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0017", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0017", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0017", ENV{.MM_USBIFNUM}=="05", ENV{ID_MM_X22X_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0017", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0017", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0017", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0017", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0017", ENV{ID_MM_X22X_TAGGED}="1"
# Archos G9
-ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="00B7", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_X22X_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="00B7", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="00B7", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_X22X_PORT_TYPE_NMEA}="1"
-ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="00B7", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_X22X_PORT_TYPE_VOICE}="1"
-ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="00B7", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="00B7", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_X22X_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="00B7", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="00B7", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_X22X_PORT_TYPE_NMEA}="1"
+ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="00B7", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_X22X_PORT_TYPE_VOICE}="1"
+ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="00B7", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="00B7", ENV{ID_MM_X22X_TAGGED}="1"
GOTO="mm_x22x_port_types_end"
@@ -44,14 +45,15 @@ GOTO="mm_x22x_port_types_end"
# Olivetti devices ---------------------------
LABEL="mm_x22x_olivetti_vendorcheck"
+SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
# Olicard 200
-ATTRS{idVendor}=="0b3c", ATTRS{idProduct}=="c005", ATTRS{bInterfaceNumber}=="05", ENV{ID_MM_X22X_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="0b3c", ATTRS{idProduct}=="c005", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="0b3c", ATTRS{idProduct}=="c005", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="0b3c", ATTRS{idProduct}=="c005", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="0b3c", ATTRS{idProduct}=="c005", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="0b3c", ATTRS{idProduct}=="c005", ATTRS{bInterfaceNumber}=="06", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="0b3c", ATTRS{idProduct}=="c005", ENV{.MM_USBIFNUM}=="05", ENV{ID_MM_X22X_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="0b3c", ATTRS{idProduct}=="c005", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="0b3c", ATTRS{idProduct}=="c005", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="0b3c", ATTRS{idProduct}=="c005", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="0b3c", ATTRS{idProduct}=="c005", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="0b3c", ATTRS{idProduct}=="c005", ENV{.MM_USBIFNUM}=="06", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
ATTRS{idVendor}=="0b3c", ATTRS{idProduct}=="c005", ENV{ID_MM_X22X_TAGGED}="1"
GOTO="mm_x22x_port_types_end"
diff --git a/plugins/zte/77-mm-zte-port-types.rules b/plugins/zte/77-mm-zte-port-types.rules
index 6c1dd356..de6642fd 100644
--- a/plugins/zte/77-mm-zte-port-types.rules
+++ b/plugins/zte/77-mm-zte-port-types.rules
@@ -5,189 +5,190 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="19d2", GOTO="mm_zte_port_types"
GOTO="mm_zte_port_types_end"
LABEL="mm_zte_port_types"
+SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0001", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0001", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0001", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0001", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0002", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0002", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0002", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0002", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0003", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0003", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0003", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0003", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0004", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0004", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0004", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0004", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0005", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0005", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0005", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0005", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0006", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0006", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0006", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0006", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0007", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0007", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0007", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0007", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0008", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0008", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0008", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0008", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0009", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0009", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0009", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0009", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="000A", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="000A", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="000A", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="000A", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0012", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0012", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0012", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0012", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0015", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0015", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0015", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0015", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0016", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0016", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0016", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0016", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0017", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0017", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0017", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0017", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0018", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0018", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0018", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0018", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0019", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0019", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0019", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0019", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0021", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0021", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0021", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0021", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0024", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0024", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0024", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0024", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0025", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0025", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0025", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0025", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0030", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0030", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0030", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0030", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0031", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0031", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0031", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0031", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0033", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0033", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0033", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0033", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0037", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0037", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0037", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0037", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0039", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0039", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0039", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0039", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0042", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0042", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0042", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0042", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0043", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0043", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0043", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0043", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0048", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0048", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0048", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0048", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0049", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0049", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0049", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0049", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0052", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0052", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0052", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0052", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0054", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0054", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0054", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0054", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0055", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0055", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0055", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0055", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0057", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0057", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0057", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0057", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0058", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0058", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0058", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0058", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0061", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0061", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0061", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0061", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0063", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0063", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0063", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0063", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0064", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0064", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0064", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0064", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0066", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0066", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0066", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0066", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0078", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0078", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0078", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0078", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0082", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0082", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0082", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0082", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0091", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0091", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0091", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0091", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0104", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0104", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0104", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0104", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0106", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0106", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0106", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0106", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0108", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0108", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0108", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0108", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0113", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0113", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0113", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0113", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0117", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0117", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0117", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0117", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0118", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0118", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0118", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0118", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0121", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0121", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0121", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0121", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0122", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0122", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0122", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0122", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0123", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0123", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0123", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0123", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0124", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0124", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0124", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0124", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0125", ATTRS{bInterfaceNumber}=="05", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0125", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0125", ENV{.MM_USBIFNUM}=="05", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0125", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0126", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0126", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0126", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0126", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0128", ATTRS{bInterfaceNumber}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0128", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0128", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0128", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0156", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0156", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0156", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0156", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1007", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1007", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1007", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1007", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1008", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1008", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1008", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1008", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1010", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1010", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1010", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1010", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1254", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1254", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1254", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1254", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1515", ATTRS{bInterfaceNumber}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1515", ATTRS{bInterfaceNumber}=="02", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1515", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1515", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="2002", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="2002", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="2002", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="2002", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="2003", ATTRS{bInterfaceNumber}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
-ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="2003", ATTRS{bInterfaceNumber}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
+ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="2003", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
+ATTRS{idVendor}=="19d2", 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"