2005-04-17 06:20:36 +08:00
|
|
|
#
|
|
|
|
# Drm device configuration
|
|
|
|
#
|
|
|
|
# This driver provides support for the
|
|
|
|
# Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher.
|
|
|
|
#
|
2007-10-16 16:29:39 +08:00
|
|
|
menuconfig DRM
|
2005-04-17 06:20:36 +08:00
|
|
|
tristate "Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)"
|
2013-08-18 18:54:25 +08:00
|
|
|
depends on (AGP || AGP=n) && !EMULATED_CMPXCHG && MMU && HAS_DMA
|
2012-11-21 22:31:35 +08:00
|
|
|
select HDMI
|
2014-08-06 16:08:32 +08:00
|
|
|
select FB_CMDLINE
|
2008-12-13 16:21:08 +08:00
|
|
|
select I2C
|
|
|
|
select I2C_ALGOBIT
|
2011-11-25 23:21:02 +08:00
|
|
|
select DMA_SHARED_BUFFER
|
2005-04-17 06:20:36 +08: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-28 03:40:25 +08:00
|
|
|
(/dev/agpgart) support if it is available for your platform.
|
2005-04-17 06:20:36 +08:00
|
|
|
|
2013-12-04 23:35:12 +08:00
|
|
|
config DRM_MIPI_DSI
|
|
|
|
bool
|
|
|
|
depends on DRM
|
|
|
|
|
2016-01-22 07: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.
|
|
|
|
|
2016-10-31 17:08:06 +08:00
|
|
|
config DRM_DEBUG_MM
|
|
|
|
bool "Insert extra checks and debug info into the DRM range managers"
|
|
|
|
default n
|
2016-11-08 21:19:17 +08:00
|
|
|
depends on DRM=y
|
2016-11-09 22:39:06 +08:00
|
|
|
depends on STACKTRACE_SUPPORT
|
2016-10-31 17:08:06 +08:00
|
|
|
select STACKDEPOT
|
|
|
|
help
|
|
|
|
Enable allocation tracking of memory manager and leak detection on
|
|
|
|
shutdown.
|
|
|
|
|
|
|
|
Recommended for driver developers only.
|
|
|
|
|
|
|
|
If in doubt, say "N".
|
|
|
|
|
2009-09-08 09:08:32 +08:00
|
|
|
config DRM_KMS_HELPER
|
2009-09-07 13:45:33 +08:00
|
|
|
tristate
|
|
|
|
depends on DRM
|
2013-10-08 23:44:47 +08:00
|
|
|
help
|
|
|
|
CRTC helpers for KMS drivers.
|
|
|
|
|
|
|
|
config DRM_KMS_FB_HELPER
|
|
|
|
bool
|
|
|
|
depends on DRM_KMS_HELPER
|
2009-09-07 13:45:33 +08:00
|
|
|
select FB
|
2011-01-21 06:44:16 +08:00
|
|
|
select FRAMEBUFFER_CONSOLE if !EXPERT
|
2011-04-22 05:51:33 +08:00
|
|
|
select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE
|
2015-07-31 18:51:41 +08:00
|
|
|
select FB_SYS_FOPS
|
2015-07-31 18:51:42 +08:00
|
|
|
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 23:18:33 +08:00
|
|
|
select FB_DEFERRED_IO
|
2009-09-07 13:45:33 +08:00
|
|
|
help
|
2013-10-08 23:44:47 +08:00
|
|
|
FBDEV helpers for KMS drivers.
|
2009-09-07 13:45:33 +08:00
|
|
|
|
2015-08-05 14:58:57 +08:00
|
|
|
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-19 05:37:33 +08: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 21:20:19 +08:00
|
|
|
config DRM_TTM
|
2009-06-05 20:42:42 +08:00
|
|
|
tristate
|
2009-06-10 21:20:19 +08: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 21:30:18 +08:00
|
|
|
config DRM_GEM_CMA_HELPER
|
|
|
|
bool
|
2016-01-21 07:02:05 +08:00
|
|
|
depends on DRM
|
2012-06-27 21:30:18 +08:00
|
|
|
help
|
|
|
|
Choose this if you need the GEM CMA helper functions
|
|
|
|
|
2012-07-02 22:37:47 +08:00
|
|
|
config DRM_KMS_CMA_HELPER
|
|
|
|
bool
|
2016-01-21 07:02:05 +08:00
|
|
|
depends on DRM
|
2012-07-02 22:37:47 +08:00
|
|
|
select DRM_GEM_CMA_HELPER
|
2013-10-08 23:44:47 +08:00
|
|
|
select DRM_KMS_FB_HELPER
|
2012-07-02 22:37:47 +08: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-25 05:46:07 +08:00
|
|
|
source "drivers/gpu/drm/i2c/Kconfig"
|
|
|
|
|
2015-04-03 02:48:39 +08:00
|
|
|
source "drivers/gpu/drm/arm/Kconfig"
|
|
|
|
|
2005-04-17 06:20:36 +08:00
|
|
|
config DRM_RADEON
|
|
|
|
tristate "ATI Radeon"
|
|
|
|
depends on DRM && PCI
|
2009-08-29 21:53:51 +08:00
|
|
|
select FW_LOADER
|
2009-09-08 09:09:50 +08:00
|
|
|
select DRM_KMS_HELPER
|
|
|
|
select DRM_TTM
|
2010-05-21 13:41:20 +08:00
|
|
|
select POWER_SUPPLY
|
2010-07-03 00:58:16 +08:00
|
|
|
select HWMON
|
2013-01-21 20:58:46 +08:00
|
|
|
select BACKLIGHT_CLASS_DEVICE
|
2015-08-14 18:50:11 +08:00
|
|
|
select BACKLIGHT_LCD_SUPPORT
|
2014-07-30 23:49:56 +08:00
|
|
|
select INTERVAL_TREE
|
2005-04-17 06:20:36 +08: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-21 03:23:13 +08:00
|
|
|
run the Radeon in plain VGA mode.
|
2007-11-05 10:50:58 +08:00
|
|
|
|
2005-04-17 06:20:36 +08:00
|
|
|
If M is selected, the module will be called radeon.
|
|
|
|
|
2010-02-01 09:35:47 +08:00
|
|
|
source "drivers/gpu/drm/radeon/Kconfig"
|
|
|
|
|
2015-04-21 04:55:21 +08:00
|
|
|
config DRM_AMDGPU
|
|
|
|
tristate "AMD GPU"
|
|
|
|
depends on DRM && PCI
|
|
|
|
select FW_LOADER
|
|
|
|
select DRM_KMS_HELPER
|
|
|
|
select DRM_TTM
|
|
|
|
select POWER_SUPPLY
|
|
|
|
select HWMON
|
|
|
|
select BACKLIGHT_CLASS_DEVICE
|
2015-08-14 18:50:12 +08:00
|
|
|
select BACKLIGHT_LCD_SUPPORT
|
2015-04-21 04:55:21 +08: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-09-23 05:05:20 +08:00
|
|
|
|
2012-03-16 16:19:14 +08:00
|
|
|
source "drivers/gpu/drm/nouveau/Kconfig"
|
|
|
|
|
2013-10-09 15:18:51 +08:00
|
|
|
source "drivers/gpu/drm/i915/Kconfig"
|
2013-08-14 07:23:17 +08:00
|
|
|
|
2015-03-05 08: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 16:42:51 +08:00
|
|
|
source "drivers/gpu/drm/exynos/Kconfig"
|
|
|
|
|
2014-08-22 18:36:26 +08:00
|
|
|
source "drivers/gpu/drm/rockchip/Kconfig"
|
|
|
|
|
2011-10-11 16:42:51 +08:00
|
|
|
source "drivers/gpu/drm/vmwgfx/Kconfig"
|
2011-11-04 02:22:48 +08:00
|
|
|
|
|
|
|
source "drivers/gpu/drm/gma500/Kconfig"
|
|
|
|
|
2010-12-15 05:14:24 +08: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 21:40:04 +08:00
|
|
|
|
|
|
|
source "drivers/gpu/drm/ast/Kconfig"
|
|
|
|
|
2012-04-17 22:01:25 +08:00
|
|
|
source "drivers/gpu/drm/mgag200/Kconfig"
|
2012-04-17 21:12:29 +08:00
|
|
|
|
|
|
|
source "drivers/gpu/drm/cirrus/Kconfig"
|
2012-04-26 19:53:59 +08:00
|
|
|
|
2012-08-15 20:59:49 +08:00
|
|
|
source "drivers/gpu/drm/armada/Kconfig"
|
|
|
|
|
2015-01-06 18:13:28 +08:00
|
|
|
source "drivers/gpu/drm/atmel-hlcdc/Kconfig"
|
|
|
|
|
2013-06-19 19:54:11 +08:00
|
|
|
source "drivers/gpu/drm/rcar-du/Kconfig"
|
|
|
|
|
2012-04-26 19:53:59 +08:00
|
|
|
source "drivers/gpu/drm/shmobile/Kconfig"
|
2012-11-16 05:28:22 +08:00
|
|
|
|
2015-10-29 16:36:23 +08:00
|
|
|
source "drivers/gpu/drm/sun4i/Kconfig"
|
|
|
|
|
2013-02-12 01:43:09 +08:00
|
|
|
source "drivers/gpu/drm/omapdrm/Kconfig"
|
2013-02-21 07:31:47 +08:00
|
|
|
|
2013-01-09 05:04:28 +08: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 12:47:55 +08: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-27 00:44:06 +08:00
|
|
|
|
2013-12-18 01:04:46 +08:00
|
|
|
source "drivers/gpu/drm/bochs/Kconfig"
|
|
|
|
|
2013-09-09 08:02:56 +08: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-27 00:44:06 +08:00
|
|
|
source "drivers/gpu/drm/msm/Kconfig"
|
2013-10-09 16:32:49 +08:00
|
|
|
|
2015-08-20 10:19:49 +08:00
|
|
|
source "drivers/gpu/drm/fsl-dcu/Kconfig"
|
|
|
|
|
2013-10-09 16:32:49 +08:00
|
|
|
source "drivers/gpu/drm/tegra/Kconfig"
|
2013-08-30 19:36:43 +08:00
|
|
|
|
|
|
|
source "drivers/gpu/drm/panel/Kconfig"
|
2014-07-31 00:20:56 +08:00
|
|
|
|
2015-07-21 23:01:19 +08:00
|
|
|
source "drivers/gpu/drm/bridge/Kconfig"
|
|
|
|
|
2014-07-31 00:20:56 +08:00
|
|
|
source "drivers/gpu/drm/sti/Kconfig"
|
2014-07-17 02:08:55 +08:00
|
|
|
|
|
|
|
source "drivers/gpu/drm/amd/amdkfd/Kconfig"
|
2014-11-24 23:33:34 +08:00
|
|
|
|
|
|
|
source "drivers/gpu/drm/imx/Kconfig"
|
2015-03-03 05:01:12 +08:00
|
|
|
|
|
|
|
source "drivers/gpu/drm/vc4/Kconfig"
|
2015-12-04 01:21:29 +08:00
|
|
|
|
|
|
|
source "drivers/gpu/drm/etnaviv/Kconfig"
|
2016-02-19 20:30:26 +08:00
|
|
|
|
|
|
|
source "drivers/gpu/drm/arc/Kconfig"
|
2015-10-09 18:00:56 +08:00
|
|
|
|
|
|
|
source "drivers/gpu/drm/hisilicon/Kconfig"
|
2016-01-05 01:36:34 +08:00
|
|
|
|
|
|
|
source "drivers/gpu/drm/mediatek/Kconfig"
|
2016-08-04 16:06:56 +08:00
|
|
|
|
2016-09-22 19:52:39 +08:00
|
|
|
source "drivers/gpu/drm/zte/Kconfig"
|
|
|
|
|
2016-08-04 16:06:56 +08:00
|
|
|
# Keep legacy drivers last
|
|
|
|
|
|
|
|
menuconfig DRM_LEGACY
|
|
|
|
bool "Enable legacy drivers (DANGEROUS)"
|
|
|
|
depends on DRM
|
|
|
|
help
|
|
|
|
Enable legacy DRI1 drivers. Those drivers expose unsafe and dangerous
|
|
|
|
APIs to user-space, which can be used to circumvent access
|
|
|
|
restrictions and other security measures. For backwards compatibility
|
|
|
|
those drivers are still available, but their use is highly
|
|
|
|
inadvisable and might harm your system.
|
|
|
|
|
|
|
|
You are recommended to use the safe modeset-only drivers instead, and
|
|
|
|
perform 3D emulation in user-space.
|
|
|
|
|
|
|
|
Unless you have strong reasons to go rogue, say "N".
|
|
|
|
|
|
|
|
if DRM_LEGACY
|
|
|
|
|
|
|
|
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.
|
|
|
|
|
|
|
|
config DRM_R128
|
|
|
|
tristate "ATI Rage 128"
|
|
|
|
depends on DRM && PCI
|
|
|
|
select FW_LOADER
|
|
|
|
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_I810
|
|
|
|
tristate "Intel I810"
|
|
|
|
# !PREEMPT because of missing ioctl locking
|
|
|
|
depends on DRM && AGP && AGP_INTEL && (!PREEMPT || BROKEN)
|
|
|
|
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.
|
|
|
|
|
|
|
|
config DRM_MGA
|
|
|
|
tristate "Matrox g200/g400"
|
|
|
|
depends on DRM && PCI
|
|
|
|
select FW_LOADER
|
|
|
|
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
|
|
|
|
depends on FB_SIS || FB_SIS=n
|
|
|
|
help
|
|
|
|
Choose this option if you have a SiS 630 or compatible video
|
|
|
|
chipset. If M is selected the module will be called sis. AGP
|
|
|
|
support is required for this driver to work.
|
|
|
|
|
|
|
|
config DRM_VIA
|
|
|
|
tristate "Via unichrome video cards"
|
|
|
|
depends on DRM && PCI
|
|
|
|
help
|
|
|
|
Choose this option if you have a Via unichrome or compatible video
|
|
|
|
chipset. If M is selected the module will be called via.
|
|
|
|
|
|
|
|
config DRM_SAVAGE
|
|
|
|
tristate "Savage video cards"
|
|
|
|
depends on DRM && PCI
|
|
|
|
help
|
|
|
|
Choose this option if you have a Savage3D/4/SuperSavage/Pro/Twister
|
|
|
|
chipset. If M is selected the module will be called savage.
|
|
|
|
|
|
|
|
endif # DRM_LEGACY
|