]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
video: Make CONFIG_FIRMWARE_EDID generally available
authorThomas Zimmermann <tzimmermann@suse.de>
Mon, 2 Jun 2025 07:51:43 +0000 (09:51 +0200)
committerThomas Zimmermann <tzimmermann@suse.de>
Mon, 16 Jun 2025 09:00:28 +0000 (11:00 +0200)
DRM drivers such as efidrm and vesadrm can export firmware EDID
data to userspace. Make the related option CONFIG_FIRMWARE_EDID
available without CONFIG_FB. Make it depend on X86, which is
currently the only architecture providing EDID information.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Helge Deller <deller@gmx.de>
Link: https://lore.kernel.org/r/20250602075537.137759-2-tzimmermann@suse.de
drivers/video/Kconfig
drivers/video/fbdev/core/Kconfig
drivers/video/fbdev/core/fbmon.c

index 5df981920a9453f50b3909154a240f0e6ce011c2..c3da6c0bfca6c70dca264771d9020d0eef98a31b 100644 (file)
@@ -61,6 +61,23 @@ config HDMI
 
 endif # HAS_IOMEM
 
+config FIRMWARE_EDID
+       bool "Enable firmware EDID"
+       depends on X86
+       help
+         This enables access to the EDID transferred from the firmware.
+         On x86, this is from the VESA BIOS. DRM display drivers will
+         be able to export the information to userspace.
+
+         Also 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.
+
 if VT
        source "drivers/video/console/Kconfig"
 endif
@@ -70,5 +87,4 @@ if FB_CORE || SGI_NEWPORT_CONSOLE
 
 endif
 
-
 endmenu
index 4abe12db759456ca68f20ea949ed34b41e0343b3..b38c3b776bce6ee1c08b1d788146ba9279337c82 100644 (file)
@@ -10,21 +10,6 @@ config FB_CORE
 config FB_NOTIFY
        bool
 
-config FIRMWARE_EDID
-       bool "Enable firmware EDID"
-       depends on FB
-       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_DEVICE
        bool "Provide legacy /dev/fb* device"
        depends on FB_CORE
index 023caaea682e3dcc796b34edd98c9899d1b6847f..3b779c27c2711eb5b5120673d302d975194f13f0 100644 (file)
@@ -1484,13 +1484,12 @@ int fb_validate_mode(const struct fb_var_screeninfo *var, struct fb_info *info)
                -EINVAL : 0;
 }
 
-#if defined(CONFIG_FIRMWARE_EDID) && defined(CONFIG_X86)
-
 /*
  * We need to ensure that the EDID block is only returned for
  * the primary graphics adapter.
  */
 
+#if defined(CONFIG_FIRMWARE_EDID)
 const unsigned char *fb_firmware_edid(struct device *device)
 {
        struct pci_dev *dev = NULL;