Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=xorg74.git;a=commitdiff;h=d37bdc5fb56a13a4637602b200bb7b4b6e49ecbb
commit d37bdc5fb56a13a4637602b200bb7b4b6e49ecbb Author: Krisztian VASAS <i...@frugalware.org> Date: Sat Jan 3 10:30:43 2009 +0100 xf86-video-nv-2.1.12-1-i686 - version bump - added some patches diff --git a/source/x11/xf86-video-nv/01-fix_for_xorg_bug_18099.patch b/source/x11/xf86-video-nv/01-fix_for_xorg_bug_18099.patch new file mode 100644 index 0000000..1d2a244 --- /dev/null +++ b/source/x11/xf86-video-nv/01-fix_for_xorg_bug_18099.patch @@ -0,0 +1,49 @@ +diff --git a/src/g80_driver.c b/src/g80_driver.c +index 50d55a0..ad8a424 100644 +--- a/src/g80_driver.c ++++ b/src/g80_driver.c +@@ -206,11 +206,8 @@ G80PreInit(ScrnInfoPtr pScrn, int flags) + CARD32 tmp; + memType BAR1sizeKB; + +- if(flags & PROBE_DETECT) { +- xf86DrvMsg(pScrn->scrnIndex, X_ERROR, +- "G80 PROBE_DETECT unimplemented\n"); +- return FALSE; +- } ++ if(flags & PROBE_DETECT) ++ return TRUE; + + /* Check the number of entities, and fail if it isn't one. */ + if(pScrn->numEntities != 1) +diff --git a/src/nv_driver.c b/src/nv_driver.c +index 831e90b..faf73a9 100644 +--- a/src/nv_driver.c ++++ b/src/nv_driver.c +@@ -77,11 +77,22 @@ static Bool NVModeInit(ScrnInfoPtr pScrn, DisplayModePtr mode); + static Bool NVSetModeVBE(ScrnInfoPtr pScrn, DisplayModePtr pMode); + + #if XSERVER_LIBPCIACCESS +-/* For now, just match any NVIDIA PCI device and sort through them in the probe +- * routine */ ++/* For now, just match any NVIDIA display device and sort through them in the ++ * probe routine */ ++ ++/* ++ * libpciaccess's masks are shifted by 8 bits compared to the ones in xf86Pci.h. ++ */ ++#define LIBPCIACCESS_CLASS_SHIFT (PCI_CLASS_SHIFT - 8) ++#define LIBPCIACCESS_CLASS_MASK (PCI_CLASS_MASK >> 8) ++ + static const struct pci_id_match NVPciIdMatchList[] = { +- { PCI_VENDOR_NVIDIA, PCI_MATCH_ANY, PCI_MATCH_ANY, PCI_MATCH_ANY, 0, 0, 0 }, +- { PCI_VENDOR_NVIDIA_SGS, PCI_MATCH_ANY, PCI_MATCH_ANY, PCI_MATCH_ANY, 0, 0, 0}, ++ { PCI_VENDOR_NVIDIA, PCI_MATCH_ANY, PCI_MATCH_ANY, PCI_MATCH_ANY, ++ PCI_CLASS_DISPLAY << LIBPCIACCESS_CLASS_SHIFT, LIBPCIACCESS_CLASS_MASK, 0 }, ++ ++ { PCI_VENDOR_NVIDIA_SGS, PCI_MATCH_ANY, PCI_MATCH_ANY, PCI_MATCH_ANY, ++ PCI_CLASS_DISPLAY << LIBPCIACCESS_CLASS_SHIFT, LIBPCIACCESS_CLASS_MASK, 0 }, ++ + { 0, 0, 0 } + }; + #endif diff --git a/source/x11/xf86-video-nv/02-nv34_panel_tweak_for_toshiba_tecra_m2.patch b/source/x11/xf86-video-nv/02-nv34_panel_tweak_for_toshiba_tecra_m2.patch new file mode 100644 index 0000000..ab6f8d3 --- /dev/null +++ b/source/x11/xf86-video-nv/02-nv34_panel_tweak_for_toshiba_tecra_m2.patch @@ -0,0 +1,28 @@ +diff --git a/src/nv_dac.c b/src/nv_dac.c +index b1049cc..a256d0a 100644 +--- a/src/nv_dac.c ++++ b/src/nv_dac.c +@@ -42,8 +42,21 @@ NVDACPanelTweaks(NVPtr pNv, NVRegPtr state) + we can do is experiment and apply hacks. */ + + if(((pNv->Chipset & 0xffff) == 0x0328) && (state->bpp == 32)) { +- /* At least one NV34 laptop needs this workaround. */ +- tweak = -1; ++#if XSERVER_LIBPCIACCESS ++ if (((pNv->PciInfo->subvendor_id & 0xffff) == 0x1179) && ++ ((pNv->PciInfo->subdevice_id & 0xffff) == 0x0020)) ++#else ++ if (((pNv->PciInfo->subsysVendor & 0xffff) == 0x1179) && ++ ((pNv->PciInfo->subsysCard & 0xffff) == 0x0020)) ++#endif ++ { ++ ++ /* Toshiba Tecra M2 */ ++ tweak = 1; ++ } else { ++ /* At least one NV34 laptop needs this workaround. */ ++ tweak = -1; ++ } + } + + if((pNv->Chipset & 0xfff0) == 0x0310) { diff --git a/source/x11/xf86-video-nv/FrugalBuild b/source/x11/xf86-video-nv/FrugalBuild index 10cf5cd..4781376 100644 --- a/source/x11/xf86-video-nv/FrugalBuild +++ b/source/x11/xf86-video-nv/FrugalBuild @@ -2,15 +2,20 @@ # Maintainer: Christian Hamar alias krix <kr...@linuxforum.hu> pkgname=xf86-video-nv -pkgver=2.1.7 +pkgver=2.1.12 pkgrel=1 pkgdesc="X.Org driver for NVidia cards" url="http://xorg.freedesktop.org" groups=('x11' 'xorg-core' 'xorg-drivers') archs=('i686' 'x86_64' 'ppc') -depends=('xorg-server>=1.4.0.90') +depends=('xorg-server>=1.5.99.3') makedepends=('randrproto' 'renderproto' 'videoproto' 'xf86dgaproto') Finclude xorg -sha1sums=('cfca8a16b1c43b24513ae38a1f6b09ada99f3d14') +source=(${sour...@]} \ + '01-fix_for_xorg_bug_18099.patch' \ + '02-nv34_panel_tweak_for_toshiba_tecra_m2.patch') +sha1sums=('d468596e6ffb41582cd3b214e42fc0004cc93418' \ + 'afca1d252901b0a067a7ba4f5f68f76279223a99' \ + '715808d932be5d99c60a4cadacf7e041617871eb') # optimization OK _______________________________________________ Frugalware-git mailing list Frugalware-git@frugalware.org http://frugalware.org/mailman/listinfo/frugalware-git