rpms/xorg-x11-drv-openchrome/devel openchrome-pcirework.patch, NONE, 1.1 xorg-x11-drv-openchrome.spec, 1.2, 1.3

Xavier Bachelot (xavierb) fedora-extras-commits at redhat.com
Sat Dec 8 13:33:57 UTC 2007


Author: xavierb

Update of /cvs/pkgs/rpms/xorg-x11-drv-openchrome/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv26029

Modified Files:
	xorg-x11-drv-openchrome.spec 
Added Files:
	openchrome-pcirework.patch 
Log Message:
Preliminary libpciaccess support.


openchrome-pcirework.patch:

--- NEW FILE openchrome-pcirework.patch ---
Index: /branches/experimental_branch/configure.ac
===================================================================
--- /branches/experimental_branch/configure.ac (revision 417)
+++ /branches/experimental_branch/configure.ac (revision 452)
@@ -78,4 +78,12 @@
 # Checks for header files.
 AC_HEADER_STDC
+AC_CHECK_HEADER(xf86Modes.h,[XMODES=yes],[XMODES=no],[#include "xorg-server.h"])
+AC_CHECK_DECL(XSERVER_LIBPCIACCESS,
+             [XSERVER_LIBPCIACCESS=yes],[XSERVER_LIBPCIACCESS=no],
+             [#include "xorg/xorg-server.h"])
+
+if test x$XSERVER_LIBPCIACCESS = xyes; then
+       PKG_CHECK_MODULES([PCIACCESS], [pciaccess >= 0.8.0])
+fi
 
 if test "$DRI" != no; then
@@ -130,14 +138,10 @@
 
 # Check the ABI_VIDEODRV_VERSION
-SAVE_CPPFLAGS="$CPPFLAGS"
-CPPFLAGS="$CPPFLAGS $XORG_CFLAGS"
+SAVE_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS $XORG_CFLAGS"
 		
 if test "x$have_xf86Module_h" = xyes; then
 AC_MSG_CHECKING([whether to use old Xv ABI])
         AC_PREPROC_IFELSE([AC_LANG_PROGRAM([[
-#include "xf86Module.h"
-#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 1
-#error Old Xv ABI
-#endif
                            ]])],
                            [OLD_XVABI=no],
@@ -148,5 +152,7 @@
 fi
 
-CPPFLAGS="$SAVE_CPPFLAGS"
+CFLAGS="$SAVE_CFLAGS"
+
+
 
 if test "x$OLD_XVABI" = xyes; then
@@ -155,4 +161,9 @@
                 echo "no."
                 AC_DEFINE(USE_NEW_XVABI, 1, [Use new Xv ABI (7.1RC1+)])
+fi
+
+AM_CONDITIONAL(XSERVER_LIBPCIACCESS, test x$XSERVER_LIBPCIACCESS = xyes)
+if test "$XSERVER_LIBPCIACCESS" = yes; then
+        AC_DEFINE(XSERVER_LIBPCIACCESS,1,[Enable libpciaccess])
 fi
 
Index: /branches/experimental_branch/src/via_driver.c
===================================================================
--- /branches/experimental_branch/src/via_driver.c (revision 426)
+++ /branches/experimental_branch/src/via_driver.c (revision 452)
@@ -62,5 +62,28 @@
 
 static void VIAIdentify(int flags);
+#if XSERVER_LIBPCIACCESS
+struct pci_device *
+via_host_bridge (void)
+{
+    static const struct pci_slot_match bridge_match = {
+        0, 0, 0, PCI_MATCH_ANY, 0
+    };
+    struct pci_device_iterator  *slot_iterator;
+    struct pci_device           *bridge;
+
+    slot_iterator = pci_slot_match_iterator_create (&bridge_match);
+    bridge = pci_device_next (slot_iterator);
+    pci_iterator_destroy (slot_iterator);
+    return bridge;
+}
+
+static Bool via_pci_probe (DriverPtr          drv,
+                           int                entity_num,
+                           struct pci_device  *dev,
+                           intptr_t           match_data);
+#else
 static Bool VIAProbe(DriverPtr drv, int flags);
+#endif
+
 static Bool VIASetupDefaultOptions(ScrnInfoPtr pScrn);
 static Bool VIAPreInit(ScrnInfoPtr pScrn, int flags);
@@ -87,15 +110,44 @@
 static void VIALoadRgbLut(ScrnInfoPtr pScrn, int numColors, int *indices, LOCO *colors, VisualPtr pVisual);
 
-DriverRec VIA =
+#if XSERVER_LIBPCIACCESS
+
+#define VIA_DEVICE_MATCH(d,i) \
+    { 0x1106, (d), PCI_MATCH_ANY, PCI_MATCH_ANY, 0, 0, (i) }
+
+static const struct pci_id_match via_device_match[] = {
+   VIA_DEVICE_MATCH (PCI_CHIP_VT3204, 0 ),
+   VIA_DEVICE_MATCH (PCI_CHIP_VT3259, 0 ),
+   VIA_DEVICE_MATCH (PCI_CHIP_CLE3122, 0 ),
+   VIA_DEVICE_MATCH (PCI_CHIP_VT3205, 0 ),
+   VIA_DEVICE_MATCH (PCI_CHIP_VT3314, 0 ),
+   VIA_DEVICE_MATCH (PCI_CHIP_VT3336, 0 ),
+   VIA_DEVICE_MATCH (PCI_CHIP_VT3364, 0 ),
+   VIA_DEVICE_MATCH (PCI_CHIP_VT3324, 0 ),
+   VIA_DEVICE_MATCH (PCI_CHIP_VT3327, 0 ),
+    { 0, 0, 0 },
+};
+
+#endif /* XSERVER_LIBPCIACCESS */
+
+_X_EXPORT DriverRec VIA =
 {
     VIA_VERSION,
     DRIVER_NAME,
     VIAIdentify,
+#if XSERVER_LIBPCIACCESS
+    NULL,
+#else
     VIAProbe,
+#endif
     VIAAvailableOptions,
     NULL,
-    0
+    0,
+    NULL,
+#if XSERVER_LIBPCIACCESS
+    via_device_match,
+    via_pci_probe
+#endif
+
 };
-
 
 /* Supported chipsets */
@@ -419,5 +471,5 @@
 };
 
-XF86ModuleData openchromeModuleData = {&VIAVersRec, VIASetup, NULL};
+_X_EXPORT XF86ModuleData openchromeModuleData = {&VIAVersRec, VIASetup, NULL};
 
 static pointer VIASetup(pointer module, pointer opts, int *errmaj, int *errmin)
@@ -427,5 +479,11 @@
     if (!setupDone) {
         setupDone = TRUE;
-        xf86AddDriver(&VIA, module, 0);
+        xf86AddDriver(&VIA, module,
+#if XSERVER_LIBPCIACCESS
+                     HaveDriverFuncs
+#else
+                     0
+#endif
+                     );
         LoaderRefSymLists(vgaHWSymbols,
 #ifdef USE_FB
@@ -514,4 +572,45 @@
     xf86PrintChipsets("VIA", "driver for VIA chipsets", VIAChipsets);
 } /* VIAIdentify */
+
+#if XSERVER_LIBPCIACCESS
+static Bool via_pci_probe (DriverPtr          driver,
+                           int                entity_num,
+                           struct pci_device  *device,
+                           intptr_t           match_data)
+{
+    ScrnInfoPtr     scrn = NULL;
+    EntityInfoPtr   entity;
+    DevUnion        *private;
+
+    scrn = xf86ConfigPciEntity (scrn, 0, entity_num, VIAPciChipsets,
+                                NULL,
+                                NULL, NULL, NULL, NULL);
+
+    if (scrn != NULL)
+    {
+        scrn->driverVersion = VIA_VERSION;
+        scrn->driverName = DRIVER_NAME;
+        scrn->name = "VIA";
+        scrn->Probe = NULL;
+
+        entity = xf86GetEntityInfo (entity_num);
+
+        scrn->PreInit = VIAPreInit;
+        scrn->ScreenInit = VIAScreenInit;
+        scrn->SwitchMode = VIASwitchMode;
+        scrn->AdjustFrame = VIAAdjustFrame;
+        scrn->EnterVT = VIAEnterVT;
+        scrn->LeaveVT = VIALeaveVT;
+        scrn->FreeScreen = VIAFreeScreen;
+        scrn->ValidMode = ViaValidMode;
+
+        xf86Msg(X_NOTICE, "VIA Technologies does not support or endorse this driver in any way.\n");
+        xf86Msg(X_NOTICE, "For support, please refer to http://www.openchrome.org/ or\n");
+        xf86Msg(X_NOTICE, "your X vendor.\n");
+     }
+     return scrn != NULL;
+}
+#else /* XSERVER_LIBPCIACCESS */
+
 
 static Bool VIAProbe(DriverPtr drv, int flags)
@@ -559,4 +658,5 @@
             ScrnInfoPtr pScrn = xf86AllocateScreen(drv, 0);
             EntityInfoPtr pEnt;
+            
             if ((pScrn = xf86ConfigPciEntity(pScrn, 0, usedChips[i],
                  VIAPciChipsets, 0, 0, 0, 0, 0)))
@@ -626,4 +726,5 @@
 
 } /* VIAProbe */
+#endif /* else XSERVER_LIBPCIACCESS */
 
 #ifdef XF86DRI
@@ -952,5 +1053,6 @@
     } else {
         from = X_PROBED;
-        pVia->ChipId = pVia->PciInfo->chipType;
+        //pVia->ChipId = pVia->PciInfo->chipType;
+        pVia->ChipId = DEVICE_ID(pVia->PciInfo); 
         pVia->Chipset = LookupChipID(VIAPciChipsets, pVia->ChipId);
         pScrn->chipset = (char *)xf86TokenToString(VIAChipsets,
@@ -961,4 +1063,5 @@
 
     if (pEnt->device->chipRev >= 0) {
+        xf86DrvMsg(pScrn->scrnIndex, from, "Borked 1\n");
         pVia->ChipRev = pEnt->device->chipRev;
         xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, "ChipRev override: %d\n",
@@ -967,5 +1070,12 @@
     else {
         /* Read PCI bus 0, dev 0, function 0, index 0xF6 to get chip revision */
+#if XSERVER_LIBPCIACCESS
+        struct pci_device *bridge = via_host_bridge ();
+
+        pci_device_cfg_read_u32 (bridge, &  pVia->ChipRev, 0xF6);
+#else
+        xf86DrvMsg(pScrn->scrnIndex, from, "Borked 2\n");
         pVia->ChipRev = pciReadByte(pciTag(0, 0, 0), 0xF6);
+#endif
     }
 
@@ -1355,6 +1465,8 @@
     /* maybe throw in some more sanity checks here */
 
+#if !XSERVER_LIBPCIACCESS
     pVia->PciTag = pciTag(pVia->PciInfo->bus, pVia->PciInfo->device,
                           pVia->PciInfo->func);
+#endif
 
     if (!VIAMapMMIO(pScrn)) {
@@ -1384,5 +1496,7 @@
 	       "...Finished parsing config file options.\n");
 
+#ifndef XSERVER_LIBPCIACCESS
     ViaCheckCardId(pScrn);   
+#endif
 
     /* Read memory bandwidth from registers */
@@ -1427,5 +1541,5 @@
         case VIA_PM800:
         case VIA_VM800:
-        case VIA_K8M800:
+  //      case VIA_K8M800:
             pScrn->videoRam = ( 1 << ( ( pciReadByte(pciTag(0, 0, 3), 0xA1) & 0x70 ) >> 4 ) ) << 10 ;
             break;
@@ -2066,9 +2180,17 @@
 {
     VIAPtr pVia = VIAPTR(pScrn);
+#if XSERVER_LIBPCIACCESS
+    int err;
+#endif
 
     DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "VIAMapMMIO\n"));
 
+#if XSERVER_LIBPCIACCESS
+    pVia->FrameBufferBase = pVia->PciInfo->regions[0].base_addr;
+    pVia->MmioBase = pVia->PciInfo->regions[1].base_addr;
+#else
     pVia->FrameBufferBase = pVia->PciInfo->memBase[0];
     pVia->MmioBase = pVia->PciInfo->memBase[1];
+#endif
 
     xf86DrvMsg(pScrn->scrnIndex, X_PROBED,
@@ -2076,6 +2198,26 @@
                pVia->MmioBase, VIA_MMIO_REGSIZE);
 
-    pVia->MapBase = xf86MapPciMem(pScrn->scrnIndex, VIDMEM_MMIO, pVia->PciTag,
-                                  pVia->MmioBase, VIA_MMIO_REGSIZE);
+    #if XSERVER_LIBPCIACCESS
+        err = pci_device_map_range (pVia->PciInfo,
+                                    pVia->MmioBase,
+                                    VIA_MMIO_REGSIZE,
+                                    (PCI_DEV_MAP_FLAG_WRITABLE
+                                    |PCI_DEV_MAP_FLAG_WRITE_COMBINE),
+                                    (void **) &pVia->MapBase);
+
+        if (err)
+        {
+            xf86DrvMsg (pScrn->scrnIndex, X_ERROR,
+                        "Unable to map mmio BAR. %s (%d)\n",
+                        strerror (err), err);
+            return FALSE;
+        }
+    #else
+        pVia->MapBase = xf86MapPciMem(pScrn->scrnIndex, VIDMEM_MMIO, 
+                                      pVia->PciTag,
+                                      pVia->MmioBase, VIA_MMIO_REGSIZE);
+        if (!pVia->MapBase)
+            return FALSE;
+    #endif
 
     xf86DrvMsg(pScrn->scrnIndex, X_PROBED,
@@ -2083,7 +2225,27 @@
                pVia->MmioBase + VIA_MMIO_BLTBASE, VIA_MMIO_BLTSIZE);
 
-    pVia->BltBase = xf86MapPciMem(pScrn->scrnIndex, VIDMEM_MMIO, pVia->PciTag,
-                                  pVia->MmioBase + VIA_MMIO_BLTBASE,
-                                  VIA_MMIO_BLTSIZE);
+    #if XSERVER_LIBPCIACCESS
+        err = pci_device_map_range (pVia->PciInfo,
+                                    pVia->MmioBase + VIA_MMIO_BLTBASE,
+                                    VIA_MMIO_BLTSIZE,
+                                    (PCI_DEV_MAP_FLAG_WRITABLE
+                                    |PCI_DEV_MAP_FLAG_WRITE_COMBINE),
+                                    (void **) &pVia->BltBase);
+
+        if (err)
+        {
+            xf86DrvMsg (pScrn->scrnIndex, X_ERROR,
+                        "Unable to map blt BAR. %s (%d)\n",
+                        strerror (err), err);
+            return FALSE;
+        }
+    #else
+        pVia->BltBase = xf86MapPciMem(pScrn->scrnIndex, VIDMEM_MMIO,
+                                      pVia->PciTag,
+                                      pVia->MmioBase + VIA_MMIO_BLTBASE,
+                                      VIA_MMIO_BLTSIZE);
+        if (!pVia->BltBase)
+            return FALSE;
+    #endif
 
     if (!pVia->MapBase || !pVia->BltBase) {
@@ -2097,4 +2259,5 @@
     /* Memory mapped IO for Mpeg Engine */
     pVia->MpegMapBase = pVia->MapBase + 0xc00;
+    return TRUE;
 
     /* Set up MMIO vgaHW */
@@ -2115,8 +2278,8 @@
 
 	/* Enable MMIO */
-	if (pVia->IsSecondary)
+	/*if (pVia->IsSecondary)
 	    ViaSeqMask(hwp, 0x1A, 0x38, 0x38);
 	else
-	    ViaSeqMask(hwp, 0x1A, 0x68, 0x68);
+	    ViaSeqMask(hwp, 0x1A, 0x68, 0x68);*/
 
 	vgaHWGetIOBase(hwp);
@@ -2130,4 +2293,7 @@
 {
     VIAPtr pVia = VIAPTR(pScrn);
+#if XSERVER_LIBPCIACCESS
+    int err;
+#endif
 
     DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "VIAMapFB\n"));
@@ -2144,4 +2310,5 @@
 	 */
 
+#ifndef XSERVER_LIBPCIACCESS
         unsigned char *tmp; 
         tmp = xf86MapPciMem(pScrn->scrnIndex, VIDMEM_MMIO,
@@ -2162,8 +2329,22 @@
                         pVia->videoRambytes);
 
+#endif
 	/*
 	 * End of hack.
 	 */
 
+#if XSERVER_LIBPCIACCESS
+        err = pci_device_map_range (pVia->PciInfo, pVia->FrameBufferBase,
+                                    pVia->videoRambytes,
+                                    PCI_DEV_MAP_FLAG_WRITABLE,
+                                    (void **) &pVia->FBBase);
+        if (err) 
+        {
+            xf86DrvMsg (pScrn->scrnIndex, X_ERROR,
+                        "Unable to map mmio BAR. %s (%d)\n",
+                        strerror (err), err);
+            return FALSE;
+        }
+#else
         pVia->FBBase = xf86MapPciMem(pScrn->scrnIndex, VIDMEM_FRAMEBUFFER,
                                      pVia->PciTag, pVia->FrameBufferBase,
@@ -2175,4 +2356,5 @@
             return FALSE;
         }
+#endif
 
         pVia->FBFreeStart = (pScrn->displayWidth * pScrn->bitsPerPixel >> 3) *
@@ -2185,5 +2367,9 @@
     }
 
+#if XSERVER_LIBPCIACCESS
+    pScrn->memPhysBase = pVia->PciInfo->regions[0].base_addr;
+#else
     pScrn->memPhysBase = pVia->PciInfo->memBase[0];
+#endif
     pScrn->fbOffset = 0;
     if(pVia->IsSecondary) pScrn->fbOffset = pScrn->videoRam << 10;
@@ -2203,4 +2389,14 @@
     ViaSeqMask(VGAHWPTR(pScrn), 0x1A, 0x00, 0x60);
 
+#ifdef XSERVER_LIBPCIACCESS
+    if (pVia->MapBase)
+        pci_device_unmap_range(pVia->PciInfo, (pointer)pVia->MapBase, VIA_MMIO_REGSIZE);
+
+    if (pVia->BltBase)
+        pci_device_unmap_range(pVia->PciInfo, (pointer)pVia->BltBase, VIA_MMIO_BLTSIZE);
+
+    if (pVia->FBBase)
+        pci_device_unmap_range(pVia->PciInfo, (pointer)pVia->FBBase, pVia->videoRambytes);
+#else 
     if (pVia->MapBase)
         xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pVia->MapBase, VIA_MMIO_REGSIZE);
@@ -2211,4 +2407,5 @@
     if (pVia->FBBase)
         xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pVia->FBBase, pVia->videoRambytes);
+#endif
 }
 
Index: /branches/experimental_branch/src/via_driver.h
===================================================================
--- /branches/experimental_branch/src/via_driver.h (revision 417)
+++ /branches/experimental_branch/src/via_driver.h (revision 452)
@@ -67,4 +67,8 @@
 #include "via_3d.h"
 
+#ifdef XSERVER_LIBPCIACCESS
+#include <pciaccess.h>
+#endif
+
 #ifdef XF86DRI
 #define _XF86DRI_SERVER_
@@ -235,6 +239,13 @@
 
     CloseScreenProcPtr  CloseScreen;
-    pciVideoPtr         PciInfo;
-    PCITAG              PciTag;
+    #if XSERVER_LIBPCIACCESS
+        struct pci_device *PciInfo;
+        int mmio_bar;
+        int fb_bar;
+        PCITAG PciTag;
+    #else
+        pciVideoPtr PciInfo;
+        PCITAG PciTag;
+    #endif
     int                 Chipset;
     int                 ChipId;
Index: /branches/experimental_branch/src/via_dri.c
===================================================================
--- /branches/experimental_branch/src/via_dri.c (revision 417)
+++ /branches/experimental_branch/src/via_dri.c (revision 452)
@@ -112,7 +112,13 @@
     pVIADRI->irqEnabled = drmGetInterruptFromBusID
 	(pVia->drmFD,
+#if XSERVER_LIBPCIACCESS
+         ((pVia->PciInfo->domain << 8) | pVia->PciInfo->bus),
+         pVia->PciInfo->dev, pVia->PciInfo->func
+#else
 	 ((pciConfigPtr)pVia->PciInfo->thisCard)->busnum,
 	 ((pciConfigPtr)pVia->PciInfo->thisCard)->devnum,
-	 ((pciConfigPtr)pVia->PciInfo->thisCard)->funcnum);
+	 ((pciConfigPtr)pVia->PciInfo->thisCard)->funcnum
+#endif
+         );
     if ((drmCtlInstHandler(pVia->drmFD, pVIADRI->irqEnabled))) {
 	xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
@@ -678,7 +684,13 @@
     pDRIInfo->busIdString = xalloc(64);
     sprintf(pDRIInfo->busIdString, "PCI:%d:%d:%d",
+#if XSERVER_LIBPCIACCESS
+        ((pVia->PciInfo->domain << 8) | pVia->PciInfo->bus),
+        pVia->PciInfo->dev, pVia->PciInfo->func
+#else
         ((pciConfigPtr)pVia->PciInfo->thisCard)->busnum,
         ((pciConfigPtr)pVia->PciInfo->thisCard)->devnum,
-        ((pciConfigPtr)pVia->PciInfo->thisCard)->funcnum);
+        ((pciConfigPtr)pVia->PciInfo->thisCard)->funcnum
+#endif
+        );
     pDRIInfo->ddxDriverMajorVersion = VIA_DRIDDX_VERSION_MAJOR;
     pDRIInfo->ddxDriverMinorVersion = VIA_DRIDDX_VERSION_MINOR;
Index: /branches/experimental_branch/src/via.h
===================================================================
--- /branches/experimental_branch/src/via.h (revision 417)
+++ /branches/experimental_branch/src/via.h (revision 452)
@@ -26,5 +26,5 @@
 #define _VIA_H_ 1
 
-#include "xorgVersion.h"
+//#include "xorgVersion.h"
 
 #include <errno.h>
@@ -665,3 +665,19 @@
 #define VBE_DEFAULT_REFRESH                     6000
 
+#if XSERVER_LIBPCIACCESS
+#define VIA_MEMBASE(p,n)  (p)->regions[(n)].base_addr
+#define VENDOR_ID(p)      (p)->vendor_id
+#define DEVICE_ID(p)      (p)->device_id
+#define SUBVENDOR_ID(p)          (p)->subvendor_id
+#define SUBSYS_ID(p)      (p)->subdevice_id
+#define CHIP_REVISION(p)  (p)->revision
+#else
+#define VIA_MEMBASE(p,n)  (p)->memBase[n]
+#define VENDOR_ID(p)      (p)->vendor
+#define DEVICE_ID(p)      (p)->chipType
+#define SUBVENDOR_ID(p)          (p)->subsysVendor
+#define SUBSYS_ID(p)      (p)->subsysCard
+#define CHIP_REVISION(p)  (p)->chipRev
+#endif
+
 #endif /* _VIA_H_ */
Index: /branches/experimental_branch/src/via_id.c
===================================================================
--- /branches/experimental_branch/src/via_id.c (revision 417)
+++ /branches/experimental_branch/src/via_id.c (revision 452)
@@ -253,4 +253,5 @@
  *
  */
+#ifndef XSERVER_LIBPCIACCESS
 void
 ViaCheckCardId(ScrnInfoPtr pScrn)
@@ -279,3 +280,3 @@
     pVia->Id = NULL;
 }
-
+#endif


Index: xorg-x11-drv-openchrome.spec
===================================================================
RCS file: /cvs/pkgs/rpms/xorg-x11-drv-openchrome/devel/xorg-x11-drv-openchrome.spec,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- xorg-x11-drv-openchrome.spec	28 Nov 2007 16:00:33 -0000	1.2
+++ xorg-x11-drv-openchrome.spec	8 Dec 2007 13:33:25 -0000	1.3
@@ -9,7 +9,7 @@
 Summary:	Xorg X11 openchrome video driver
 Name:		xorg-x11-drv-openchrome
 Version:	0.2.900
-Release:	8%{?dist}
+Release:	9%{?dist}
 URL:		http://www.openchrome.org
 License:	MIT
 Group:		User Interface/X Hardware Support
@@ -21,6 +21,7 @@
 Patch1:		openchrome-vt1625_NTSC_modes2.patch
 Patch2:		openchrome-vt1625_720x576_pal.patch
 Patch3:		openchrome-this_is_0_2_900_release.patch
+Patch4:         openchrome-pcirework.patch
 ExclusiveArch:	%{ix86} x86_64
 
 BuildRequires:	pkgconfig
@@ -57,8 +58,10 @@
 %patch1 -p0 -b .vt1625_NTSC_modes
 %patch2 -p0 -b .vt1625_PAL_720x576
 %patch3 -p0 -b .release
+%patch4 -p3 -b .pcirework
 
 %build
+autoreconf
 %configure --disable-static --enable-dri
 make
 
@@ -104,6 +107,9 @@
 
 
 %changelog
+* Fri Dec 08 2007 Xavier Bachelot <xavier AT bachelot DOT org> - 0.2.900-9
+- Add patch for preliminary libpciaccess support.
+
 * Wed Nov 28 2007 Adam Jackson <ajax at redhat.com> 0.2.900-8
 - Obsolete xorg-x11-drv-via.  The king is dead, long live the king.
 - Munge xorg.conf in %%post to change from via to openchrome.




More information about the fedora-extras-commits mailing list