Index: uspace/lib/usb/src/recognise.c
===================================================================
--- uspace/lib/usb/src/recognise.c	(revision 540e2d2d349d99aec0ff607211896ef70e96f23d)
+++ uspace/lib/usb/src/recognise.c	(revision 3ae93a822febda099a86ca24250d39ee29ddb5f0)
@@ -231,9 +231,14 @@
 	/*
 	 * If the device class points to interface we skip adding
-	 * class directly.
+	 * class directly but we add a multi interface device.
 	 */
 	if (device_descriptor->device_class != USB_CLASS_USE_INTERFACE) {
 		rc = usb_add_match_id(matches, 50, "usb&class=%s",
 		    usb_str_class(device_descriptor->device_class));
+		if (rc != EOK) {
+			return rc;
+		}
+	} else {
+		rc = usb_add_match_id(matches, 50, "usb&mid");
 		if (rc != EOK) {
 			return rc;
