diff options
author | Adam Jackson <ajax@redhat.com> | 2009-02-26 14:33:52 -0500 |
---|---|---|
committer | Adam Jackson <ajax@redhat.com> | 2009-02-26 14:33:52 -0500 |
commit | 69b3eb4f8a9b93f1b2a73e395d4d7c29c6c18b41 (patch) | |
tree | 5b0b004f72db4ac34cb4c24142c443a4cded4181 | |
parent | 68ca3d10ab33ee2347928b0340198aff4f620144 (diff) |
Attempt VBE PanelID if DDC fails
-rw-r--r-- | configure.ac | 8 | ||||
-rw-r--r-- | src/vesa.c | 7 |
2 files changed, 15 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index 090be35..674e985 100644 --- a/configure.ac +++ b/configure.ac @@ -66,6 +66,14 @@ CFLAGS="$save_CFLAGS" save_CFLAGS="$CFLAGS" CFLAGS="$XORG_CFLAGS" +AC_CHECK_DECL(VBEReadPanelID, + [AC_DEFINE(HAVE_PANELID, 1, [Have VBE PanelID call])], + [], + [#include "vbe.h"]) +CFLAGS="$save_CFLAGS" + +save_CFLAGS="$CFLAGS" +CFLAGS="$XORG_CFLAGS" AC_CHECK_DECL(XSERVER_LIBPCIACCESS, [XSERVER_LIBPCIACCESS=yes], [XSERVER_LIBPCIACCESS=no], [#include "xorg-server.h"]) @@ -671,6 +671,13 @@ VESAPreInit(ScrnInfoPtr pScrn, int flags) if ((pScrn->monitor->DDC = pVesa->monitor) != NULL) xf86SetDDCproperties(pScrn, pVesa->monitor); +#ifdef HAVE_PANELID + else { + void *panelid = VBEReadPanelID(pVesa->pVbe); + VBEInterpretPanelID(pScrn->scrnIndex, panelid); + xfree(panelid); + } +#endif xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, DEBUG_VERB, "Searching for matching VESA mode(s):\n"); |