|
@@ -30,6 +30,7 @@
|
|
|
#include <linux/irq.h>
|
|
|
#include <linux/vmalloc.h>
|
|
|
#include <linux/slab.h>
|
|
|
+#include <linux/vgaarb.h>
|
|
|
|
|
|
#include <asm/processor.h>
|
|
|
#include <asm/io.h>
|
|
@@ -1734,3 +1735,15 @@ static void fixup_hide_host_resource_fsl(struct pci_dev *dev)
|
|
|
}
|
|
|
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_MOTOROLA, PCI_ANY_ID, fixup_hide_host_resource_fsl);
|
|
|
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_FREESCALE, PCI_ANY_ID, fixup_hide_host_resource_fsl);
|
|
|
+
|
|
|
+static void fixup_vga(struct pci_dev *pdev)
|
|
|
+{
|
|
|
+ u16 cmd;
|
|
|
+
|
|
|
+ pci_read_config_word(pdev, PCI_COMMAND, &cmd);
|
|
|
+ if ((cmd & (PCI_COMMAND_IO | PCI_COMMAND_MEMORY)) || !vga_default_device())
|
|
|
+ vga_set_default_device(pdev);
|
|
|
+
|
|
|
+}
|
|
|
+DECLARE_PCI_FIXUP_CLASS_FINAL(PCI_ANY_ID, PCI_ANY_ID,
|
|
|
+ PCI_CLASS_DISPLAY_VGA, 8, fixup_vga);
|