mei: pxp: match against PCI_CLASS_DISPLAY_OTHER
authorDaniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Sun, 21 Apr 2024 09:07:01 +0000 (12:07 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 24 Apr 2024 04:44:13 +0000 (21:44 -0700)
The ATS-M class is PCI_CLASS_DISPLAY_OTHER instead of
PCI_CLASS_DISPLAY_VGA, so we need to match against that class as well.
The matching is still restricted to Intel devices only.

Fixes: ceeedd951f8a ("mei: pxp: match without driver name")
Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Link: https://lore.kernel.org/r/20240421090701.216028-1-tomas.winkler@intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/misc/mei/pxp/mei_pxp.c

index b1e4c23b31a32957c616f0edcdf74dc086c44a89..49abc95677cdac6a74d673cbf5444ccc82deee74 100644 (file)
@@ -236,8 +236,11 @@ static int mei_pxp_component_match(struct device *dev, int subcomponent,
 
        pdev = to_pci_dev(dev);
 
-       if (pdev->class != (PCI_CLASS_DISPLAY_VGA << 8) ||
-           pdev->vendor != PCI_VENDOR_ID_INTEL)
+       if (pdev->vendor != PCI_VENDOR_ID_INTEL)
+               return 0;
+
+       if (pdev->class != (PCI_CLASS_DISPLAY_VGA << 8) &&
+           pdev->class != (PCI_CLASS_DISPLAY_OTHER << 8))
                return 0;
 
        if (subcomponent != I915_COMPONENT_PXP)