From: Sui Jingfeng <suijingf...@loongson.cn>

Instead of accessing the PCI_CLASS_DISPLAY_VGA and pdev->class directly.
The PCI_CLASS_NOT_DEFINED_VGA is defined to provide backward compatibility
for devices that were built before the class code field was defined. It
should be visiable via sysfs(boot_vga) as the normal VGA-compatible devices.

Cc: "Maciej W. Rozycki" <ma...@orcam.me.uk>
Signed-off-by: Sui Jingfeng <suijingf...@loongson.cn>
---
 drivers/pci/pci-sysfs.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/pci/pci-sysfs.c b/drivers/pci/pci-sysfs.c
index d9eede2dbc0e..522708938563 100644
--- a/drivers/pci/pci-sysfs.c
+++ b/drivers/pci/pci-sysfs.c
@@ -1552,10 +1552,10 @@ static umode_t pci_dev_attrs_are_visible(struct kobject 
*kobj,
        struct pci_dev *pdev = to_pci_dev(dev);
 
        if (a == &dev_attr_boot_vga.attr)
-               if ((pdev->class >> 8) != PCI_CLASS_DISPLAY_VGA)
-                       return 0;
+               if (pci_is_vga(pdev))
+                       return a->mode;
 
-       return a->mode;
+       return 0;
 }
 
 static struct attribute *pci_dev_hp_attrs[] = {
-- 
2.34.1

Reply via email to