Date: Friday, February 6, 2015 @ 09:02:51 Author: lcarlier Revision: 230897
upgpkg: xf86-video-neomagic 1.2.8-4 xorg-server 1.17 rebuild Modified: xf86-video-neomagic/trunk/PKGBUILD xf86-video-neomagic/trunk/git-fixes.patch Deleted: xf86-video-neomagic/trunk/shadowfb.patch -----------------+ PKGBUILD | 17 ++- git-fixes.patch | 246 +++++++++++++++++++----------------------------------- shadowfb.patch | 18 --- 3 files changed, 101 insertions(+), 180 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2015-02-06 05:01:51 UTC (rev 230896) +++ PKGBUILD 2015-02-06 08:02:51 UTC (rev 230897) @@ -3,18 +3,25 @@ pkgname=xf86-video-neomagic pkgver=1.2.8 -pkgrel=3 +pkgrel=4 pkgdesc="X.org neomagic video driver" arch=(i686 x86_64) url="http://xorg.freedesktop.org/" license=('custom') depends=('glibc') -makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=18') -conflicts=('xorg-server<1.16' 'X-ABI-VIDEODRV_VERSION<18' 'X-ABI-VIDEODRV_VERSION>=19') +makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=19') +conflicts=('xorg-server<1.16' 'X-ABI-VIDEODRV_VERSION<19' 'X-ABI-VIDEODRV_VERSION>=20') groups=('xorg-drivers' 'xorg') -source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('50abf6ac02547900edeaa5073c5f6d2f153f12dd47067cc7e4758e1b74d78874') +source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2 git-fixes.patch) +sha256sums=('50abf6ac02547900edeaa5073c5f6d2f153f12dd47067cc7e4758e1b74d78874' + 'f63912b98a8a4bad30125fd95900651141f9367f7897c88548a83abe70633511') +prepare() { + cd ${pkgname}-${pkgver} + + patch -Np1 -i ../git-fixes.patch +} + build() { cd ${pkgname}-${pkgver} Modified: git-fixes.patch =================================================================== --- git-fixes.patch 2015-02-06 05:01:51 UTC (rev 230896) +++ git-fixes.patch 2015-02-06 08:02:51 UTC (rev 230897) @@ -1,167 +1,99 @@ -diff --git a/configure.ac b/configure.ac -index 29cf772..a6eafa3 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -24,7 +24,7 @@ - AC_PREREQ([2.60]) - AC_INIT([xf86-video-neomagic], - [1.2.7], -- [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], -+ [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver/Neomagic], - [xf86-video-neomagic]) - AC_CONFIG_SRCDIR([Makefile.am]) - AC_CONFIG_HEADERS([config.h]) -@@ -53,14 +53,6 @@ AC_ARG_WITH(xorg-module-dir, - [moduledir="$withval"], - [moduledir="$libdir/xorg/modules"]) +From 74a9a343f6e156d24539b81f1224b7410acf0e38 Mon Sep 17 00:00:00 2001 +From: Adam Jackson <[email protected]> +Date: Wed, 21 May 2014 14:07:53 -0400 +Subject: Use own thunk functions instead of vgaHW*Weak + +I plan to remove the Weak functions from a future server + +Signed-off-by: Adam Jackson <[email protected]> + +diff --git a/src/neo_driver.c b/src/neo_driver.c +index 7e60f3e..1b0da34 100644 +--- a/src/neo_driver.c ++++ b/src/neo_driver.c +@@ -1439,6 +1439,12 @@ NEOShadowInit(ScreenPtr pScreen) + return TRUE; + } -- --# Store the list of server defined optional extensions in REQUIRED_MODULES --XORG_DRIVER_CHECK_EXT(RANDR, randrproto) --XORG_DRIVER_CHECK_EXT(RENDER, renderproto) --XORG_DRIVER_CHECK_EXT(XV, videoproto) --XORG_DRIVER_CHECK_EXT(DPMSExtension, xextproto) --XORG_DRIVER_CHECK_EXT(XFreeXDGA, xf86dgaproto) -- - # Obtain compiler/linker options for the driver dependencies - PKG_CHECK_MODULES(XORG, [xorg-server >= 1.0.99.901 xproto fontsproto $REQUIRED_MODULES]) - -diff --git a/src/neo.h b/src/neo.h -index 6aecc33..6812e7a 100644 ---- a/src/neo.h -+++ b/src/neo.h -@@ -320,3 +320,14 @@ typedef struct { - #define PROBED_NM2097 0x83 - #define PROBED_NM2160 0x44 - #define PROBED_NM2200 0x45 ++static Bool ++NEOSaveScreen(ScreenPtr pScreen, int mode) ++{ ++ return vgaHWSaveScreen(pScreen, mode); ++} + -+#define PCI_VENDOR_NEOMAGIC 0x10C8 -+#define PCI_CHIP_NM2070 0x0001 -+#define PCI_CHIP_NM2090 0x0002 -+#define PCI_CHIP_NM2093 0x0003 -+#define PCI_CHIP_NM2097 0x0083 -+#define PCI_CHIP_NM2160 0x0004 -+#define PCI_CHIP_NM2200 0x0005 -+#define PCI_CHIP_NM2230 0x0025 -+#define PCI_CHIP_NM2360 0x0006 -+#define PCI_CHIP_NM2380 0x0016 -diff --git a/src/neo_2090.c b/src/neo_2090.c -index 5049ab4..2f1efc8 100644 ---- a/src/neo_2090.c -+++ b/src/neo_2090.c -@@ -42,7 +42,6 @@ CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - #include "xf86.h" - #include "xf86_OSproc.h" - #include "compiler.h" --#include "xf86PciInfo.h" + /* Mandatory */ + static Bool + NEOScreenInit(SCREEN_INIT_ARGS_DECL) +@@ -1712,7 +1718,7 @@ NEOScreenInit(SCREEN_INIT_ARGS_DECL) - /* Drivers that use XAA need this */ - #include "xf86fbman.h" -diff --git a/src/neo_dga.c b/src/neo_dga.c -index b6346c5..c5d60d5 100644 ---- a/src/neo_dga.c -+++ b/src/neo_dga.c -@@ -29,7 +29,6 @@ - #include "xf86.h" - #include "xf86_OSproc.h" - #include "xf86Pci.h" --#include "xf86PciInfo.h" - #include "neo.h" - #include "neo_reg.h" - #include "dgaproc.h" -@@ -38,10 +37,10 @@ - static Bool NEO_OpenFramebuffer(ScrnInfoPtr, char **, unsigned char **, - int *, int *, int *); - static Bool NEO_SetMode(ScrnInfoPtr, DGAModePtr); --static void NEO_Sync(ScrnInfoPtr); - static int NEO_GetViewport(ScrnInfoPtr); - static void NEO_SetViewport(ScrnInfoPtr, int, int, int); - #ifdef HAVE_XAA_H -+static void NEO_Sync(ScrnInfoPtr); - static void NEO_FillRect(ScrnInfoPtr, int, int, int, int, unsigned long); - static void NEO_BlitRect(ScrnInfoPtr, int, int, int, int, int, int); - #if 0 -@@ -57,8 +56,8 @@ DGAFunctionRec NEODGAFuncs = { - NEO_SetMode, - NEO_SetViewport, - NEO_GetViewport, -- NEO_Sync, - #ifdef HAVE_XAA_H -+ NEO_Sync, - NEO_FillRect, - NEO_BlitRect, - #if 0 -@@ -219,17 +218,14 @@ NEO_FillRect ( - } - } + NEOInitVideo(pScreen); -- - static void - NEO_Sync( - ScrnInfoPtr pScrn - ){ - NEOPtr pNEO = NEOPTR(pScrn); --#ifdef HAVE_XAA_H - if(pNEO->AccelInfoRec) { - (*pNEO->AccelInfoRec->Sync)(pScrn); - } --#endif +- pScreen->SaveScreen = vgaHWSaveScreenWeak(); ++ pScreen->SaveScreen = NEOSaveScreen; + + /* Setup DPMS mode */ + if (nPtr->NeoChipset != NM2070) +@@ -3049,6 +3055,12 @@ neo_ddc1Read(ScrnInfoPtr pScrn) + return (tmp); } - static void ++static void ++neo_ddc1SetSpeed(ScrnInfoPtr pScrn, xf86ddcSpeed speed) ++{ ++ vgaHWddc1SetSpeed(pScrn, speed); ++} ++ + static xf86MonPtr + neo_ddc1(ScrnInfoPtr pScrn) + { +@@ -3063,7 +3075,7 @@ neo_ddc1(ScrnInfoPtr pScrn) + VGAwCR(0x21,0x00); + VGAwCR(0x1D,0x01); /* some Voodoo */ + VGAwGR(0xA1,0x2F); +- ret = xf86DoEDID_DDC1(XF86_SCRN_ARG(pScrn),vgaHWddc1SetSpeedWeak(),neo_ddc1Read); ++ ret = xf86DoEDID_DDC1(XF86_SCRN_ARG(pScrn),neo_ddc1SetSpeed,neo_ddc1Read); + /* undo initialization */ + VGAwCR(0x21,reg1); + VGAwCR(0x1D,reg2); +-- +cgit v0.10.2 +From 6661bdd4551e4e63e983685464a277845aed3012 Mon Sep 17 00:00:00 2001 +From: Dave Airlie <[email protected]> +Date: Sun, 21 Sep 2014 09:51:37 +1000 +Subject: neomagic: fix build against master X server. + +Signed-off-by: Dave Airlie <[email protected]> + diff --git a/src/neo_driver.c b/src/neo_driver.c -index d7369e2..a17b925 100644 +index 1b0da34..da01962 100644 --- a/src/neo_driver.c +++ b/src/neo_driver.c -@@ -60,9 +60,6 @@ CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - #include "xf86RAC.h" +@@ -1994,10 +1994,12 @@ neoMapMem(ScrnInfoPtr pScrn) + } #endif - --/* Drivers for PCI hardware need this */ --#include "xf86PciInfo.h" -- - /* Drivers that need to access the PCI config space directly need this */ - #include "xf86Pci.h" - -@@ -72,9 +69,6 @@ CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - /* All drivers initialising the SW cursor need this */ - #include "mipointer.h" - --/* All drivers implementing backing store need this */ --#include "mibstore.h" -- - /* All drivers using the mi colormap manipulation need this */ - #include "micmap.h" - -@@ -1621,7 +1615,6 @@ NEOScreenInit(SCREEN_INIT_ARGS_DECL) - "Acceleration %s Initialized\n",ret ? "" : "not"); - } - -- miInitializeBackingStore(pScreen); - xf86SetBackingStore(pScreen); - xf86SetSilkenMouse(pScreen); - -diff --git a/src/neo_i2c.c b/src/neo_i2c.c -index 82d1f2a..5bbb3fb 100644 ---- a/src/neo_i2c.c -+++ b/src/neo_i2c.c -@@ -44,7 +44,6 @@ CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - #include "compiler.h" - - #include "xf86Pci.h" --#include "xf86PciInfo.h" - - #include "vgaHW.h" - -diff --git a/src/neo_shadow.c b/src/neo_shadow.c -index 2df7657..04efe4f 100644 ---- a/src/neo_shadow.c -+++ b/src/neo_shadow.c -@@ -10,7 +10,6 @@ - - #include "xf86.h" - #include "xf86_OSproc.h" --#include "xf86PciInfo.h" - #include "xf86Pci.h" - #include "shadowfb.h" - #include "servermd.h" + } else ++#ifdef VIDMEM_MMIO + nPtr->NeoMMIOBase = + xf86MapVidMem(pScrn->scrnIndex, + VIDMEM_MMIO, nPtr->NeoMMIOAddr, + 0x200000L); ++#endif + if (nPtr->NeoMMIOBase == NULL) + return FALSE; + } +@@ -2024,10 +2026,12 @@ neoMapMem(ScrnInfoPtr pScrn) + } + #endif + else ++#ifdef VIDMEM_FRAMEBUFFER + nPtr->NeoFbBase = + xf86MapVidMem(pScrn->scrnIndex, VIDMEM_FRAMEBUFFER, + (unsigned long)nPtr->NeoLinearAddr, + nPtr->NeoFbMapSize); ++#endif + if (nPtr->NeoFbBase == NULL) + return FALSE; + return TRUE; +-- +cgit v0.10.2 + Deleted: shadowfb.patch =================================================================== --- shadowfb.patch 2015-02-06 05:01:51 UTC (rev 230896) +++ shadowfb.patch 2015-02-06 08:02:51 UTC (rev 230897) @@ -1,18 +0,0 @@ -diff -ur xf86-video-neomagic-1.2.7.orig/src/neo_driver.c xf86-video-neomagic-1.2.7/src/neo_driver.c ---- xf86-video-neomagic-1.2.7.orig/src/neo_driver.c 2012-12-26 22:14:47.876393607 -0800 -+++ xf86-video-neomagic-1.2.7/src/neo_driver.c 2012-12-26 22:17:10.011933399 -0800 -@@ -1084,9 +1084,13 @@ - xf86DrvMsg(pScrn->scrnIndex,X_CONFIG, - "Show chache for debugging\n"); - -+ /* -+ * Seems modules shadow and/or shadowfb causes black screen and dead -+ * keyboard with xorg 1.13. Just disable it for now. -+ */ - if (!xf86LoadSubModule(pScrn, "xaa")) { - xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Falling back to shadow\n"); -- nPtr->shadowFB = 1; -+ nPtr->shadowFB = 0; - } - - if (nPtr->shadowFB) {
