From 87b83c0d397394567e3148e66a669c7eb53bc481 Mon Sep 17 00:00:00 2001 From: "Antonino A. Daplas" Date: Mon, 27 Mar 2006 01:17:29 -0800 Subject: [PATCH] --- yaml --- r: 24371 b: refs/heads/master c: 59153f7d7effdb5b3c81eb6d03914a866157b319 h: refs/heads/master i: 24369: 29ac50d768333b1ec8f16d52aa646f4896886850 24367: 598b51c696ec64933fc53cd9f1ed7103348a99cb v: v3 --- [refs] | 2 +- trunk/arch/i386/boot/video.S | 2 ++ trunk/drivers/video/Kconfig | 16 ++++++++++++++++ trunk/drivers/video/fbmon.c | 6 +++--- 4 files changed, 22 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 9560b6092801..1adf52b72f66 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: f95ec3c6df271ae4e6290cd6b95c18a009c76dc9 +refs/heads/master: 59153f7d7effdb5b3c81eb6d03914a866157b319 diff --git a/trunk/arch/i386/boot/video.S b/trunk/arch/i386/boot/video.S index 2ac40c8244c4..0000a2674537 100644 --- a/trunk/arch/i386/boot/video.S +++ b/trunk/arch/i386/boot/video.S @@ -1924,6 +1924,7 @@ skip10: movb %ah, %al ret store_edid: +#ifdef CONFIG_FB_FIRMWARE_EDID pushw %es # just save all registers pushw %ax pushw %bx @@ -1954,6 +1955,7 @@ store_edid: popw %bx popw %ax popw %es +#endif ret # VIDEO_SELECT-only variables diff --git a/trunk/drivers/video/Kconfig b/trunk/drivers/video/Kconfig index 3a890610ebe7..22e9d696fdd2 100644 --- a/trunk/drivers/video/Kconfig +++ b/trunk/drivers/video/Kconfig @@ -70,6 +70,22 @@ config FB_MACMODES depends on FB default n +config FB_FIRMWARE_EDID + bool "Enable firmware EDID" + depends on FB + default y + ---help--- + This enables access to the EDID transferred from the firmware. + On the i386, this is from the Video BIOS. Enable this if DDC/I2C + transfers do not work for your driver and if you are using + nvidiafb, i810fb or savagefb. + + In general, choosing Y for this option is safe. If you + experience extremely long delays while booting before you get + something on your display, try setting this to N. Matrox cards in + combination with certain motherboards and monitors are known to + suffer from this problem. + config FB_MODE_HELPERS bool "Enable Video Mode Handling Helpers" depends on FB diff --git a/trunk/drivers/video/fbmon.c b/trunk/drivers/video/fbmon.c index 7c74e7325d95..53beeb4a9998 100644 --- a/trunk/drivers/video/fbmon.c +++ b/trunk/drivers/video/fbmon.c @@ -1281,7 +1281,7 @@ int fb_validate_mode(const struct fb_var_screeninfo *var, struct fb_info *info) -EINVAL : 0; } -#if defined(__i386__) +#if defined(CONFIG_FB_FIRMWARE_EDID) && defined(__i386__) #include /* @@ -1311,11 +1311,11 @@ const unsigned char *fb_firmware_edid(struct device *device) { return NULL; } -#endif /* _i386_ */ +#endif +EXPORT_SYMBOL(fb_firmware_edid); EXPORT_SYMBOL(fb_parse_edid); EXPORT_SYMBOL(fb_edid_to_monspecs); -EXPORT_SYMBOL(fb_firmware_edid); EXPORT_SYMBOL(fb_get_mode); EXPORT_SYMBOL(fb_validate_mode); EXPORT_SYMBOL(fb_destroy_modedb);