1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

NVIDIA Releases Its Stable 302 Driver w/ RandR 1.3

NVIDIA

Published on 16 June 2012 07:58 AM EDT
Written by Michael Larabel in NVIDIA
12 Comments

Before calling it a week, NVIDIA Linux engineers released the 302.17 stable Linux driver. This is the first stable/certified Linux driver in the 302.xx series and thus the first that brings the long-awaited RandR 1.2/1.3 support.

In early May is when NVIDIA finally introduced the RandR 1.2+ support for their proprietary Linux graphics driver. Other features were also introduced and all-around it was a great driver update for those using this NVIDIA Linux binary blob.

With the RandR 1.2/1.3 support is also some Xinerama and other display-related changes, improved rendering for RENDER bitmap text, new FSAA (Full-Scene Anti-Aliasing) modes, sync-to-vblank by default, conformant texture clamping by default in OpenGL, etc. There's also a "a new, higher resolution icon for nvidia-settings", perhaps in preparation for having Linux on the new MacBook Pro?

The NVIDIA 302.17 driver is now stable and can be downloaded at NVIDIA.com. Below is their official change-log for this major update.
- Made nvidiaXineramaInfoOrder consistent with the RRSetOutputPrimary and RRGetOutputPrimary RandR requests: changes to either nvidiaXineramaInfoOrder or RandR OutputPrimary will be reflected in the other.
- Fixed an interaction problem between RandR 1.2, ConstrainCursor, and panning that prevented panning from working properly.
- Fixed a bug that caused RandR RRNotify_CrtcChange events to not be generated when switching between MetaModes with the same total size but different layout of display devices. This bug caused some window managers to not update their layouts in response to switching same-sized MetaModes.
- Added support for desktop panning when rotation, reflection, or transformation is applied to a display device (either through RandR or through the MetaMode syntax); panning would previously be ignored in that case.
- Added an "EDID" property to RandR 1.2 outputs. This property contains the binary contents of the connected monitor's extended display identification data, which allows applications such as the GNOME display properties dialog to query information about it.
- Fixed a bug that caused audio over HDMI to not work on some GPUs after querying the RandR configuration (e.g., `xrandr -q`).
- Added the "nvidiaXineramaInfo" X configuration option to report the layout of multiple display devices within an X screen. This is enabled by default. When disabled on X servers with RandR 1.2 support, the NVIDIA X driver will report one screen-sized region. When disabled on X servers without RandR 1.2 support, no Xinerama information will be reported. For backwards compatibility, the "NoTwinViewXineramaInfo" option disables nvidiaXineramaInfo.
- Added the "nvidiaXineramaInfoOrder" X configuration option as a replacement for "TwinViewXineramaInfoOrder". For backwards compatibility, "TwinViewXineramaInfoOrder" is kept as a synonym for "nvidiaXineramaInfoOrder".
- Added the "nvidiaXineramaInfoOverride" X configuration option as a replacement for "TwinViewXineramaInfoOverride". For backwards compatibility, "TwinViewXineramaInfoOverride" is kept as a synonym for "nvidiaXineramaInfoOverride".
- Fixed a bug that prevented the use of some SLI Mosaic topologies.
- Added the "MetaModeOrientation" X configuration option as a replacement for "TwinViewOrientation". "TwinViewOrientation" is kept as a synonym for "MetaModeOrientation", for backwards compatibility.
- Added support for calculating the physical size and DPI of each RandR 1.2 Output using the EDID Detailed Timing Description.
- Fixed a bug that prevented a workaround for the invalid EDID in certain AUO laptop flat panels from being applied, leading to an 800x600 desktop repeated several times across the screen.
- Fixed a bug that caused the link configuration of DisplayPort devices to be reported incorrectly in nvidia-settings.
- Fixed a bug that caused OpenGL programs to leak file descriptors when calling exec() on themselves.
- Fixed rendering corruption at the start of new X server generation.
- Added X driver support for RandR 1.2 and RandR 1.3. See "Support for the X Resize and Rotate Extension" in the README for details.
- Extended the MetaMode X configuration option syntax with the following new attributes:
- - "Rotation" : specifies the display device's rotation
- - "Reflection" : specifies the display device's reflection
- - "Transform" : specifies a 3x3 transformation matrix to be
- - applied to the display device
- - "ViewPortOut" : specifies the region of the mode in which to
- - display pixels
- - "ViewPortIn" : specifies the size of the region in the X screen
- - to display in the ViewPortOut
- - For example, "DFP-0: nvidia-auto-select { Rotation=left }".
- - See "Configuring Multiple Display Devices on One X Screen" in the
- - README for details.
- Removed the "TwinView" X configuration option; the functionality it provided is now enabled by default.
- Previously, the NVIDIA X driver only enabled one display device for an X screen unless "TwinView" was enabled. Now, the NVIDIA X driver enables, by default, as many display devices as the GPU supports driving simultaneously. To limit how many display devices are driven by an X screen, use the "UseDisplayDevice" X configuration option.
- Added a "CurrentMetaMode" attribute to the nvidia-settings command line, to query and set the current MetaMode.
- - As an example, these two commands are equivalent:
- - xrandr --output DVI-I-2 --mode 1280x1024 --pos 0x0 --output DVI-I-3 --mode 1920x1200 --pos 1280x0
- - nvidia-settings --assign CurrentMetaMode= "DVI-I-2: 1280x1024 +0+0, DVI-I-3: 1920x1200 +1280+0"
- Removed overscan compensation configurability from NV-CONTROL and nvidia-settings. This can be configured, with finer granularity, through the ViewPortIn and ViewPortOut MetaMode attributes.See "Configuring Multiple Display Devices on One X Screen" in the README for details.
- Altered mode validation such that for digital display devices the X driver only allows, by default, modes which are reported in the EDID. Previously, the NVIDIA X driver allowed other modes, but implicitly scaled those other modes to one of the EDID modes.
- Now, only the modes in the EDID are validated and the X driver does not do any implicit scaling. Any desired scaling can be configured explicitly through the new "ViewPortIn" and "ViewPortOut" MetaMode attributes. See "Configuring Multiple Display Devices on One X Screen" in the README for details.
- Removed Flat Panel Scaling configurability in nvidia-settings. Any desired scaling can be configured through the new "ViewPortIn" and "ViewPortOut" MetaMode attributes.
- Hotplug events (specifically, the RRNotify_OutputChange RandR event) are now generated when display devices are connected and disconnected from the GPU. Many desktop environments automatically
- resize the X desktop in response to these events.
- Added display device name aliases, such that X configuration options that use display device names can refer to a display device by one of several names, including the RandR Output name for the display device. The X log reports the list of aliases for each display device.
- Updated EDID parsing to include more complete support for EDID 1.4 and more recent versions of CEA-861.
- Removed the "Rotate" X configuration option. This was used to statically rotate the X screen. Its functionality is replaced by the "Rotation" MetaMode attribute and RandR 1.2 rotation support. See the README for details.
- Removed the "RandRRotation" X configuration option. This enabled configurability of X screen rotation via RandR 1.1. Its functionality is replaced by the "Rotation" MetaMode attribute and RandR 1.2 rotation support. See the README for details.
- Removed support for the following NV-CONTROL attributes:
- - NV_CTRL_GPU_SCALING
- - NV_CTRL_GPU_SCALING_DEFAULT_TARGET
- - NV_CTRL_GPU_SCALING_DEFAULT_METHOD
- - NV_CTRL_DFP_SCALING_ACTIVE
- - NV_CTRL_GPU_SCALING_ACTIVE
- - NV_CTRL_FRONTEND_RESOLUTION
- - NV_CTRL_BACKEND_RESOLUTION
- - NV_CTRL_OVERSCAN_COMPENSATION
- - NV_CTRL_FLATPANEL_BEST_FIT_RESOLUTION
- Improved rendering performance for RENDER bitmap text.
- Enabled the OpenGL "Sync to VBlank" option by default.
- Added a new option, --restore-original-backup, to nvidia-xconfig. nvidia-xconfig creates a backup of the original X configuration file when modifying an X configuration file that does not appear
- to have been previously modified by nvidia-xconfig. This option restores a backup of the original X configuration file, if such a backup is found.
- Expose the following additional FSAA modes via NV-CONTROL, nvidia-settings, and through X visuals and GLXFBConfigs:
- - 16X multisample FSAA on all GeForce GPUs
- - Coverage sample FSAA on G80 and above GeForce GPUs
- - 32X multisample FSAA on G80 and above Quadro GPUs
- - 64X multisample FSAA on Fermi and above Quadro GPUs
- Enabled conformant texture clamping by default in OpenGL.
- Removed support for the GVO Clone mode NV-CONTROL attributes:
- - NV_CTRL_GVO_DISPLAY_X_SCREEN
- - NV_CTRL_GVO_X_SCREEN_PAN_X
- - NV_CTRL_GVO_X_SCREEN_PAN_Y
- Added a new, higher resolution icon for nvidia-settings.
- Updated the NVIDIA X driver's handling of X configuration options that affect an entire GPU, not just a particular X screen running on a GPU (e.g., "NoPowerConnectorCheck"): for such X configuration options, the X driver will now honor the option on any of the X screens configured on the GPU. Prior to this change, the NVIDIA X driver only honored such options on the first X screen configured on a GPU.
- Added a checkbox to nvidia-settings to control the texture clamping attribute. When the box is checked, OpenGL textures are clamped according to the OpenGL specification. When it is unchecked, GL_CLAMP is remapped to GL_CLAMP_TO_EDGE for borderless 2D textures.
- Removed the "Display" and "X Screen" tabs from the "X Server Display Configuration Page" of nvidia-settings, and added a new "Selection" dropdown menu for selecting X screens or display devices. This makes it easier to select X screens/Displays that are hidden.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Linux Hardware Reviews
  1. ASRock X99 Extreme3 Is An Affordable Choice For Linux Users
  2. A Walkthrough Of The New 32 System Open-Source Linux Benchmarking Test Farm
  3. Habey MITX-6771: Mini-ITX Board With Quad-Core J1900 Bay Trail
  4. OCZ Vector 150 SSD On Linux
Latest Linux Articles
  1. 17-Way Linux Graphics Card Comparison With Civilization Beyond Earth
  2. AMD Kaveri: Open-Source Radeon Gallium3D vs. Catalyst 14.12 Omega Driver
  3. 12-Way AMD Catalyst 14.12 vs. NVIDIA 346 Series Linux GPU Comparison
  4. AMD Catalyst 14.12 Omega Driver Brings Mixed Results For Linux Users
Latest Linux News
  1. Orange Pi Is The Latest Raspberry Pi Inspired ARM Board
  2. An Open-Source Hardware Ambient Light Sensor Is Brought Up
  3. Heterogeneous Memory Management Is Coming Along For The Linux Kernel
  4. NTP Is The Latest Project Struck By Security Issues
  5. LDC 0.15.1 Released For A D Compiler In LLVM
  6. Fedora Doesn't Yet Enable F2FS File-System Support
  7. XZ 5.2 Adds New Multi-Threaded Options
  8. Intel 2.99.917 X.Org Driver Released, 3.0 Release Finally Near
  9. Server-Side XCB Is Being Discussed For The X.Org Server
  10. Adreno A4xx Rendering With Freedreno Takes Shape
Latest Forum Discussions
  1. Need some hand holding with upgrading xserver
  2. Maker3D - create your 3D RPG
  3. FPS capped on Linux (AMD fglrx drivers)
  4. Looking for an nVidia GPU, but not sure how well they are supported.
  5. Speeding up systemd networking service
  6. Major Performance Breakthrough Discovered For Intel's Mesa Driver
  7. Are there an app using HSA ?
  8. The New SuperTuxKart Looks Better, But Can Cause GPU/Driver Problems