Loading arch/ia64/pci/fixup.c +1 −23 Original line number Diff line number Diff line Loading @@ -38,27 +38,6 @@ static void pci_fixup_video(struct pci_dev *pdev) return; /* Maybe, this machine supports legacy memory map. */ if (!vga_default_device()) { resource_size_t start, end; int i; /* Does firmware framebuffer belong to us? */ for (i = 0; i < DEVICE_COUNT_RESOURCE; i++) { if (!(pci_resource_flags(pdev, i) & IORESOURCE_MEM)) continue; start = pci_resource_start(pdev, i); end = pci_resource_end(pdev, i); if (!start || !end) continue; if (screen_info.lfb_base >= start && (screen_info.lfb_base + screen_info.lfb_size) < end) vga_set_default_device(pdev); } } /* Is VGA routed to us? */ bus = pdev->bus; while (bus) { Loading @@ -83,8 +62,7 @@ static void pci_fixup_video(struct pci_dev *pdev) pci_read_config_word(pdev, PCI_COMMAND, &config); if (config & (PCI_COMMAND_IO | PCI_COMMAND_MEMORY)) { pdev->resource[PCI_ROM_RESOURCE].flags |= IORESOURCE_ROM_SHADOW; dev_printk(KERN_DEBUG, &pdev->dev, "Boot video device\n"); vga_set_default_device(pdev); dev_printk(KERN_DEBUG, &pdev->dev, "Video device with shadowed ROM\n"); } } } Loading arch/x86/pci/fixup.c +1 −23 Original line number Diff line number Diff line Loading @@ -326,27 +326,6 @@ static void pci_fixup_video(struct pci_dev *pdev) struct pci_bus *bus; u16 config; if (!vga_default_device()) { resource_size_t start, end; int i; /* Does firmware framebuffer belong to us? */ for (i = 0; i < DEVICE_COUNT_RESOURCE; i++) { if (!(pci_resource_flags(pdev, i) & IORESOURCE_MEM)) continue; start = pci_resource_start(pdev, i); end = pci_resource_end(pdev, i); if (!start || !end) continue; if (screen_info.lfb_base >= start && (screen_info.lfb_base + screen_info.lfb_size) < end) vga_set_default_device(pdev); } } /* Is VGA routed to us? */ bus = pdev->bus; while (bus) { Loading @@ -371,8 +350,7 @@ static void pci_fixup_video(struct pci_dev *pdev) pci_read_config_word(pdev, PCI_COMMAND, &config); if (config & (PCI_COMMAND_IO | PCI_COMMAND_MEMORY)) { pdev->resource[PCI_ROM_RESOURCE].flags |= IORESOURCE_ROM_SHADOW; dev_printk(KERN_DEBUG, &pdev->dev, "Boot video device\n"); vga_set_default_device(pdev); dev_printk(KERN_DEBUG, &pdev->dev, "Video device with shadowed ROM\n"); } } } Loading drivers/gpu/vga/vgaarb.c +37 −9 Original line number Diff line number Diff line Loading @@ -41,6 +41,7 @@ #include <linux/poll.h> #include <linux/miscdevice.h> #include <linux/slab.h> #include <linux/screen_info.h> #include <linux/uaccess.h> Loading Loading @@ -112,10 +113,8 @@ static int vga_str_to_iostate(char *buf, int str_size, int *io_state) return 1; } #ifndef __ARCH_HAS_VGA_DEFAULT_DEVICE /* this is only used a cookie - it should not be dereferenced */ static struct pci_dev *vga_default; #endif static void vga_arb_device_card_gone(struct pci_dev *pdev); Loading @@ -131,7 +130,6 @@ static struct vga_device *vgadev_find(struct pci_dev *pdev) } /* Returns the default VGA device (vgacon's babe) */ #ifndef __ARCH_HAS_VGA_DEFAULT_DEVICE struct pci_dev *vga_default_device(void) { return vga_default; Loading @@ -147,7 +145,6 @@ void vga_set_default_device(struct pci_dev *pdev) pci_dev_put(vga_default); vga_default = pci_dev_get(pdev); } #endif static inline void vga_irq_set_state(struct vga_device *vgadev, bool state) { Loading Loading @@ -583,11 +580,12 @@ static bool vga_arbiter_add_pci_device(struct pci_dev *pdev) /* Deal with VGA default device. Use first enabled one * by default if arch doesn't have it's own hook */ #ifndef __ARCH_HAS_VGA_DEFAULT_DEVICE if (vga_default == NULL && ((vgadev->owns & VGA_RSRC_LEGACY_MASK) == VGA_RSRC_LEGACY_MASK)) ((vgadev->owns & VGA_RSRC_LEGACY_MASK) == VGA_RSRC_LEGACY_MASK)) { pr_info("vgaarb: setting as boot device: PCI:%s\n", pci_name(pdev)); vga_set_default_device(pdev); #endif } vga_arbiter_check_bridge_sharing(vgadev); Loading Loading @@ -621,10 +619,8 @@ static bool vga_arbiter_del_pci_device(struct pci_dev *pdev) goto bail; } #ifndef __ARCH_HAS_VGA_DEFAULT_DEVICE if (vga_default == pdev) vga_set_default_device(NULL); #endif if (vgadev->decodes & (VGA_RSRC_LEGACY_IO | VGA_RSRC_LEGACY_MEM)) vga_decode_count--; Loading Loading @@ -1320,6 +1316,38 @@ static int __init vga_arb_device_init(void) pr_info("vgaarb: loaded\n"); list_for_each_entry(vgadev, &vga_list, list) { #if defined(CONFIG_X86) || defined(CONFIG_IA64) /* Override I/O based detection done by vga_arbiter_add_pci_device() * as it may take the wrong device (e.g. on Apple system under EFI). * * Select the device owning the boot framebuffer if there is one. */ resource_size_t start, end; int i; /* Does firmware framebuffer belong to us? */ for (i = 0; i < DEVICE_COUNT_RESOURCE; i++) { if (!(pci_resource_flags(vgadev->pdev, i) & IORESOURCE_MEM)) continue; start = pci_resource_start(vgadev->pdev, i); end = pci_resource_end(vgadev->pdev, i); if (!start || !end) continue; if (screen_info.lfb_base < start || (screen_info.lfb_base + screen_info.lfb_size) >= end) continue; if (!vga_default_device()) pr_info("vgaarb: setting as boot device: PCI:%s\n", pci_name(vgadev->pdev)); else if (vgadev->pdev != vga_default_device()) pr_info("vgaarb: overriding boot device: PCI:%s\n", pci_name(vgadev->pdev)); vga_set_default_device(vgadev->pdev); } #endif if (vgadev->bridge_has_one_vga) pr_info("vgaarb: bridge control possible %s\n", pci_name(vgadev->pdev)); else Loading drivers/pci/hotplug/pcihp_slot.c +1 −5 Original line number Diff line number Diff line Loading @@ -46,7 +46,6 @@ static void program_hpp_type0(struct pci_dev *dev, struct hpp_type0 *hpp) */ if (pci_is_pcie(dev)) return; dev_info(&dev->dev, "using default PCI settings\n"); hpp = &pci_default_type0; } Loading Loading @@ -153,7 +152,6 @@ void pci_configure_slot(struct pci_dev *dev) { struct pci_dev *cdev; struct hotplug_params hpp; int ret; if (!(dev->hdr_type == PCI_HEADER_TYPE_NORMAL || (dev->hdr_type == PCI_HEADER_TYPE_BRIDGE && Loading @@ -163,9 +161,7 @@ void pci_configure_slot(struct pci_dev *dev) pcie_bus_configure_settings(dev->bus); memset(&hpp, 0, sizeof(hpp)); ret = pci_get_hp_params(dev, &hpp); if (ret) dev_warn(&dev->dev, "no hotplug settings from platform\n"); pci_get_hp_params(dev, &hpp); program_hpp_type2(dev, hpp.t2); program_hpp_type1(dev, hpp.t1); Loading include/linux/vgaarb.h +0 −2 Original line number Diff line number Diff line Loading @@ -182,7 +182,6 @@ extern void vga_put(struct pci_dev *pdev, unsigned int rsrc); * vga_get()... */ #ifndef __ARCH_HAS_VGA_DEFAULT_DEVICE #ifdef CONFIG_VGA_ARB extern struct pci_dev *vga_default_device(void); extern void vga_set_default_device(struct pci_dev *pdev); Loading @@ -190,7 +189,6 @@ extern void vga_set_default_device(struct pci_dev *pdev); static inline struct pci_dev *vga_default_device(void) { return NULL; }; static inline void vga_set_default_device(struct pci_dev *pdev) { }; #endif #endif /** * vga_conflicts Loading Loading
arch/ia64/pci/fixup.c +1 −23 Original line number Diff line number Diff line Loading @@ -38,27 +38,6 @@ static void pci_fixup_video(struct pci_dev *pdev) return; /* Maybe, this machine supports legacy memory map. */ if (!vga_default_device()) { resource_size_t start, end; int i; /* Does firmware framebuffer belong to us? */ for (i = 0; i < DEVICE_COUNT_RESOURCE; i++) { if (!(pci_resource_flags(pdev, i) & IORESOURCE_MEM)) continue; start = pci_resource_start(pdev, i); end = pci_resource_end(pdev, i); if (!start || !end) continue; if (screen_info.lfb_base >= start && (screen_info.lfb_base + screen_info.lfb_size) < end) vga_set_default_device(pdev); } } /* Is VGA routed to us? */ bus = pdev->bus; while (bus) { Loading @@ -83,8 +62,7 @@ static void pci_fixup_video(struct pci_dev *pdev) pci_read_config_word(pdev, PCI_COMMAND, &config); if (config & (PCI_COMMAND_IO | PCI_COMMAND_MEMORY)) { pdev->resource[PCI_ROM_RESOURCE].flags |= IORESOURCE_ROM_SHADOW; dev_printk(KERN_DEBUG, &pdev->dev, "Boot video device\n"); vga_set_default_device(pdev); dev_printk(KERN_DEBUG, &pdev->dev, "Video device with shadowed ROM\n"); } } } Loading
arch/x86/pci/fixup.c +1 −23 Original line number Diff line number Diff line Loading @@ -326,27 +326,6 @@ static void pci_fixup_video(struct pci_dev *pdev) struct pci_bus *bus; u16 config; if (!vga_default_device()) { resource_size_t start, end; int i; /* Does firmware framebuffer belong to us? */ for (i = 0; i < DEVICE_COUNT_RESOURCE; i++) { if (!(pci_resource_flags(pdev, i) & IORESOURCE_MEM)) continue; start = pci_resource_start(pdev, i); end = pci_resource_end(pdev, i); if (!start || !end) continue; if (screen_info.lfb_base >= start && (screen_info.lfb_base + screen_info.lfb_size) < end) vga_set_default_device(pdev); } } /* Is VGA routed to us? */ bus = pdev->bus; while (bus) { Loading @@ -371,8 +350,7 @@ static void pci_fixup_video(struct pci_dev *pdev) pci_read_config_word(pdev, PCI_COMMAND, &config); if (config & (PCI_COMMAND_IO | PCI_COMMAND_MEMORY)) { pdev->resource[PCI_ROM_RESOURCE].flags |= IORESOURCE_ROM_SHADOW; dev_printk(KERN_DEBUG, &pdev->dev, "Boot video device\n"); vga_set_default_device(pdev); dev_printk(KERN_DEBUG, &pdev->dev, "Video device with shadowed ROM\n"); } } } Loading
drivers/gpu/vga/vgaarb.c +37 −9 Original line number Diff line number Diff line Loading @@ -41,6 +41,7 @@ #include <linux/poll.h> #include <linux/miscdevice.h> #include <linux/slab.h> #include <linux/screen_info.h> #include <linux/uaccess.h> Loading Loading @@ -112,10 +113,8 @@ static int vga_str_to_iostate(char *buf, int str_size, int *io_state) return 1; } #ifndef __ARCH_HAS_VGA_DEFAULT_DEVICE /* this is only used a cookie - it should not be dereferenced */ static struct pci_dev *vga_default; #endif static void vga_arb_device_card_gone(struct pci_dev *pdev); Loading @@ -131,7 +130,6 @@ static struct vga_device *vgadev_find(struct pci_dev *pdev) } /* Returns the default VGA device (vgacon's babe) */ #ifndef __ARCH_HAS_VGA_DEFAULT_DEVICE struct pci_dev *vga_default_device(void) { return vga_default; Loading @@ -147,7 +145,6 @@ void vga_set_default_device(struct pci_dev *pdev) pci_dev_put(vga_default); vga_default = pci_dev_get(pdev); } #endif static inline void vga_irq_set_state(struct vga_device *vgadev, bool state) { Loading Loading @@ -583,11 +580,12 @@ static bool vga_arbiter_add_pci_device(struct pci_dev *pdev) /* Deal with VGA default device. Use first enabled one * by default if arch doesn't have it's own hook */ #ifndef __ARCH_HAS_VGA_DEFAULT_DEVICE if (vga_default == NULL && ((vgadev->owns & VGA_RSRC_LEGACY_MASK) == VGA_RSRC_LEGACY_MASK)) ((vgadev->owns & VGA_RSRC_LEGACY_MASK) == VGA_RSRC_LEGACY_MASK)) { pr_info("vgaarb: setting as boot device: PCI:%s\n", pci_name(pdev)); vga_set_default_device(pdev); #endif } vga_arbiter_check_bridge_sharing(vgadev); Loading Loading @@ -621,10 +619,8 @@ static bool vga_arbiter_del_pci_device(struct pci_dev *pdev) goto bail; } #ifndef __ARCH_HAS_VGA_DEFAULT_DEVICE if (vga_default == pdev) vga_set_default_device(NULL); #endif if (vgadev->decodes & (VGA_RSRC_LEGACY_IO | VGA_RSRC_LEGACY_MEM)) vga_decode_count--; Loading Loading @@ -1320,6 +1316,38 @@ static int __init vga_arb_device_init(void) pr_info("vgaarb: loaded\n"); list_for_each_entry(vgadev, &vga_list, list) { #if defined(CONFIG_X86) || defined(CONFIG_IA64) /* Override I/O based detection done by vga_arbiter_add_pci_device() * as it may take the wrong device (e.g. on Apple system under EFI). * * Select the device owning the boot framebuffer if there is one. */ resource_size_t start, end; int i; /* Does firmware framebuffer belong to us? */ for (i = 0; i < DEVICE_COUNT_RESOURCE; i++) { if (!(pci_resource_flags(vgadev->pdev, i) & IORESOURCE_MEM)) continue; start = pci_resource_start(vgadev->pdev, i); end = pci_resource_end(vgadev->pdev, i); if (!start || !end) continue; if (screen_info.lfb_base < start || (screen_info.lfb_base + screen_info.lfb_size) >= end) continue; if (!vga_default_device()) pr_info("vgaarb: setting as boot device: PCI:%s\n", pci_name(vgadev->pdev)); else if (vgadev->pdev != vga_default_device()) pr_info("vgaarb: overriding boot device: PCI:%s\n", pci_name(vgadev->pdev)); vga_set_default_device(vgadev->pdev); } #endif if (vgadev->bridge_has_one_vga) pr_info("vgaarb: bridge control possible %s\n", pci_name(vgadev->pdev)); else Loading
drivers/pci/hotplug/pcihp_slot.c +1 −5 Original line number Diff line number Diff line Loading @@ -46,7 +46,6 @@ static void program_hpp_type0(struct pci_dev *dev, struct hpp_type0 *hpp) */ if (pci_is_pcie(dev)) return; dev_info(&dev->dev, "using default PCI settings\n"); hpp = &pci_default_type0; } Loading Loading @@ -153,7 +152,6 @@ void pci_configure_slot(struct pci_dev *dev) { struct pci_dev *cdev; struct hotplug_params hpp; int ret; if (!(dev->hdr_type == PCI_HEADER_TYPE_NORMAL || (dev->hdr_type == PCI_HEADER_TYPE_BRIDGE && Loading @@ -163,9 +161,7 @@ void pci_configure_slot(struct pci_dev *dev) pcie_bus_configure_settings(dev->bus); memset(&hpp, 0, sizeof(hpp)); ret = pci_get_hp_params(dev, &hpp); if (ret) dev_warn(&dev->dev, "no hotplug settings from platform\n"); pci_get_hp_params(dev, &hpp); program_hpp_type2(dev, hpp.t2); program_hpp_type1(dev, hpp.t1); Loading
include/linux/vgaarb.h +0 −2 Original line number Diff line number Diff line Loading @@ -182,7 +182,6 @@ extern void vga_put(struct pci_dev *pdev, unsigned int rsrc); * vga_get()... */ #ifndef __ARCH_HAS_VGA_DEFAULT_DEVICE #ifdef CONFIG_VGA_ARB extern struct pci_dev *vga_default_device(void); extern void vga_set_default_device(struct pci_dev *pdev); Loading @@ -190,7 +189,6 @@ extern void vga_set_default_device(struct pci_dev *pdev); static inline struct pci_dev *vga_default_device(void) { return NULL; }; static inline void vga_set_default_device(struct pci_dev *pdev) { }; #endif #endif /** * vga_conflicts Loading