configure.ac     |    2 -
 src/via_driver.c |   14 -------
 src/via_ums.c    |  101 +++++++++++++++++++++++++++++--------------------------
 3 files changed, 56 insertions(+), 61 deletions(-)

New commits:
commit afc59f3c8c0563f20c9a969f2d71ec21a597d548
Author: Kevin Brace <kevinbr...@gmx.com>
Date:   Wed Feb 12 13:45:29 2020 -0800

    Version bumped to 0.6.214
    
    Signed-off-by: Kevin Brace <kevinbr...@gmx.com>

diff --git a/configure.ac b/configure.ac
index 959e6d2..0ec07f2 100644
--- a/configure.ac
+++ b/configure.ac
@@ -23,7 +23,7 @@
 # Initialize Autoconf
 AC_PREREQ([2.60])
 AC_INIT([xf86-video-openchrome],
-        [0.6.213],
+        [0.6.214],
         
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver/openchrome],
         [xf86-video-openchrome])
 
commit 8a0d281263abcf8c970687946af8280f4d3c59cb
Author: Kevin Brace <kevinbr...@gmx.com>
Date:   Wed Feb 12 13:41:53 2020 -0800

    Handle more of screen initialization inside viaUMSCreate()
    
    Signed-off-by: Kevin Brace <kevinbr...@gmx.com>

diff --git a/src/via_driver.c b/src/via_driver.c
index 98767fa..4733c04 100644
--- a/src/via_driver.c
+++ b/src/via_driver.c
@@ -1493,20 +1493,6 @@ VIAScreenInit(SCREEN_INIT_ARGS_DECL)
         if (!viaUMSCreate(pScrn)) {
             return FALSE;
         }
-
-#ifdef HAVE_DRI
-        if (pVia->directRenderingType == DRI_1) {
-            if (!VIADRIKernelInit(pScrn)) {
-                return FALSE;
-            }
-        }
-#endif
-    }
-
-    if (!pVia->NoAccel) {
-        if (!viaInitExa(pScreen)) {
-            return FALSE;
-        }
     }
 
     if ((!pVia->NoAccel) &&
diff --git a/src/via_ums.c b/src/via_ums.c
index 1ddd74b..c646796 100644
--- a/src/via_ums.c
+++ b/src/via_ums.c
@@ -698,63 +698,72 @@ viaUMSCreate(ScrnInfoPtr pScrn)
 
 #ifdef HAVE_DRI
     if (pVia->directRenderingType == DRI_1) {
-        /* In the case of DRI we handle all VRAM by the DRI ioctls */
-        if (pVia->useEXA)
-            goto exit;
-
-        /* XAA has to use FBManager so we have to split the space with DRI */
-        maxY = pScrn->virtualY + (pVia->driSize / pVia->Bpl);
+        if (!VIADRIKernelInit(pScrn)) {
+            return FALSE;
+        }
     } else
 #endif
+    {
         maxY = pVia->FBFreeEnd / pVia->Bpl;
 
-    /* FBManager can't handle more than 32767 scan lines */
-    if (maxY > 32767)
-        maxY = 32767;
+        /* FBManager can't handle more than 32767 scan lines */
+        if (maxY > 32767)
+            maxY = 32767;
+
+        AvailFBArea.x1 = 0;
+        AvailFBArea.y1 = 0;
+        AvailFBArea.x2 = pScrn->displayWidth;
+        AvailFBArea.y2 = maxY;
+        pVia->FBFreeStart = (AvailFBArea.y2 + 1) * pVia->Bpl;
+
+        /*
+         * Initialization of the XFree86 framebuffer manager is done
+         * via Bool xf86InitFBManager(ScreenPtr pScreen,
+         * BoxPtr FullBox).  FullBox represents the area of the
+         * frame buffer that the manager is allowed to manage.
+         * This is typically a box with a width of pScrn->displayWidth
+         * and a height of as many lines as can be fit within the
+         * total video memory.
+         */
+        ret = xf86InitFBManager(pScreen, &AvailFBArea);
+        if (!ret) {
+            xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
+                        "xf86InitFBManager initialization failed.\n");
+            goto exit;
+        }
 
-    AvailFBArea.x1 = 0;
-    AvailFBArea.y1 = 0;
-    AvailFBArea.x2 = pScrn->displayWidth;
-    AvailFBArea.y2 = maxY;
-    pVia->FBFreeStart = (AvailFBArea.y2 + 1) * pVia->Bpl;
+        DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+                            "Frame buffer from (%d,%d) to (%d,%d).\n",
+                            AvailFBArea.x1, AvailFBArea.y1,
+                            AvailFBArea.x2, AvailFBArea.y2));
+
+        offset = (pVia->FBFreeStart +
+                    ((pScrn->bitsPerPixel >> 3) - 1)) /
+                    (pScrn->bitsPerPixel >> 3);
+        size = (pVia->FBFreeEnd / (pScrn->bitsPerPixel >> 3)) - offset;
+
+        if (size > 0) {
+            ret = xf86InitFBManagerLinear(pScreen, offset, size);
+            if (!ret) {
+                xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
+                            "xf86InitFBManagerLinear initialization "
+                            "failed.\n");
+                goto exit;
+            }
+        }
 
-    /*
-     * Initialization of the XFree86 framebuffer manager is done via
-     * Bool xf86InitFBManager(ScreenPtr pScreen, BoxPtr FullBox)
-     * FullBox represents the area of the framebuffer that the manager
-     * is allowed to manage.  This is typically a box with a width of
-     * pScrn->displayWidth and a height of as many lines as can be fit
-     * within the total video memory.
-     */
-    ret = xf86InitFBManager(pScreen, &AvailFBArea);
-    if (!ret) {
-        xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
-                    "xf86InitFBManager initialization failed.\n");
-        goto exit;
+        DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+                "Using %d lines for off screen memory.\n",
+                AvailFBArea.y2 - pScrn->virtualY));
     }
 
-    DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO,
-                        "Frame buffer from (%d,%d) to (%d,%d).\n",
-                        AvailFBArea.x1, AvailFBArea.y1,
-                        AvailFBArea.x2, AvailFBArea.y2));
-
-    offset = (pVia->FBFreeStart + ((pScrn->bitsPerPixel >> 3) - 1)) /
-                (pScrn->bitsPerPixel >> 3);
-    size = (pVia->FBFreeEnd / (pScrn->bitsPerPixel >> 3)) - offset;
-
-    if (size > 0) {
-        ret = xf86InitFBManagerLinear(pScreen, offset, size);
-        if (!ret) {
-            xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
-                        "xf86InitFBManagerLinear initialization "
-                        "failed.\n");
-            goto exit;
+    if ((!pVia->NoAccel) && (pVia->useEXA)) {
+        if (!viaInitExa(pScreen)) {
+            ret = FALSE;
         }
     }
 
-    DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO,
-            "Using %d lines for off screen memory.\n",
-            AvailFBArea.y2 - pScrn->virtualY));
+
 exit:
     return ret;
 }
_______________________________________________
openchrome-devel mailing list
openchrome-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/openchrome-devel

Reply via email to