openSUSE 12.3 NVIDIA Driver: No Devices Detected

Hello All,

Does anyone have suggestions on how to get this going?

I just loaded 12.3 and used the 1-click install from opensuse.org/SDB:NVIDIA_drivers.
Ran nvidia-xconfig
Xorg.0.log reports (EE) No devices detected.

System: Lenovo T430s notebook with Nvidia 5200M graphics

RPMs installed:

rpm -qa | grep -i nvidia

nvidia-gfxG03-kmp-desktop-319.32_k3.7.10_1.1-15.1.x86_64
x11-video-nvidiaG03-319.32-15.1.x86_64
nvidia-computeG03-319.32-15.1.x86_64

lspci -v
01:00.0 3D controller: NVIDIA Corporation Device 1140 (rev a1)
Subsystem: Lenovo Device 2200
also shows

00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)

Device section of xorg.conf

Section “Device”
Identifier “Device0”
Driver “nvidia”
VendorName “NVIDIA Corporation”
EndSection

Xorg.0.log
20.224] (II) LoadModule: “glx”
20.256] (II) Loading /usr/lib64/xorg/modules/updates/extensions/libglx.so
20.659] (II) Module glx: vendor=“NVIDIA Corporation”
20.659] compiled for 4.0.2, module version = 1.0.0
20.659] Module class: X.Org Server Extension
20.659] (II) NVIDIA GLX Module 319.32 Wed Jun 19 14:55:38 PDT 2013
20.659] Loading extension GLX
20.659] (II) LoadModule: “nvidia”
20.659] (II) Loading /usr/lib64/xorg/modules/updates/drivers/nvidia_drv.so
20.736] (II) Module nvidia: vendor=“NVIDIA Corporation”
20.736] compiled for 4.0.2, module version = 1.0.0
20.736] Module class: X.Org Video Driver
20.743] (II) NVIDIA dlloader X Driver 319.32 Wed Jun 19 14:34:12 PDT 2013
20.743] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
20.743] (++) using VT number 7

20.743] (EE) No devices detected.

Thanks.

What you’re doing is not going to work, since your laptop has a dual graphics configuration, i.e. Intel/NVIDIA Optimus. What you need is Bumblebee. Search the forums for “bumblebee” and you’ll find posts on how to use Overmann79’s repo and the software in it.

This is an Optimus system (hybrid intel and nvidia graphics), so the standard nvidia driver will not work.

You have to use Bumblebee:
Smithfarm - the Brain: openSUSE 12.3: How to install ‘bumblebee’ for NVIDIA Optimus VGA

This is certainly an optimus system, but it’s also a Lenovo, many of those has a mux, i.e. you can enter the BIOS setup and toggle the settings for the graphics cards. So look into your manual and check what options you have, or enter BIOS setup and check.

The Nvidia card heats a lot.
It would be better to select the integrated one within the BIOS/UEFI firmware.
Otherwise, going for Bumblebee as already suggested.

Thanks to your help I am getting further.
I installed bumblebee and now do get accelerated graphics via the NVIDIA card, but bbswitch won’t work and the NVIDIA card is always on.

/var/log/messages shows bbswitch is not found.
Also reports: Your kernel headers for kernel 3.7.10-1.1-desktop cannot be found

There seems to be a version mismatch in what is installed. desktop installed is 3.7.10-1.1.1 while the desktop-devel is 3.7.10-1.16.

rpm -qa | grep kernel
kernel-desktop-3.7.10-1.1.1.x86_64
kernel-desktop-devel-3.7.10-1.16.1.x86_64

This was a fresh install on a new clean disk from the 12.3 DVD.
Is there a way of fixing this?

Thanks.

You should update your system. The current 12.3 kernel is 3.7.10-1.16.1.

sudo zypper patch

Or just install kernel-desktop-devel-3.7.10-1.1.1:

sudo zypper in kernel-desktop-devel-3.7.10-1.1.1

Then I guess you’ll have to reinstall at least dkms-bbswitch (well, maybe not). But better do the other dkms packages as well:

sudo zypper in -f dkms dkms-nvidia dkms-bbswitch

But I’m wondering how you managed to get the nvidia driver installed in the first place without having the appropriate kernel headers installed…

I’m making progress. Thanks to all who replied.

Running an update and reinstalling dkms packages now allows bbswitch to work and no error messages in /var/log/messages.

tee /proc/acpi/bbswitch <<<ON shows the NVIDIA card being enabled in /var/log/messages along with the laptop heating up as expected.

tee /proc/acpi/bbswitch <<<OFF shows the NVIDIA card being disabled.

primusrun glxspheres (or any other OpenGL app) segfaults.
running glxspheres without primusrun does execute.
Below is a dump of my sessions.

tee /proc/acpi/bbswitch <<ON

> glxinfo2 | grep Open
OpenGL vendor string: VMware, Inc.
OpenGL renderer string: Gallium 0.4 on llvmpipe (LLVM 0x302)
OpenGL version string: 2.1 Mesa 9.0.2
OpenGL shading language version string: 1.20
OpenGL extensions:

> primusrun glxinfo2 | grep Open
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: NVS 5200M/PCIe/SSE2
OpenGL version string: 4.3.0 NVIDIA 325.15
OpenGL shading language version string: 4.30 NVIDIA via Cg compiler
OpenGL extensions:

> glxspheres
Polygons in scene: 62464
Visual ID of window: 0x12a
Context is Direct
OpenGL Renderer: Gallium 0.4 on llvmpipe (LLVM 0x302)
^[23.121999 frames/sec - 24.026531 Mpixels/sec
^[22.226406 frames/sec - 23.095903 Mpixels/sec

[b]> primusrun glxspheres
Polygons in scene: 62464
Visual ID of window: 0x12a
Segmentation fault

Suggestions welcome.

Thanks.

Hm. Maybe you have insufficient permission for direct rendering, like in openSUSE 12.3 Release Notes
I don’t know if that applies to Bumblebee as well, but I would think so.
Although that should be fixed already if you installed all updates…

To check, run:

primusrun glxinfo2 | grep render

(I’m just guessing, since I never used Bumblebee myself)

My username does belong to the ‘video’ group.
direct rendering is enabled.

> primusrun glxinfo2 | grep render
direct rendering: Yes
OpenGL renderer string: NVS 5200M/PCIe/SSE2
GL_NV_compute_program5, GL_NV_conditional_render,
GL_NV_parameter_buffer_object2, GL_NV_path_rendering,
GL_NVX_conditional_render, GL_NVX_gpu_memory_info,

I found another post that mentioned optirun working and primusrun having problems.
optirun works for me. glxspheres and all other OpenGL apps run accelerated so I’m happy.

Thanks for taking the time to help me.