aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video/uvesafb.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/video/uvesafb.c')
-rw-r--r--drivers/video/uvesafb.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/video/uvesafb.c b/drivers/video/uvesafb.c
index e7f69ef572dc..f9a670d338d2 100644
--- a/drivers/video/uvesafb.c
+++ b/drivers/video/uvesafb.c
@@ -23,6 +23,7 @@
23#include <video/uvesafb.h> 23#include <video/uvesafb.h>
24#ifdef CONFIG_X86 24#ifdef CONFIG_X86
25#include <video/vga.h> 25#include <video/vga.h>
26#include <linux/pci.h>
26#endif 27#endif
27#ifdef CONFIG_MTRR 28#ifdef CONFIG_MTRR
28#include <asm/mtrr.h> 29#include <asm/mtrr.h>
@@ -815,8 +816,15 @@ static int __devinit uvesafb_vbe_init(struct fb_info *info)
815 par->pmi_setpal = pmi_setpal; 816 par->pmi_setpal = pmi_setpal;
816 par->ypan = ypan; 817 par->ypan = ypan;
817 818
818 if (par->pmi_setpal || par->ypan) 819 if (par->pmi_setpal || par->ypan) {
819 uvesafb_vbe_getpmi(task, par); 820 if (pcibios_enabled) {
821 uvesafb_vbe_getpmi(task, par);
822 } else {
823 par->pmi_setpal = par->ypan = 0;
824 printk(KERN_WARNING "uvesafb: PCI BIOS area is NX."
825 "Can't use protected mode interface\n");
826 }
827 }
820#else 828#else
821 /* The protected mode interface is not available on non-x86. */ 829 /* The protected mode interface is not available on non-x86. */
822 par->pmi_setpal = par->ypan = 0; 830 par->pmi_setpal = par->ypan = 0;