FreeBSD Bugzilla – Attachment 82297 Details for
Bug 117726
x11/xorg - xorg7.3/mga ignores modeline definitions in /etc/X11/xorg.conf + other weird things.
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
mga.diff
mga.diff (text/x-diff; charset=us-ascii), 6.07 KB, created by
Stanislav Sedov
on 2007-11-03 17:35:58 UTC
(
hide
)
Description:
mga.diff
Filename:
MIME Type:
Creator:
Stanislav Sedov
Created:
2007-11-03 17:35:58 UTC
Size:
6.07 KB
patch
obsolete
>Index: Makefile >=================================================================== >RCS file: /work/src/fbsd-cvs/ports/x11-drivers/xf86-video-mga/Makefile,v >retrieving revision 1.3 >diff -u -r1.3 Makefile >--- Makefile 9 Oct 2007 19:13:08 -0000 1.3 >+++ Makefile 3 Nov 2007 13:41:52 -0000 >@@ -6,7 +6,8 @@ > # > > PORTNAME= xf86-video-mga >-PORTVERSION= 1.9.100 >+PORTVERSION= 1.4.7 >+PORTEPOCH= 1 > CATEGORIES= x11-drivers > > MAINTAINER= x11@FreeBSD.org >Index: distinfo >=================================================================== >RCS file: /work/src/fbsd-cvs/ports/x11-drivers/xf86-video-mga/distinfo,v >retrieving revision 1.3 >diff -u -r1.3 distinfo >--- distinfo 9 Oct 2007 19:13:08 -0000 1.3 >+++ distinfo 13 Sep 2007 19:44:49 -0000 >@@ -1,3 +1,3 @@ >-MD5 (xorg/driver/xf86-video-mga-1.9.100.tar.bz2) = 3e80cfb84b62866d2f94774ecbf3e46c >-SHA256 (xorg/driver/xf86-video-mga-1.9.100.tar.bz2) = e8efee8d5269eb29f9bd499db3d47a6a4d3c320d4b0a24874cdf7b598ad77a5c >-SIZE (xorg/driver/xf86-video-mga-1.9.100.tar.bz2) = 369119 >+MD5 (xorg/driver/xf86-video-mga-1.4.7.tar.bz2) = a7f0857a1d7fa0f615bd18515775d2af >+SHA256 (xorg/driver/xf86-video-mga-1.4.7.tar.bz2) = a1c3a91f3d5f17ffc21fdb5ed3c1bcc953ab6602fbfaae2954ae7bd5e9ee5952 >+SIZE (xorg/driver/xf86-video-mga-1.4.7.tar.bz2) = 389212 >Index: files/patch-src_mga_driver.c >=================================================================== >RCS file: files/patch-src_mga_driver.c >diff -N files/patch-src_mga_driver.c >--- /dev/null 1 Jan 1970 00:00:00 -0000 >+++ files/patch-src_mga_driver.c 2 Nov 2007 20:08:24 -0000 >@@ -0,0 +1,104 @@ >+--- src/mga_driver.c.orig 2007-11-02 23:07:21.000000000 +0300 >++++ src/mga_driver.c 2007-11-02 23:08:19.000000000 +0300 >+@@ -2775,30 +2775,31 @@ >+ MGAPtr pMga = MGAPTR(pScrn); >+ #ifdef XSERVER_LIBPCIACCESS >+ struct pci_device *const dev = pMga->PciInfo; >+- int err; >++ struct pci_mem_region *region; >++ void **memory[2]; >++ int i, err; >+ #endif >+ >+ >+ if (!pMga->FBDev) { >+ #ifdef XSERVER_LIBPCIACCESS >+- err = pci_device_map_region(dev, 0, TRUE); >+- if (err) { >+- xf86DrvMsg(pScrn->scrnIndex, X_ERROR, >+- "Unable to map BAR 0. %s (%d)\n", >+- strerror(err), err); >+- return FALSE; >+- } >++ memory[pMga->io_bar] = &pMga->IOBase; >++ memory[pMga->framebuffer_bar] = &pMga->FbBase; >+ >+- err = pci_device_map_region(dev, 1, TRUE); >+- if (err) { >+- xf86DrvMsg(pScrn->scrnIndex, X_ERROR, >+- "Unable to map BAR 1. %s (%d)\n", >+- strerror(err), err); >+- return FALSE; >+- } >++ for (i = 0; i < 2; i++) { >++ region = &dev->regions[i]; >++ err = pci_device_map_range(dev, >++ region->base_addr, region->size, >++ PCI_DEV_MAP_FLAG_WRITABLE, >++ memory[i]); >+ >+- pMga->IOBase = dev->regions[ pMga->io_bar ].memory; >+- pMga->FbBase = dev->regions[ pMga->framebuffer_bar ].memory; >++ if (err) { >++ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, >++ "Unable to map BAR %i. %s (%d)\n", >++ i, strerror(err), err); >++ return FALSE; >++ } >++ } >+ #else >+ /* >+ * For Alpha, we need to map SPARSE memory, since we need >+@@ -2839,15 +2840,17 @@ >+ pMga->ILOADBase = NULL; >+ if (pMga->iload_bar != -1) { >+ #ifdef XSERVER_LIBPCIACCESS >+- err = pci_device_map_region(dev, pMga->iload_bar, TRUE); >++ region = &dev->regions[pMga->iload_bar]; >++ err = pci_device_map_range(dev, >++ region->base_addr, region->size, >++ PCI_DEV_MAP_FLAG_WRITABLE, >++ (void *) &pMga->ILOADBase); >+ if (err) { >+ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, >+ "Unable to map BAR 2 (ILOAD region). %s (%d)\n", >+ strerror(err), err); >+ return FALSE; >+ } >+- >+- pMga->ILOADBase = dev->regions[pMga->iload_bar].memory; >+ #else >+ pMga->ILOADBase = xf86MapPciMem(pScrn->scrnIndex, >+ VIDMEM_MMIO | VIDMEM_MMIO_32BIT | >+@@ -2877,8 +2880,10 @@ >+ >+ if (!pMga->FBDev) { >+ #ifdef XSERVER_LIBPCIACCESS >+- pci_device_unmap_region(dev, 0); >+- pci_device_unmap_region(dev, 1); >++ pci_device_unmap_range(dev, pMga->IOBase, >++ dev->regions[pMga->io_bar].size); >++ pci_device_unmap_range(dev, pMga->FbBase, >++ dev->regions[pMga->framebuffer_bar].size); >+ #else >+ xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pMga->IOBase, 0x4000); >+ xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pMga->FbBase, pMga->FbMapSize); >+@@ -2889,15 +2894,10 @@ >+ fbdevHWUnmapMMIO(pScrn); >+ } >+ >+- if ((pMga->iload_bar != -1) >+-#ifdef XSERVER_LIBPCIACCESS >+- && (dev->regions[pMga->iload_bar].memory != NULL) >+-#else >+- && (pMga->ILOADBase != NULL) >+-#endif >+- ) { >++ if ((pMga->iload_bar != -1) && (pMga->ILOADBase != NULL)) { >+ #ifdef XSERVER_LIBPCIACCESS >+- pci_device_unmap_region(dev, pMga->iload_bar); >++ pci_device_unmap_range(dev, pMga->ILOADBase, >++ dev->regions[pMga->iload_bar].size); >+ #else >+ xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pMga->ILOADBase, 0x800000); >+ #endif >Index: files/patch-src_mga_exa.c >=================================================================== >RCS file: files/patch-src_mga_exa.c >diff -N files/patch-src_mga_exa.c >--- /dev/null 1 Jan 1970 00:00:00 -0000 >+++ files/patch-src_mga_exa.c 2 Nov 2007 20:08:24 -0000 >@@ -0,0 +1,29 @@ >+--- src/mga_exa.c.orig 2007-11-02 23:07:24.000000000 +0300 >++++ src/mga_exa.c 2007-11-02 23:08:14.000000000 +0300 >+@@ -758,6 +758,7 @@ >+ while (INREG (MGAREG_Status) & 0x10000); >+ } >+ >++#ifdef XF86DRI >+ static void >+ init_dri(ScrnInfoPtr pScrn) >+ { >+@@ -831,6 +832,7 @@ >+ MGA_BUFFER_ALIGN) & ~MGA_BUFFER_ALIGN; >+ dri->backPitch = widthBytes; >+ } >++#endif /* XF86DRI */ >+ >+ Bool >+ mgaExaInit(ScreenPtr pScreen) >+@@ -891,8 +893,10 @@ >+ pExa->UploadToScreen = mgaUploadToScreen; >+ pExa->DownloadFromScreen = mgaDownloadFromScreen; >+ >++#ifdef XF86DRI >+ if (pMga->directRenderingEnabled) >+ init_dri(pScrn); >++#endif >+ >+ return exaDriverInit(pScreen, pExa); >+ }
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 117726
: 82297
Working