[OpenIndiana-discuss] Quadro 600 No Joy - Solved
Ken Gunderson
kgunders at teamcool.net
Mon Feb 28 04:20:15 UTC 2011
Well, I guess I have this solved. Sort of?? I can now startx with the
nvidia drivers loaded but one of my cores stays pegged at 80%. At least
on oi-dev148. Still need to test this fix on 148a.
I did some searching on the gfx_private error. Got lots of hits. One
of which was this OpenSolaris bug report:
<https://defect.opensolaris.org/bz/show_bug.cgi?id=9525>
This clued me into running scanpci, whereupon I noted, similarly to the
bug reports "i915 device driver is bound twice" problem, my Quadro is
also bound twice:
pci bus 0x0005 cardnum 0x00 function 0x00: vendor 0x10de device 0x0df8
nVidia Corporation Device unknown
CardVendor 0x10de card 0x0835 (nVidia Corporation, Card unknown)
STATUS 0x0010 COMMAND 0x0047
CLASS 0x03 0x00 0x00 REVISION 0xa1
BIST 0x00 HEADER 0x80 LATENCY 0x00 CACHE 0x08
BASE0 0xfa000000 SIZE 16777216 MEM
BASE1 0xc8000000 SIZE 134217728 MEM PREFETCHABLE
BASE3 0xd6000000 SIZE 33554432 MEM PREFETCHABLE
BASE5 0x00006c00 SIZE 128 I/O
BASEROM 0x00000000 addr 0x00000000
MAX_LAT 0x00 MIN_GNT 0x00 INT_PIN 0x01 INT_LINE 0x0b
pci bus 0x0005 cardnum 0x00 function 0x01: vendor 0x10de device 0x0bea
nVidia Corporation Device unknown
CardVendor 0x10de card 0x0835 (nVidia Corporation, Card unknown)
STATUS 0x0010 COMMAND 0x0046
CLASS 0x04 0x03 0x00 REVISION 0xa1
BIST 0x00 HEADER 0x80 LATENCY 0x00 CACHE 0x08
BASE0 0xfbffc000 SIZE 16384 MEM
BASEROM 0x00000000 addr 0x00000000
MAX_LAT 0x00 MIN_GNT 0x00 INT_PIN 0x02 INT_LINE 0x05
I tired running update_drv, but didn't have the correct incantation.
It was suggested that my Quadro was not being detected by Xorg. Yeah,
that much I'd groked. But why not? nVidia has subsequently released
newer drivers than those shipped with OI, so I was getting ready to give
them a try, when I spied following in the README:
The X server does not start and shows the error
"Cannot open /dev/fb (No such file or directory)"
Your graphics card may be newer than the NVIDIA Accelerated Solaris
Graphics Driver Set, meaning that its PCI device ID may not have been
included in the installation scripts and therefore not added to the
file /etc/driver_aliases. To manually register the graphics card,
proceed as follows:
* Determine the PCI device ID of your graphics card with the
command
# /usr/X11/bin/scanpci
For example a Quadro FX500 appears as:
pci bus 0x0009 cardnum 0x00 function 0x00: vendor 0x10de device 0x032b
nVidia Corporation NV34GL [Quadro FX 500/600 PCI]
The PCI vendor ID is '10de', the PCI device ID is '32b'.
* Become root and register the PCI device ID with the command
# update_drv -a -i '"pci10de,xxxx"' nvidia
xxxx is the PCI device ID returned by the scanpci command. Drop
any leading zeroes. Note that pci10de,xxxx is nested between a
set of single-quote/double-quote double-quote/single-quote. For
example:
# update_drv -a -i '"pci10de,32b"' nvidia
* Reboot with the command
# reboot -- -r
Full text here:
<http://us.download.nvidia.com/solaris/260.19.36/README/commonproblems.html>
This was just too familiar to the OpenSolaris bug report not to catch my
eye, so this time around I dropped the -v flag from scanpci. Relevant
output here:
pci bus 0x0005 cardnum 0x00 function 0x00: vendor 0x10de device 0x0df8
nVidia Corporation Device unknown
pci bus 0x0005 cardnum 0x00 function 0x01: vendor 0x10de device 0x0bea
nVidia Corporation Device unknown
Followed by;
#update_drv -a -i '"pci10de,df8"'
I'd previously been unfamiliar with the -- -r flag, and after reading
man reboot and man boot am still unclear as to just what this does, but
whatever, it seems to have done the trick, as I was presented with gdm
login welcome screen and Xorg.0.log reports that my Quadro is now being
deteched:
(II) Feb 28 04:18:59 NVIDIA(0): NVIDIA GPU Quadro 600 (GF108GL) at
PCI:5:0:0 (GPU-0)
(--) Feb 28 04:18:59 NVIDIA(0): Memory: 1048576 kBytes
(--) Feb 28 04:18:59 NVIDIA(0): VideoBIOS: 70.08.27.00.02
(II) Feb 28 04:18:59 NVIDIA(0): Detected PCI Express Link width: 16X
(--) Feb 28 04:18:59 NVIDIA(0): Interlaced video modes are supported on
this GPU
Yeah! :)
But one of my cores is pegged whilst just idling. Boo Hiss!! :(
Hmmm... just booted with the vesa drivers and core is still pegged.
Maybe not an nVidia driver issue. I'll follow up once I get a chance to
test this with 148a.
Perhaps this was obvious to Solaris guru's but I'm not and offer the
above in the hope it saves someone else some time running down similar
issue in the future.
Regards-- Ken
On Sat, 2011-02-26 at 23:45 -0700, Ken Gunderson wrote:
> Greetings All:
>
> I explored this a bit more. Got rid of the glx complaints by
> bumping /usr/X11 to top listing in "Files" section. Also installed
> xtsol, just to eliminate as even remote possibility.
>
> Only WW remaining in Xorg.0.log is now:
>
> (WW) VGA arbiter: cannot open kernel arbiter, no multi-card support
>
> EE's output is now limited to following:
>
> (EE) Feb 27 06:32:01 NVIDIA(0): Failed to initialize the NVIDIA graphics
> device!
>
> (EE) Screen(s) found, but none have a usable configuration.
>
> Trying to increment logging via startx -logverbose n doesn't provide any
> additional verbiage.
>
> Console output does generate following warning:
>
> gfx_private:WARNING:gfxp_vgatext: can't find reg entry for registers.
--
Ken Gunderson <kgunders at teamcool.net>
More information about the OpenIndiana-discuss
mailing list