Summary: | nv driver gives only black screen and mouse pointer for Geforce 8300 GS | ||||||
---|---|---|---|---|---|---|---|
Product: | xorg | Reporter: | zebulon <zebul666> | ||||
Component: | Driver/nVidia (open) | Assignee: | Aaron Plattner <aplattner> | ||||
Status: | RESOLVED FIXED | QA Contact: | Xorg Project Team <xorg-team> | ||||
Severity: | normal | ||||||
Priority: | medium | CC: | aplattner, ku.b | ||||
Version: | 7.5 (2009.10) | ||||||
Hardware: | Other | ||||||
OS: | All | ||||||
Whiteboard: | |||||||
i915 platform: | i915 features: | ||||||
Attachments: |
|
Description
zebulon
2010-02-17 11:33:22 UTC
Created attachment 33364 [details]
Xorg.0.log
The problem is that xserver 1.7 contains a bug where it fails to call the LoadPalette driver hook, leaving the palette uninitialized. To implement the new-style hooks, I'd need to create a separate LUT per display, which I don't have time to do right now. In the meantime, you could simply disable the LUT entirely by (and this is completely untested) changing this line in g80_display.c from C(0x00000840 + headOff, pScrn->depth == 8 ? 0x80000000 : 0xc0000000); to C(0x00000840 + headOff, 0); I just pushed a change that might fix this. Please give it a try: Author: Aaron Plattner <aplattner@nvidia.com> Date: Mon Mar 1 14:26:51 2010 -0800 Bug #26612: Separate LUTs per output. Wire up the RandR 1.2 gamma_set hook. Call it from G80SetPalette like the Intel driver does. Signed-off-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Andy Ritger <aritger@nvidia.com> Reviewed-by: Christian Zander <chzander@nvidia.com> :100644 100644 0cb9860... 8c8e5bd... M src/g80_display.c :100644 100644 2031fed... 43c6e12... M src/g80_display.h :100644 100644 13e417a... 8ea45af... M src/g80_driver.c i am terribly sorry. i just tried 2.1.16 and this was working fine but not 2.1.15. 2.1.15 add a patch here and X segfaults without the patch to 2.1.15. +static void +G80DispGammaSet(xf86CrtcPtr crtc, CARD16 *red, CARD16 *green, CARD16 *blue, + int size) +{ +} + static const xf86CrtcFuncsRec g80_crtc_funcs = { .dpms = G80CrtcDPMSSet, .save = NULL, @@ -654,7 +660,7 @@ static const xf86CrtcFuncsRec g80_crtc_f .mode_fixup = G80CrtcModeFixup, .prepare = G80CrtcPrepare, .mode_set = G80CrtcModeSet, - // .gamma_set = G80DispGammaSet, + .gamma_set = G80DispGammaSet, .commit = G80CrtcCommit, .shadow_create = NULL, .shadow_destroy = NULL, so may be it's not a surprise i get a black screen with an empty function like that ? i used 2.1.16 without any patch and repeat it worked. at least, the git version is still working here. but i did not recompiled X or any other package except the nv driver. still using 1.7.5 as seen in Xorg.log.0 p.s.: previouly i meant had not add Sorry, I should have been more clear. The change is in git, but it's not in any release yet. 2.1.16 doesn't contain my change. You should be able to build it like this: git clone git://anongit.freedesktop.org/git/xorg/driver/xf86-video-nv cd xf86-video-nv ./autogen.sh --prefix=/usr make sudo make install You'll need to have autoconf and automake installed for that to work. this was clear to me. i wanted to make clear that i did not tested the latest stable nor did mention the version that fails, in my bug report. Okay, got it. Thanks for testing. Marking fixed. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.