xf86-video-intel: 2 commits - src/i830_bios.c src/i830_driver.c

Jesse Barnes jbarnes at kemper.freedesktop.org
Tue Jun 30 12:02:41 PDT 2009


 src/i830_bios.c   |    6 +++---
 src/i830_driver.c |    9 +++++++--
 2 files changed, 10 insertions(+), 5 deletions(-)

New commits:
commit 53e248af4365232416d2143a791a07c6751f8319
Author: Jesse Barnes <jbarnes at virtuousgeek.org>
Date:   Tue Jun 30 12:00:28 2009 -0700

    Use DVO timing block instead of fp_timing when parsing LFP data
    
    The KMS side was correct, but the UMS patch was broken.  We need to use
    the DVO timing block of the LFP data to get the timing, not the
    fp_timing block.
    
    Fixes fdo bug #22529.
    
    Signed-off-by: Jesse Barnes <jbarnes at virtuousgeek.org>

diff --git a/src/i830_bios.c b/src/i830_bios.c
index 62b9f5d..60c307c 100644
--- a/src/i830_bios.c
+++ b/src/i830_bios.c
@@ -144,11 +144,11 @@ parse_integrated_panel_data(I830Ptr pI830, struct bdb_header *bdb)
     if (!lvds_lfp_data_ptrs)
 	return;
 
-    lfp_data_size = lvds_lfp_data_ptrs->ptr[1].fp_timing_offset -
-	lvds_lfp_data_ptrs->ptr[0].fp_timing_offset;
+    lfp_data_size = lvds_lfp_data_ptrs->ptr[1].dvo_timing_offset -
+	lvds_lfp_data_ptrs->ptr[0].dvo_timing_offset;
     entry = (struct bdb_lvds_lfp_data_entry *)((uint8_t *)lvds_data->data +
 					       (lfp_data_size * lvds_options->panel_type));
-    timing_ptr = (unsigned char *)&entry->fp_timing;
+    timing_ptr = (unsigned char *)&entry->dvo_timing;
 
     if (pI830->skip_panel_detect)
 	return;
commit 362883c2f9a3442f7678e6e815f41b21baaa3f53
Author: Jesse Barnes <jbarnes at virtuousgeek.org>
Date:   Mon Jun 29 16:26:15 2009 -0700

    Add a few error messages for DRM initialization
    
    Makes it easier to see where things go wrong.
    
    Signed-off-by: Jesse Barnes <jbarnes at virtuousgeek.org>

diff --git a/src/i830_driver.c b/src/i830_driver.c
index bd7a32c..40255cd 100644
--- a/src/i830_driver.c
+++ b/src/i830_driver.c
@@ -1440,7 +1440,8 @@ i830_open_drm_master(ScrnInfoPtr scrn)
     if (i830->drmSubFD == -1) {
 	xfree(busid);
 	xf86DrvMsg(scrn->scrnIndex, X_ERROR,
-		   "[drm] Failed to open DRM device for %s\n", busid);
+		   "[drm] Failed to open DRM device for %s: %s\n", busid,
+		   strerror(errno));
 	return FALSE;
     }
 
@@ -1455,6 +1456,8 @@ i830_open_drm_master(ScrnInfoPtr scrn)
     sv.drm_dd_major = -1;
     err = drmSetInterfaceVersion(i830->drmSubFD, &sv);
     if (err != 0) {
+	xf86DrvMsg(scrn->scrnIndex, X_ERROR,
+		   "[drm] failed to set drm interface version.\n");
 	drmClose(i830->drmSubFD);
 	i830->drmSubFD = -1;
 	return FALSE;
@@ -1594,7 +1597,9 @@ I830PreInit(ScrnInfoPtr pScrn, int flags)
 
    pI830->PciInfo = xf86GetPciInfoForEntity(pI830->pEnt->index);
 
-   i830_open_drm_master(pScrn);
+   if (!i830_open_drm_master(pScrn))
+       xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "Failed to become DRM master.\n");
+
 
    if (xf86RegisterResources(pI830->pEnt->index, NULL, ResNone)) {
       PreInitCleanup(pScrn);


More information about the xorg-commit mailing list