Features/NouveauModesetting

From FedoraProject

< Features(Difference between revisions)
Jump to: navigation, search
 
(5 intermediate revisions by 3 users not shown)
Line 10: Line 10:
 
== Current status ==
 
== Current status ==
 
* Targeted release: [[Releases/{{FedoraVersion||next}} | {{FedoraVersion|long|next}} ]]  
 
* Targeted release: [[Releases/{{FedoraVersion||next}} | {{FedoraVersion|long|next}} ]]  
* Last updated: 2009-02-27
+
* Last updated: 2009-04-17
* Percentage of completion: 50%
+
* Percentage of completion: 100%
  
The current nouveau packages in rawhide have some code for G8x/G9x chips, not currently recommended for use however.  This will be updated before the feature freeze.
+
The code is in F11, and from the testing received, seems to work almost everywhere the 2D driver modesetting code does, and in some places where the 2D driver doesn't work.
 +
 
 +
Smooth transitions to gdm, and between virtual consoles and other X servers is very fast.
  
 
== Detailed Description ==
 
== Detailed Description ==
Line 44: Line 46:
 
== Documentation ==
 
== Documentation ==
 
Related links:
 
Related links:
* https://fedoraproject.org/wiki/Features/KernelModesetting
+
* [[Features/KernelModesetting]]
  
 
== Release Notes ==
 
== Release Notes ==
Line 54: Line 56:
 
* See [[Talk:Features/NouveauModesetting]]
 
* See [[Talk:Features/NouveauModesetting]]
  
[[Category:FeatureReadyForWrangler]]
+
[[Category:FeatureAcceptedF11]]
 
<!-- When your feature page is completed and ready for review -->
 
<!-- When your feature page is completed and ready for review -->
 
<!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler -->
 
<!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler -->
 
<!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete-->
 
<!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete-->
 
<!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process -->
 
<!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process -->

Latest revision as of 04:52, 17 April 2009

Contents

[edit] Nouveau Kernel Modesetting

[edit] Summary

Currently, modes are initialised by the 2D driver on X server startup. Kernel Modesetting (KMS) moves all of this into the kernel.

[edit] Owner

  • Name: BenSkeggs
  • email: bskeggs@redhat.com

[edit] Current status

  • Targeted release: Fedora 22
  • Last updated: 2009-04-17
  • Percentage of completion: 100%

The code is in F11, and from the testing received, seems to work almost everywhere the 2D driver modesetting code does, and in some places where the 2D driver doesn't work.

Smooth transitions to gdm, and between virtual consoles and other X servers is very fast.

[edit] Detailed Description

With KMS, output setup services move from being the job of the 2D X driver, to being the job of a kernel driver. Historically, the X server was responsible for saving output state when it started up, and then restoring it when it switched back to text mode. Fast user switching was accomplished with a VT switch, so switching away from the first user's X server would blink once to go to text mode, then immediately blink again to go to the second user's session.

With KMS, a simple default policy is loaded into the kernel for initial output setup, which means connected displays should go to their native resolution as early as possible. Graphical display services, like the X server and the new Plymouth boot manager, simply reuse the existing display settings if they match what is desired. This allows for a seamless transition between bootup and login screen. Fast user switching can also take advantage of this; if both users have the same screen resolutions, then there's no need to blink to transition, and even if they're different, the kernel can make the switch exactly once (instead of twice like before).

Finally, since the kernel is aware of which regions of video memory are being displayed, it can print panic messages to the display, which will assist with troubleshooting.

[edit] Benefit to Fedora

The feature will provide users of supported NVIDIA hardware a smoother startup sequence, with less flashing caused by multiple display mode changes. Additionally, the speed of switching between X and a console, or multiple X servers (fast user switching) will be greatly improved.

[edit] Scope

The primary target for this feature in this release is GeForce 8/9 series chipsets. If there's time before the feature freeze, code for the earlier chipsets may appear.

[edit] How To Test

When nouveau.modeset=1 is selected on the kernel commandline on a supported chipset, plymouth should run with a graphical splash screen. Otherwise, plymouth should run in the fallback text mode.

For each configuration, X startup and shutdown needs to work as expected, both when plymouth is enabled and when it is disabled. Additionally, fast user switching must be tested and working.

[edit] User Experience

This feature will be disabled by default on release, so there will be no impact to users unless they chose to enable the feature themselves. If a user enables the feature, the immediate change they should notice is a much nicer graphical boot.

[edit] Dependencies

None. The required supporting code already exists in Fedora, as used by the Radeon and Intel drivers.

[edit] Contingency Plan

None necessary, the non-KMS boot sequence will remain the default for this release.

[edit] Documentation

Related links:

[edit] Release Notes

Will need to document how to enable the feature at boot time, as well as any bugs/caveats that the user may experience.

To enable: nouveau.modeset=1 on the kernel commandline

[edit] Comments and Discussion