135 lines
		
	
	
		
			5.3 KiB
		
	
	
	
		
			Groff
		
	
	
	
			
		
		
	
	
			135 lines
		
	
	
		
			5.3 KiB
		
	
	
	
		
			Groff
		
	
	
	
| .\" shorthand for double quote that works everywhere.
 | |
| .ds q \N'34'
 | |
| .TH MODESETTING @drivermansuffix@ @vendorversion@
 | |
| .SH NAME
 | |
| modesetting \- video driver for framebuffer device
 | |
| .SH SYNOPSIS
 | |
| .nf
 | |
| .B "Section \*qDevice\*q"
 | |
| .BI "  Identifier \*q"  devname \*q
 | |
| .B  "  Driver \*qmodesetting\*q"
 | |
| .BI "  BusID  \*qpci:" bus : dev : func \*q
 | |
| \ \ ...
 | |
| .B EndSection
 | |
| .fi
 | |
| .SH DESCRIPTION
 | |
| .B modesetting
 | |
| is an @xservername@ driver for KMS devices.  This driver supports
 | |
| TrueColor visuals at framebuffer depths of 15, 16, 24, and 30. RandR
 | |
| 1.2 is supported for multi-head configurations. Acceleration is available
 | |
| through glamor for devices supporting at least OpenGL ES 2.0 or OpenGL 2.1.
 | |
| If glamor is not enabled, a shadow framebuffer is configured based on the
 | |
| KMS drivers' preference (unless the framebuffer is 24 bits per pixel, in
 | |
| which case the shadow framebuffer is always used).
 | |
| .SH SUPPORTED HARDWARE
 | |
| The
 | |
| .B modesetting
 | |
| driver supports all hardware where a KMS driver is available.
 | |
| modesetting uses the Linux DRM KMS ioctls and dumb object create/map.
 | |
| .SH CONFIGURATION DETAILS
 | |
| Please refer to
 | |
| .BR @xconfigfile@ (@filemansuffix@)
 | |
| for general configuration details.
 | |
| This section only covers configuration details specific to this driver.
 | |
| .PP
 | |
| For this driver it is not required to specify modes in the screen
 | |
| section of the config file.  The
 | |
| .B modesetting
 | |
| driver can pick up the currently used video mode from the kernel
 | |
| driver and will use it if there are no video modes configured.
 | |
| .PP
 | |
| For PCI boards you might have to add a BusID line to the Device
 | |
| section.  See above for a sample line.
 | |
| .PP
 | |
| The following driver
 | |
| .B Options
 | |
| are supported:
 | |
| .TP
 | |
| .BI "Option \*qSWcursor\*q \*q" boolean \*q
 | |
| Selects software cursor.  The default is
 | |
| .B off.
 | |
| .TP
 | |
| .BI "Option \*qkmsdev\*q \*q" string \*q
 | |
| The framebuffer device to use. Default: /dev/dri/card0.
 | |
| .TP
 | |
| .BI "Option \*qShadowFB\*q \*q" boolean \*q
 | |
| Enable or disable use of the shadow framebuffer layer.  Default: on.
 | |
| .TP
 | |
| .BI "Option \*qDoubleShadow\*q \*q" boolean \*q
 | |
| Double-buffer shadow updates. When enabled, the driver will keep two copies of
 | |
| the shadow framebuffer. When the shadow framebuffer is flushed, the old and new
 | |
| versions of the shadow are compared, and only tiles that have actually changed
 | |
| are uploaded to the device. This is an optimization for server-class GPUs with
 | |
| a remote display function (typically VNC), where remote updates are triggered
 | |
| by any framebuffer write, so minimizing the amount of data uploaded is crucial.
 | |
| This defaults to enabled for ASPEED and Matrox G200 devices, and disabled
 | |
| otherwise.
 | |
| .TP
 | |
| .BI "Option \*qAccelMethod\*q \*q" string \*q
 | |
| One of \*qglamor\*q or \*qnone\*q.  Default: glamor.
 | |
| .TP
 | |
| .BI "Option \*qPageFlip\*q \*q" boolean \*q
 | |
| Enable DRI3 page flipping.  The default is
 | |
| .B on.
 | |
| .TP
 | |
| .BI "Option \*qVariableRefresh\*q \*q" boolean \*q
 | |
| Enables support for enabling variable refresh on the Screen's CRTCs
 | |
| when an suitable application is flipping via the Present extension.
 | |
| .br
 | |
| The default is
 | |
| .B off.
 | |
| .TP
 | |
| .BI "Option \*qAsyncFlipSecondaries\*q \*q" boolean \*q
 | |
| Use async flips for secondary video outputs on multi-display setups. If a screen
 | |
| has multiple displays attached and DRI3 page flipping is used, then only one of
 | |
| the displays will have its page flip synchronized to vblank for tear-free
 | |
| presentation. This is the display that is used for presentation timing and
 | |
| timestamping, usually the one covering the biggest pixel area of the screen.
 | |
| All other displays ("Secondaries") will not synchronize their flips. This may
 | |
| cause some tearing on these displays, but it prevents a permanent or periodic
 | |
| slowdown or irritating judder of animations if not all video outputs are running
 | |
| synchronized with each other and with the same refresh rate. There is no perfect
 | |
| solution apart from perfectly synchronized outputs, but this option may give
 | |
| preferrable results if the displays in a multi-display setup mirror or clone
 | |
| each other.  The default is
 | |
| .B off.
 | |
| .TP
 | |
| .BI "Option \*qZaphodHeads\*q \*q" string \*q
 | |
| Specify the RandR output(s) to use with zaphod mode for a particular driver
 | |
| instance.  If you use this option you must use this option for all instances
 | |
| of the driver.
 | |
| .br
 | |
| For example:
 | |
| .B
 | |
| Option \*qZaphodHeads\*q \*qLVDS,VGA-0\*q
 | |
| will assign xrandr outputs LVDS and VGA-0 to this instance of the driver.
 | |
| .TP
 | |
| .BI "Option \*qUseGammaLUT\*q \*q" boolean \*q
 | |
| Enable or disable use of the GAMMA_LUT property, when available.
 | |
| When enabled, this option allows the driver to use gamma ramps with more
 | |
| entries, if supported by the kernel. By default, GAMMA_LUT will be used for
 | |
| kms drivers which are known to be safe for use of GAMMA_LUT.
 | |
| .TP
 | |
| .BI "Option \*qTearFree\*q \*q" boolean \*q
 | |
| Enable tearing prevention using the hardware page flipping mechanism.
 | |
| It allocates two extra scanout buffers for each CRTC and utilizes damage
 | |
| tracking to minimize buffer copying and skip unnecessary flips when the
 | |
| screen's contents have not changed. It works on transformed screens too, such
 | |
| as rotated and scaled CRTCs. When PageFlip is enabled, fullscreen DRI
 | |
| applications will still have the discretion to not use tearing prevention.
 | |
| .br
 | |
| The default is
 | |
| .B on.
 | |
| .TP
 | |
| .BI "Option \*qAtomic\*q \*q" boolean \*q
 | |
| Enable atomic modesetting when supported.  The default is
 | |
| .B off.
 | |
| .TP
 | |
| .SH "SEE ALSO"
 | |
| .BR @xservername@ (@appmansuffix@),
 | |
| .BR @xconfigfile@ (@filemansuffix@),
 | |
| .BR Xserver (@appmansuffix@),
 | |
| .BR X (@miscmansuffix@)
 | |
| .SH AUTHORS
 | |
| Authors include: Dave Airlie
 |