Man pages sections > man4 > freedreno

freedreno - X.Org driver for Adreno mobile GPUs

freedreno(4) Device Drivers Manual freedreno(4)


freedreno - X.Org driver for Adreno mobile GPUs


Section "Device"
  Identifier "devname"
  Driver "freedreno"


freedreno is an open/free Xorg driver for Adreno mobile GPUs. The driver supports either the drm/msm kernel driver (recommended) or kgsl+fbdev (for compatibility with android kernel). In the former case, it supports xrandr, page flipping, hardware cursor, etc.


freedreno supports the z180, a22x, and a3xx mobile GPUs (as found in APQ8060, APQ8060A, APQ8064, APQ8x74, etc.)


Please refer to xorg.conf(5) for general configuration details. This section only covers configuration details specific to this driver.
The following driver Options are supported
Option "Debug" "boolean"
Enable debug logging.
Default: Disabled
Option "NoAccel" "boolean"
Disable hw acceleration.
Default: Disabled
Option "SWCursor" "boolean"
Disable HW mouse cursor.
Default: Disabled
Option "SWRefresher" "boolean"
Enable SW Refresher. Only applicable for fbdev/kgsl, unused for drm/msm.
Default: Enabled
Option "examask" "integer"
Bitmask of enabled EXA functions: 1-Solid, 2-Copy, 4-Composite. Mostly intended for debugging.
Default: 7
Option "fb" "string"
Path to fbdev device file. Required to use fbdev/kgsl, unused for drm/msm.
Default: none


The driver supports runtime configuration of detected outputs. You can use the xrandr tool to control outputs on the command line as follows:
xrandr --output output --set property value
Note that you may need to quote property and value arguments that contain spaces. Each output listed below may have one or more properties associated with it (like a binary EDID block if one is found). Some outputs have unique properties which are described below. See the "MULTIHEAD CONFIGURATIONS" section below for additional information.


First DVI/HDMI output.
See xorg.conf(5) for information on associating Monitor sections with these outputs for configuration. Associating Monitor sections with each output can be helpful if you need to ignore a specific output, for example, or statically configure an extended desktop monitor layout.


The number of independent outputs is dictated by the number of CRTCs (in X parlance) a given chip supports. The actual number of displays supported will depend on the device/board. But a built-in LCD and external HDMI are a common configuration.
You can use the "xrandr" tool, or various desktop utilities, to change your output configuration at runtime. To statically configure your outputs, you can use the "Monitor-<type>" options along with additional monitor sections in your xorg.conf to create your screen topology. The example below puts the VGA output to the right of the builtin laptop screen, both running at 1024x768.
Section "Monitor"
  Identifier "Laptop FooBar Internal Display"
  Option "Position" "0 0"
Section "Monitor" Identifier "Some Random CRT" Option "Position" "1024 0" Option "RightOf" "Laptop FoodBar Internal Display" EndSection
Section "Device" Driver "freedreno" Option "monitor-LVDS" "Laptop FooBar Internal Display" Option "monitor-VGA" "Some Random CRT" EndSection


The xf86-video-freedreno driver is part of the X.Org and umbrella projects. Report bugs at Mailing lists are also commonly used to report experiences and ask questions about configuration and other topics. See for more information (the mailing list is the most appropriate place to ask X.Org and driver related questions).


Xorg(1), xorg.conf(5), Xserver(1), X(7)


Authors include: Rob Clark.
Originally/loosely based on xf86-video-msm.
xf86-video-freedreno 1.4.0 X Version 11