@@ -, +, @@ unknow usb/pci class codes --- udevdiscover/device/pci.py | 5 ++++- udevdiscover/device/usb.py | 7 +++++-- 2 files changed, 9 insertions(+), 3 deletions(-) --- a/udevdiscover/device/pci.py +++ a/udevdiscover/device/pci.py @@ -205,7 +205,10 @@ def get_pci_short_long_names(pci_class, pci_subclass, pci_protocol): else: key.append(pci_protocol) - return pci_class_names[tuple(key)] + if pci_class_names.has_key(tuple(key)): + return pci_class_names[tuple(key)] + else: + return pci_class_names[(pci_class, -1, -1)] @memoized def get_pci_vendor_model_names(sysfs_path): --- a/udevdiscover/device/usb.py +++ a/udevdiscover/device/usb.py @@ -162,7 +162,7 @@ def get_usb_short_long_names(usb_class, usb_subclass, usb_protocol): return None, None subklasses = [s for s in klasses if s[1] == usb_subclass] - + if not subklasses: key.append(-1) else: @@ -173,7 +173,10 @@ def get_usb_short_long_names(usb_class, usb_subclass, usb_protocol): else: key.append(usb_protocol) - return usb_class_names[tuple(key)] + if usb_class_names.has_key(tuple(key)): + return usb_class_names[tuple(key)] + else: + return usb_class_names[(usb_class, -1, -1)] @memoized def get_usb_vendor_model_names(sysfs_path): --