Solved Open source graphics driver for Nvidia GTX650

Hi,
I'm new to FreeBSD and just performed my first install. I'm following the handbook and am now at chapter "5.4. Xorg Configuration". I've already successfully installed x11/xorg. I'm trying this as the root user, but get the same results as a regular user (who is in the wheel group).

I've already written "kern.vty=vt" to /boot/loader.conf and rebooted. I then skipped "5.4.4.", as suggested and am now at "5.4.5. Video Cards".

When I do xstart I get the simple x11 window manager. My problem is that the resolution is to low. When I execute xrandr I get this:
Code:
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 640 x 480, current 1024 x 768, maximum 1024 x 768
default connected 1024x768+0+0 0mm x 0mm
    1024x768       61.00*
    800x600        61.00
    640x480        61.00
The display (Samsung s22b350h) has a maximum resolution of 1920x1080 and is connected to an Nvidia GTX650 graphics card. There is also an on-board graphics card on my motherboard.

I guess it's a driver problem. It seems like I'm using the vesa driver. I did not install or configure any graphics driver myself. I don't want to install the proprietary x11/nvidia-driver* drivers, because I would like to keep my system open-source only.

It seems to me like this could be relevant, it's an excerpt of /var/log/Xord.0.log :
Code:
[  3681.446] (II) VESA(0): Total Memory: 224 64KB banks (14336kB)
[  3681.446] (II) VESA(0): <default monitor>: Using default hsync range of 31.50-48.00 kHz
[  3681.446] (II) VESA(0): <default monitor>: Using default vrefresh range of 50.00-70.00 Hz
[  3681.446] (II) VESA(0): <default monitor>: Using default maximum pixel clock of 65.00 MHz
[  3681.446] (WW) VESA(0): Unable to estimate virtual size
[  3681.446] (II) VESA(0): Not using built-in mode "1920x1080" (no mode of this name)
[  3681.446] (II) VESA(0): Not using built-in mode "1280x1024" (no mode of this name)
[  3681.446] (II) VESA(0): Not using built-in mode "1280x800" (no mode of this name)
[  3681.446] (II) VESA(0): Not using built-in mode "1024x768" (no mode of this name)
[  3681.446] (II) VESA(0): Not using built-in mode "800x600" (no mode of this name)
[  3681.446] (II) VESA(0): Not using built-in mode "640x480" (no mode of this name)
[  3681.446] (II) VESA(0): Not using built-in mode "640x400" (no mode of this name)
[  3681.446] (II) VESA(0): Not using built-in mode "320x400" (no mode of this name)
[  3681.446] (II) VESA(0): Not using built-in mode "320x240" (no mode of this name)
[  3681.446] (II) VESA(0): Not using built-in mode "320x200" (no mode of this name)
[  3681.446] (WW) VESA(0): No valid modes left. Trying less strict filter...
[  3681.446] (II) VESA(0): <default monitor>: Using hsync range of 31.50-48.00 kHz
[  3681.446] (II) VESA(0): <default monitor>: Using vrefresh range of 50.00-70.00 Hz
[  3681.446] (II) VESA(0): <default monitor>: Using maximum pixel clock of 65.00 MHz
[  3681.446] (WW) VESA(0): Unable to estimate virtual size
[  3681.446] (II) VESA(0): Not using built-in mode "1920x1080" (hsync out of range)
[  3681.446] (II) VESA(0): Not using built-in mode "1280x1024" (hsync out of range)
[  3681.446] (II) VESA(0): Not using built-in mode "1280x800" (hsync out of range)
[  3681.446] (II) VESA(0): Not using built-in mode "640x400" (hsync out of range)
[  3681.446] (II) VESA(0): Not using built-in mode "320x400" (hsync out of range)
[  3681.446] (II) VESA(0): Not using built-in mode "320x240" (illegal horizontal timings)
[  3681.446] (II) VESA(0): Not using built-in mode "320x200" (illegal horizontal timings)
[  3681.446] (--) VESA(0): Virtual size is 1024x768 (pitch 1024)
[  3681.446] (**) VESA(0): *Built-in mode "1024x768"
[  3681.446] (**) VESA(0): *Built-in mode "800x600"
[  3681.446] (**) VESA(0): *Built-in mode "640x480"
[  3681.446] (==) VESA(0): DPI set to (96, 96)
[  3681.447] (II) VESA(0): Attempting to use 60Hz refresh for mode "1024x768" (118)
[  3681.447] (II) VESA(0): Attempting to use 60Hz refresh for mode "800x600" (115)
[  3681.447] (II) VESA(0): Attempting to use 60Hz refresh for mode "640x480" (112)
[  3681.448] (**) VESA(0): Using "Shadow Framebuffer"

Can anyone see what's the problem here? Are there open-source alternatives to the binary nvidia-drivers?

Is the chapter "5.4.5. Video Cards" optional? I don't quite understand the relevance of this chapter, since it has no introduction.
 
Thanks for the reply, but I can't find the noveau driver in the ports (using find /usr/ports| grep noveau). Wikipedia says noveau is only available for Linux and NetBSD...
 
Since both of you suggested installing another driver I assume that you think it's a driver problem.

scottro: I'll try the x11/nvidia-driver, following the tutorial you suggested. Though it's a pity I have to give up the open-source policy for my system just to get the right resolution on my monitor; I'm not even looking for performance. :'‑(

EDIT: I needed to do this when following the tutorial, but now the resolution is correct. Thanks for your help. :)
 
Glad you got it working, though from your link, I'm not quite clear what you needed to do. Load the Linux modules? If you do it from ports, you may be able to avoid that, though that's untested by me.
 
Also x11/nvidia-driver was not installable from the ports
It is. The NVidia driver port builds a kernel module and as such it requires access to the FreeBSD source in /usr/src in order to build/link correctly. This is something everybody seems to miss.
 
Oh well, I guess I didn't read through the output enough. Thanks for clearing that up. I just don't have any concept of how a kernel works, so I didn't think of this.
 
Back
Top