summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/vga
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2011-01-20 13:09:12 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2011-01-23 12:52:16 +0000
commit934f992c763ae1e5eefcce8af769c16444085df7 (patch)
tree782f06fc0cf77813499d3d77e47a23c0f613625e /drivers/gpu/vga
parent076e2c0eb83f1a0e2e7d0ae1e4d4c0f7b13f1f64 (diff)
downloadlinux-stable-934f992c763ae1e5eefcce8af769c16444085df7.tar.gz
linux-stable-934f992c763ae1e5eefcce8af769c16444085df7.tar.bz2
linux-stable-934f992c763ae1e5eefcce8af769c16444085df7.zip
drm/i915: Recognise non-VGA display devices
Starting with SandyBridge (though possible with earlier hacked BIOSes), the BIOS may initialise the IGFX as secondary to a discrete GPU. Prior, it would simply disable the integrated GPU. So we adjust our PCI class mask to match any DISPLAY_CLASS device. In such a configuration, the IGFX is not a primary VGA controller and so should not take part in VGA arbitration, and the error return from vga_client_register() is expected. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: stable@kernel.org
Diffstat (limited to 'drivers/gpu/vga')
-rw-r--r--drivers/gpu/vga/vgaarb.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/vga/vgaarb.c b/drivers/gpu/vga/vgaarb.c
index c380c65da417..ace2b1623b21 100644
--- a/drivers/gpu/vga/vgaarb.c
+++ b/drivers/gpu/vga/vgaarb.c
@@ -636,7 +636,7 @@ int vga_client_register(struct pci_dev *pdev, void *cookie,
void (*irq_set_state)(void *cookie, bool state),
unsigned int (*set_vga_decode)(void *cookie, bool decode))
{
- int ret = -1;
+ int ret = -ENODEV;
struct vga_device *vgadev;
unsigned long flags;