Kernel Mode Setting

Kernel Mode Setting is a feature that allows the kernel to switch resolution without reinitializing the graphics card/driver.

It is especially nice when using a framebuffer, which enables the kernel to display graphics on an otherwise text only console. This resolves the need for a separate framebuffer driver (such as the ones detailed in Framebuffer) to enable a high resolution console.

Currently, the Intel GMA, nouveau and radeon drivers support Kernel Mode Setting.

Kernel Settings
Video card drivers which support KMS do not need specific framebuffer drivers. In fact, building a kernel with them may cause all-black console screen or other graphical artifacts, so they should all be disabled.

You should make sure you disable all framebuffer drivers following the *** Frame buffer hardware drivers *** heading in :

Enabling Modesetting
If you didn't set Enable modesetting on by default in your kernel you will need to pass  .modeset=1 to the kernel. An example using GRUB where  .modeset=1 gets passed to the kernel:

For grub2 the configuration file in the /boot directory is usually not manually edited. Rather, you need to add/modify this line:

Replace radeon with your driver.

Troubleshooting
Generally, a properly configured kernel is all that you need for KMS. It should read the EDID information, and use the highest available resolution.

Forcing a Resolution
If you get a black screen, an incorrect resolution or want to specify the resolution to use, you can force a resolution on the kernel command-line. This can be useful if KMS auto detection fails with rare/incorrect EDID from the monitor.

When using a driver utilizing Kernel Mode Setting, you do not specify any driver name in the video= parameter. For example, setting the screen resolution to 1280x1024, 24bps at 75Hz would be just: video=1280x1024-24@75

If it doesn't seem to have any effect, you may need to specify the output interface explictly: video=VGA-1:1280x1024-24@75 You can read the commit message of this feature for further details.

Disabling Modesetting
If you want to disable KMS you will need to pass nomodeset to the kernel. Example:

For grub2 remove the parameter with which it is enabled or remove the entire line in:

Links

 * Intel GMA
 * radeon
 * nouveau