summaryrefslogtreecommitdiffstats
path: root/tools/ddcprobe/vbe.c
diff options
context:
space:
mode:
authorGwenolé Beauchesne <gbeauchesne@mandriva.org>2003-10-24 13:30:19 +0000
committerGwenolé Beauchesne <gbeauchesne@mandriva.org>2003-10-24 13:30:19 +0000
commit1767b4a1709cbebff59e96144463e19927e71a3c (patch)
treee0e947d0cce59f75a2c352b5f697588e17d009ff /tools/ddcprobe/vbe.c
parentc5b81552b9abf8ef78056bd1db685aa7d9362620 (diff)
downloaddrakx-backup-do-not-use-1767b4a1709cbebff59e96144463e19927e71a3c.tar
drakx-backup-do-not-use-1767b4a1709cbebff59e96144463e19927e71a3c.tar.gz
drakx-backup-do-not-use-1767b4a1709cbebff59e96144463e19927e71a3c.tar.bz2
drakx-backup-do-not-use-1767b4a1709cbebff59e96144463e19927e71a3c.tar.xz
drakx-backup-do-not-use-1767b4a1709cbebff59e96144463e19927e71a3c.zip
Really read necessary mode_list info from VBE. Check that kernel could
actually get something useful into EDID block.
Diffstat (limited to 'tools/ddcprobe/vbe.c')
-rw-r--r--tools/ddcprobe/vbe.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/tools/ddcprobe/vbe.c b/tools/ddcprobe/vbe.c
index bee57c5dc..7a5633c7e 100644
--- a/tools/ddcprobe/vbe.c
+++ b/tools/ddcprobe/vbe.c
@@ -224,7 +224,7 @@ struct vbe_edid1_info *vbe_get_edid_info()
return ret;
#endif
#if KERNEL_BOOT_INFO
- int edid_fd;
+ int i, invalid, edid_fd;
struct vbe_edid1_info *ret = NULL;
ret = malloc(sizeof(struct vbe_edid1_info));
@@ -239,6 +239,13 @@ struct vbe_edid1_info *vbe_get_edid_info()
close(edid_fd);
+ /* Check that kernel could actually get something useful. */
+ invalid = 1;
+ for (i = 0; invalid && i < 8; i++)
+ invalid = invalid && (ret->header[i] == EDID_INVALID);
+ if (invalid)
+ return NULL;
+
return ret;
#endif
return NULL;