mirror of
https://github.com/torvalds/linux.git
synced 2024-12-27 13:22:23 +00:00
20cde69402
Commitb4aa016305
("efifb: Implement vga_default_device() (v2)") added efifb vga_default_device() so EFI systems that do not load shadow VBIOS or setup VGA get proper value for boot_vga PCI sysfs attribute on the corresponding PCI device. Xorg doesn't detect devices when boot_vga=0, e.g., on some EFI systems such as MacBookAir2,1. Xorg detects the GPU and finds the DRI device but then bails out with "no devices detected". Note: When vga_default_device() is set boot_vga PCI sysfs attribute reflects its state. When unset this attribute is 1 whenever IORESOURCE_ROM_SHADOW flag is set. With introduction of sysfb/simplefb/simpledrm efifb is getting obsolete while having native drivers for the GPU also makes selecting sysfb/efifb optional. Remove the efifb implementation of vga_default_device() and initialize vgaarb's vga_default_device() with the PCI GPU that matches boot screen_info in pci_fixup_video(). [bhelgaas: remove unused "dev" in efifb_setup()] Fixes:b4aa016305
("efifb: Implement vga_default_device() (v2)") Tested-by: Anibal Francisco Martinez Cortina <linuxkid.zeuz@gmail.com> Signed-off-by: Bruno Prémont <bonbons@linux-vserver.org> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Matthew Garrett <matthew.garrett@nebula.com> CC: stable@vger.kernel.org # v3.5+
21 lines
396 B
C
21 lines
396 B
C
/*
|
|
* Access to VGA videoram
|
|
*
|
|
* (c) 1998 Martin Mares <mj@ucw.cz>
|
|
*/
|
|
|
|
#ifndef _ASM_X86_VGA_H
|
|
#define _ASM_X86_VGA_H
|
|
|
|
/*
|
|
* On the PC, we can just recalculate addresses and then
|
|
* access the videoram directly without any black magic.
|
|
*/
|
|
|
|
#define VGA_MAP_MEM(x, s) (unsigned long)phys_to_virt(x)
|
|
|
|
#define vga_readb(x) (*(x))
|
|
#define vga_writeb(x, y) (*(y) = (x))
|
|
|
|
#endif /* _ASM_X86_VGA_H */
|