2005-04-16 15:20:36 -07:00
#
# Drm device configuration
#
# This driver provides support for the
# Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher.
#
2007-10-16 01:29:39 -07:00
menuconfig DRM
2005-04-16 15:20:36 -07:00
tristate "Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)"
2013-08-18 12:54:25 +02:00
depends on (AGP || AGP=n) && !EMULATED_CMPXCHG && MMU && HAS_DMA
2012-11-21 15:31:35 +01:00
select HDMI
2014-08-06 10:08:32 +02:00
select FB_CMDLINE
2008-12-13 18:21:08 +10:00
select I2C
select I2C_ALGOBIT
2011-11-25 15:21:02 +00:00
select DMA_SHARED_BUFFER
2005-04-16 15:20:36 -07:00
help
Kernel-level support for the Direct Rendering Infrastructure (DRI)
introduced in XFree86 4.0. If you say Y here, you need to select
the module that's right for your graphics card from the list below.
These modules provide support for synchronization, security, and
DMA transfers. Please see <http://dri.sourceforge.net/> for more
details. You should also select and configure AGP
2010-05-27 13:40:25 -06:00
(/dev/agpgart) support if it is available for your platform.
2005-04-16 15:20:36 -07:00
2013-12-04 16:35:12 +01:00
config DRM_MIPI_DSI
bool
depends on DRM
2016-01-21 15:10:19 -08:00
config DRM_DP_AUX_CHARDEV
bool "DRM DP AUX Interface"
depends on DRM
help
Choose this option to enable a /dev/drm_dp_auxN node that allows to
read and write values to arbitrary DPCD registers on the DP aux
channel.
2009-09-08 11:08:32 +10:00
config DRM_KMS_HELPER
2009-09-07 15:45:33 +10:00
tristate
depends on DRM
2013-10-08 17:44:47 +02:00
help
CRTC helpers for KMS drivers.
config DRM_KMS_FB_HELPER
bool
depends on DRM_KMS_HELPER
2009-09-07 15:45:33 +10:00
select FB
2011-01-20 14:44:16 -08:00
select FRAMEBUFFER_CONSOLE if !EXPERT
2011-04-22 07:51:33 +10:00
select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE
2015-07-31 16:21:41 +05:30
select FB_SYS_FOPS
2015-07-31 16:21:42 +05:30
select FB_SYS_FILLRECT
select FB_SYS_COPYAREA
select FB_SYS_IMAGEBLIT
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
2016-04-28 17:18:33 +02:00
select FB_DEFERRED_IO
2009-09-07 15:45:33 +10:00
help
2013-10-08 17:44:47 +02:00
FBDEV helpers for KMS drivers.
2009-09-07 15:45:33 +10:00
2015-08-05 12:28:57 +05:30
config DRM_FBDEV_EMULATION
bool "Enable legacy fbdev support for your modesetting driver"
depends on DRM
select DRM_KMS_HELPER
select DRM_KMS_FB_HELPER
default y
help
Choose this option if you have a need for the legacy fbdev
support. Note that this support also provides the linux console
support on top of your modesetting driver.
If in doubt, say "Y".
2012-03-18 22:37:33 +01:00
config DRM_LOAD_EDID_FIRMWARE
bool "Allow to specify an EDID data set instead of probing for it"
depends on DRM_KMS_HELPER
help
Say Y here, if you want to use EDID data to be loaded from the
/lib/firmware directory or one of the provided built-in
data sets. This may be necessary, if the graphics adapter or
monitor are unable to provide appropriate EDID data. Since this
feature is provided as a workaround for broken hardware, the
default case is N. Details and instructions how to build your own
EDID data are given in Documentation/EDID/HOWTO.txt.
2009-06-10 15:20:19 +02:00
config DRM_TTM
2009-06-05 14:42:42 +02:00
tristate
2009-06-10 15:20:19 +02:00
depends on DRM
help
GPU memory management subsystem for devices with multiple
GPU memory types. Will be enabled automatically if a device driver
uses it.
2012-06-27 15:30:18 +02:00
config DRM_GEM_CMA_HELPER
bool
2016-01-20 15:02:05 -08:00
depends on DRM
2012-06-27 15:30:18 +02:00
help
Choose this if you need the GEM CMA helper functions
2012-07-02 16:37:47 +02:00
config DRM_KMS_CMA_HELPER
bool
2016-01-20 15:02:05 -08:00
depends on DRM
2012-07-02 16:37:47 +02:00
select DRM_GEM_CMA_HELPER
2013-10-08 17:44:47 +02:00
select DRM_KMS_FB_HELPER
2012-07-02 16:37:47 +02:00
select FB_SYS_FILLRECT
select FB_SYS_COPYAREA
select FB_SYS_IMAGEBLIT
help
Choose this if you need the KMS CMA helper functions
2013-01-24 21:46:07 +00:00
source "drivers/gpu/drm/i2c/Kconfig"
2005-04-16 15:20:36 -07:00
config DRM_TDFX
tristate "3dfx Banshee/Voodoo3+"
depends on DRM && PCI
help
Choose this option if you have a 3dfx Banshee or Voodoo3 (or later),
graphics card. If M is selected, the module will be called tdfx.
2015-04-02 19:48:39 +01:00
source "drivers/gpu/drm/arm/Kconfig"
2005-04-16 15:20:36 -07:00
config DRM_R128
tristate "ATI Rage 128"
depends on DRM && PCI
2009-08-23 18:37:26 +01:00
select FW_LOADER
2005-04-16 15:20:36 -07:00
help
Choose this option if you have an ATI Rage 128 graphics card. If M
is selected, the module will be called r128. AGP support for
this card is strongly suggested (unless you have a PCI version).
config DRM_RADEON
tristate "ATI Radeon"
depends on DRM && PCI
2009-06-05 14:42:42 +02:00
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
2009-08-29 14:53:51 +01:00
select FW_LOADER
2009-09-08 11:09:50 +10:00
select DRM_KMS_HELPER
2013-10-08 17:44:47 +02:00
select DRM_KMS_FB_HELPER
2009-09-08 11:09:50 +10:00
select DRM_TTM
2010-05-21 15:41:20 +10:00
select POWER_SUPPLY
2010-07-02 12:58:16 -04:00
select HWMON
2013-01-21 13:58:46 +01:00
select BACKLIGHT_CLASS_DEVICE
2015-08-14 12:50:11 +02:00
select BACKLIGHT_LCD_SUPPORT
2014-07-30 11:49:56 -04:00
select INTERVAL_TREE
2005-04-16 15:20:36 -07:00
help
Choose this option if you have an ATI Radeon graphics card. There
are both PCI and AGP versions. You don't need to choose this to
2006-03-20 20:23:13 +01:00
run the Radeon in plain VGA mode.
2007-11-05 12:50:58 +10:00
2005-04-16 15:20:36 -07:00
If M is selected, the module will be called radeon.
2010-02-01 11:35:47 +10:00
source "drivers/gpu/drm/radeon/Kconfig"
2015-04-20 16:55:21 -04:00
config DRM_AMDGPU
tristate "AMD GPU"
depends on DRM && PCI
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
select FW_LOADER
select DRM_KMS_HELPER
select DRM_KMS_FB_HELPER
select DRM_TTM
select POWER_SUPPLY
select HWMON
select BACKLIGHT_CLASS_DEVICE
2015-08-14 12:50:12 +02:00
select BACKLIGHT_LCD_SUPPORT
2015-04-20 16:55:21 -04:00
select INTERVAL_TREE
help
Choose this option if you have a recent AMD Radeon graphics card.
If M is selected, the module will be called amdgpu.
source "drivers/gpu/drm/amd/amdgpu/Kconfig"
2015-12-02 17:46:21 -05:00
source "drivers/gpu/drm/amd/powerplay/Kconfig"
2015-04-20 16:55:21 -04:00
2015-09-22 17:05:20 -04:00
source "drivers/gpu/drm/amd/acp/Kconfig"
2012-03-16 18:19:14 +10:00
source "drivers/gpu/drm/nouveau/Kconfig"
2005-04-16 15:20:36 -07:00
config DRM_I810
tristate "Intel I810"
2011-01-25 23:17:15 +01:00
# !PREEMPT because of missing ioctl locking
depends on DRM && AGP && AGP_INTEL && (!PREEMPT || BROKEN)
2005-04-16 15:20:36 -07:00
help
Choose this option if you have an Intel I810 graphics card. If M is
selected, the module will be called i810. AGP support is required
for this driver to work.
2013-10-09 09:18:51 +02:00
source "drivers/gpu/drm/i915/Kconfig"
2013-08-13 16:23:17 -07:00
2005-04-16 15:20:36 -07:00
config DRM_MGA
tristate "Matrox g200/g400"
2010-07-09 07:43:27 +10:00
depends on DRM && PCI
2009-08-23 18:34:25 +01:00
select FW_LOADER
2005-04-16 15:20:36 -07:00
help
Choose this option if you have a Matrox G200, G400 or G450 graphics
card. If M is selected, the module will be called mga. AGP
support is required for this driver to work.
config DRM_SIS
tristate "SiS video cards"
depends on DRM && AGP
2008-08-24 17:11:22 +10:00
depends on FB_SIS || FB_SIS=n
2005-04-16 15:20:36 -07:00
help
2007-11-05 12:50:58 +10:00
Choose this option if you have a SiS 630 or compatible video
2005-04-16 15:20:36 -07:00
chipset. If M is selected the module will be called sis. AGP
support is required for this driver to work.
2005-06-28 22:48:56 +10:00
config DRM_VIA
tristate "Via unichrome video cards"
2010-07-09 07:43:27 +10:00
depends on DRM && PCI
2005-06-28 22:48:56 +10:00
help
Choose this option if you have a Via unichrome or compatible video
chipset. If M is selected the module will be called via.
2005-08-07 15:43:54 +10:00
config DRM_SAVAGE
tristate "Savage video cards"
2010-07-09 07:43:27 +10:00
depends on DRM && PCI
2005-08-07 15:43:54 +10:00
help
Choose this option if you have a Savage3D/4/SuperSavage/Pro/Twister
chipset. If M is selected the module will be called savage.
2011-10-04 19:19:01 +09:00
2015-03-04 16:33:41 -08:00
config DRM_VGEM
tristate "Virtual GEM provider"
depends on DRM
help
Choose this option to get a virtual graphics memory manager,
as used by Mesa's software renderer for enhanced performance.
If M is selected the module will be called vgem.
2011-10-11 10:42:51 +02:00
source "drivers/gpu/drm/exynos/Kconfig"
2014-08-22 18:36:26 +08:00
source "drivers/gpu/drm/rockchip/Kconfig"
2011-10-11 10:42:51 +02:00
source "drivers/gpu/drm/vmwgfx/Kconfig"
2011-11-03 18:22:48 +00:00
source "drivers/gpu/drm/gma500/Kconfig"
2010-12-15 07:14:24 +10:00
source "drivers/gpu/drm/udl/Kconfig"
drm: Initial KMS driver for AST (ASpeed Technologies) 2000 series (v2)
This is the initial driver for the Aspeed Technologies chips found in
servers. This driver supports the AST 2000, 2100, 2200, 2150 and 2300. It
doesn't support the AST11xx due to lack of hw to test it on, and them requiring
different codepaths.
This driver is intended to be used with xf86-video-modesetting in userspace.
This driver has a slightly different design than other KMS drivers, but
future server chips will probably share similiar setup. As these GPUs commonly
have low video RAM, it doesn't make sense to put the kms console in VRAM
always. This driver places the kms console into system RAM, and does dirty
updates to a copy in video RAM. When userspace sets a new scanout buffer,
it forcefully evicts the video RAM console, and X can create a framebuffer
that can use all of of video RAM.
This driver uses TTM but in a very simple fashion to control the eviction
to system RAM of the console, and multiple servers.
v2: add s/r support, fix Kconfig.
Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-02-29 13:40:04 +00:00
source "drivers/gpu/drm/ast/Kconfig"
2012-04-17 15:01:25 +01:00
source "drivers/gpu/drm/mgag200/Kconfig"
2012-04-17 14:12:29 +01:00
source "drivers/gpu/drm/cirrus/Kconfig"
2012-04-26 13:53:59 +02:00
2012-08-15 13:59:49 +01:00
source "drivers/gpu/drm/armada/Kconfig"
2015-01-06 11:13:28 +01:00
source "drivers/gpu/drm/atmel-hlcdc/Kconfig"
2013-06-19 13:54:11 +02:00
source "drivers/gpu/drm/rcar-du/Kconfig"
2012-04-26 13:53:59 +02:00
source "drivers/gpu/drm/shmobile/Kconfig"
2012-11-15 21:28:22 +00:00
2015-10-29 09:36:23 +01:00
source "drivers/gpu/drm/sun4i/Kconfig"
2013-02-11 12:43:09 -05:00
source "drivers/gpu/drm/omapdrm/Kconfig"
2013-02-21 09:31:47 +10:00
2013-01-08 15:04:28 -06:00
source "drivers/gpu/drm/tilcdc/Kconfig"
drm: add new QXL driver. (v1.4)
QXL is a paravirtual graphics device used by the Spice virtual desktop
interface.
The drivers uses GEM and TTM to manage memory, the qxl hw fencing however
is quite different than normal TTM expects, we have to keep track of a number
of non-linear fence ids per bo that we need to have released by the hardware.
The releases are freed from a workqueue that wakes up and processes the
release ring.
releases are suballocated from a BO, there are 3 release categories, drawables,
surfaces and cursor cmds. The hw also has 3 rings for commands, cursor and release handling.
The hardware also have a surface id tracking mechnaism and the driver encapsulates it completely inside the kernel, userspace never sees the actual hw surface
ids.
This requires a newer version of the QXL userspace driver, so shouldn't be
enabled until that has been placed into your distro of choice.
Authors: Dave Airlie, Alon Levy
v1.1: fixup some issues in the ioctl interface with padding
v1.2: add module device table
v1.3: fix nomodeset, fbcon leak, dumb bo create, release ring irq,
don't try flush release ring (broken hw), fix -modesetting.
v1.4: fbcon cpu usage reduction + suitable accel flags.
Signed-off-by: Alon Levy <alevy@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
2013-02-25 14:47:55 +10:00
source "drivers/gpu/drm/qxl/Kconfig"
drm/msm: basic KMS driver for snapdragon
The snapdragon chips have multiple different display controllers,
depending on which chip variant/version. (As far as I can tell, current
devices have either MDP3 or MDP4, and upcoming devices have MDSS.) And
then external to the display controller are HDMI, DSI, etc. blocks which
may be shared across devices which have different display controller
blocks.
To more easily add support for different display controller blocks, the
display controller specific bits are split out into a "kms" module,
which provides the kms plane/crtc/encoder objects.
The external HDMI, DSI, etc. blocks are part encoder, and part connector
currently. But I think I will pull in the drm_bridge patches from
chromeos tree, and split them into a bridge+connector, with the
registers that need to be set in modeset handled by the bridge. This
would remove the 'msm_connector' base class. But some things need to be
double checked to make sure I could get the correct ON/OFF sequencing..
This patch adds support for mdp4 crtc (including hw cursor), dtv encoder
(part of MDP4 block), and hdmi.
Signed-off-by: Rob Clark <robdclark@gmail.com>
2013-06-26 12:44:06 -04:00
2013-12-17 18:04:46 +01:00
source "drivers/gpu/drm/bochs/Kconfig"
2013-09-09 10:02:56 +10:00
source "drivers/gpu/drm/virtio/Kconfig"
drm/msm: basic KMS driver for snapdragon
The snapdragon chips have multiple different display controllers,
depending on which chip variant/version. (As far as I can tell, current
devices have either MDP3 or MDP4, and upcoming devices have MDSS.) And
then external to the display controller are HDMI, DSI, etc. blocks which
may be shared across devices which have different display controller
blocks.
To more easily add support for different display controller blocks, the
display controller specific bits are split out into a "kms" module,
which provides the kms plane/crtc/encoder objects.
The external HDMI, DSI, etc. blocks are part encoder, and part connector
currently. But I think I will pull in the drm_bridge patches from
chromeos tree, and split them into a bridge+connector, with the
registers that need to be set in modeset handled by the bridge. This
would remove the 'msm_connector' base class. But some things need to be
double checked to make sure I could get the correct ON/OFF sequencing..
This patch adds support for mdp4 crtc (including hw cursor), dtv encoder
(part of MDP4 block), and hdmi.
Signed-off-by: Rob Clark <robdclark@gmail.com>
2013-06-26 12:44:06 -04:00
source "drivers/gpu/drm/msm/Kconfig"
2013-10-09 10:32:49 +02:00
2015-08-19 22:19:49 -04:00
source "drivers/gpu/drm/fsl-dcu/Kconfig"
2013-10-09 10:32:49 +02:00
source "drivers/gpu/drm/tegra/Kconfig"
2013-08-30 13:36:43 +02:00
source "drivers/gpu/drm/panel/Kconfig"
2014-07-30 18:20:56 +02:00
2015-07-21 17:01:19 +02:00
source "drivers/gpu/drm/bridge/Kconfig"
2014-07-30 18:20:56 +02:00
source "drivers/gpu/drm/sti/Kconfig"
2014-07-16 21:08:55 +03:00
source "drivers/gpu/drm/amd/amdkfd/Kconfig"
2014-11-24 16:33:34 +01:00
source "drivers/gpu/drm/imx/Kconfig"
2015-03-02 13:01:12 -08:00
source "drivers/gpu/drm/vc4/Kconfig"
2015-12-03 18:21:29 +01:00
source "drivers/gpu/drm/etnaviv/Kconfig"
2016-02-19 15:30:26 +03:00
source "drivers/gpu/drm/arc/Kconfig"
2015-10-09 18:00:56 +08:00
source "drivers/gpu/drm/hisilicon/Kconfig"