xref: /linux/drivers/gpu/drm/Makefile (revision c358f53871605a1a8d7ed6e544a05ea00e9c80cb)
1# SPDX-License-Identifier: GPL-2.0
2
3# Makefile for the drm device driver.  This driver provides support for the
4# Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher.
5
6CFLAGS-$(CONFIG_DRM_USE_DYNAMIC_DEBUG)	+= -DDYNAMIC_DEBUG_MODULE
7
8drm-y := \
9	drm_aperture.o \
10	drm_atomic.o \
11	drm_atomic_uapi.o \
12	drm_auth.o \
13	drm_blend.o \
14	drm_bridge.o \
15	drm_cache.o \
16	drm_client.o \
17	drm_client_modeset.o \
18	drm_color_mgmt.o \
19	drm_connector.o \
20	drm_crtc.o \
21	drm_displayid.o \
22	drm_drv.o \
23	drm_dumb_buffers.o \
24	drm_edid.o \
25	drm_encoder.o \
26	drm_file.o \
27	drm_fourcc.o \
28	drm_framebuffer.o \
29	drm_gem.o \
30	drm_ioctl.o \
31	drm_lease.o \
32	drm_managed.o \
33	drm_mm.o \
34	drm_mode_config.o \
35	drm_mode_object.o \
36	drm_modes.o \
37	drm_modeset_lock.o \
38	drm_plane.o \
39	drm_prime.o \
40	drm_print.o \
41	drm_property.o \
42	drm_syncobj.o \
43	drm_sysfs.o \
44	drm_trace_points.o \
45	drm_vblank.o \
46	drm_vblank_work.o \
47	drm_vma_manager.o \
48	drm_writeback.o
49drm-$(CONFIG_DRM_LEGACY) += \
50	drm_agpsupport.o \
51	drm_bufs.o \
52	drm_context.o \
53	drm_dma.o \
54	drm_hashtab.o \
55	drm_irq.o \
56	drm_legacy_misc.o \
57	drm_lock.o \
58	drm_memory.o \
59	drm_scatter.o \
60	drm_vm.o
61drm-$(CONFIG_DRM_LIB_RANDOM) += lib/drm_random.o
62drm-$(CONFIG_COMPAT) += drm_ioc32.o
63drm-$(CONFIG_DRM_PANEL) += drm_panel.o
64drm-$(CONFIG_OF) += drm_of.o
65drm-$(CONFIG_PCI) += drm_pci.o
66drm-$(CONFIG_DEBUG_FS) += \
67	drm_debugfs.o \
68	drm_debugfs_crc.o
69drm-$(CONFIG_DRM_LOAD_EDID_FIRMWARE) += drm_edid_load.o
70drm-$(CONFIG_DRM_PRIVACY_SCREEN) += \
71	drm_privacy_screen.o \
72	drm_privacy_screen_x86.o
73obj-$(CONFIG_DRM)	+= drm.o
74
75obj-$(CONFIG_DRM_NOMODESET) += drm_nomodeset.o
76obj-$(CONFIG_DRM_PANEL_ORIENTATION_QUIRKS) += drm_panel_orientation_quirks.o
77
78#
79# Memory-management helpers
80#
81
82obj-$(CONFIG_DRM_BUDDY) += drm_buddy.o
83
84drm_dma_helper-y := drm_gem_dma_helper.o
85drm_dma_helper-$(CONFIG_DRM_KMS_HELPER) += drm_fb_dma_helper.o
86obj-$(CONFIG_DRM_GEM_DMA_HELPER) += drm_dma_helper.o
87
88drm_shmem_helper-y := drm_gem_shmem_helper.o
89obj-$(CONFIG_DRM_GEM_SHMEM_HELPER) += drm_shmem_helper.o
90
91drm_vram_helper-y := drm_gem_vram_helper.o
92obj-$(CONFIG_DRM_VRAM_HELPER) += drm_vram_helper.o
93
94drm_ttm_helper-y := drm_gem_ttm_helper.o
95obj-$(CONFIG_DRM_TTM_HELPER) += drm_ttm_helper.o
96
97#
98# Modesetting helpers
99#
100
101drm_kms_helper-y := \
102	drm_atomic_helper.o \
103	drm_atomic_state_helper.o \
104	drm_bridge_connector.o \
105	drm_crtc_helper.o \
106	drm_damage_helper.o \
107	drm_encoder_slave.o \
108	drm_flip_work.o \
109	drm_format_helper.o \
110	drm_gem_atomic_helper.o \
111	drm_gem_framebuffer_helper.o \
112	drm_kms_helper_common.o \
113	drm_modeset_helper.o \
114	drm_plane_helper.o \
115	drm_probe_helper.o \
116	drm_rect.o \
117	drm_self_refresh_helper.o \
118	drm_simple_kms_helper.o
119drm_kms_helper-$(CONFIG_DRM_PANEL_BRIDGE) += bridge/panel.o
120drm_kms_helper-$(CONFIG_DRM_FBDEV_EMULATION) += drm_fb_helper.o
121obj-$(CONFIG_DRM_KMS_HELPER) += drm_kms_helper.o
122
123#
124# Drivers and the rest
125#
126
127obj-$(CONFIG_DRM_KUNIT_TEST) += tests/
128
129obj-$(CONFIG_DRM_MIPI_DBI) += drm_mipi_dbi.o
130obj-$(CONFIG_DRM_MIPI_DSI) += drm_mipi_dsi.o
131obj-y			+= arm/
132obj-y			+= display/
133obj-$(CONFIG_DRM_TTM)	+= ttm/
134obj-$(CONFIG_DRM_SCHED)	+= scheduler/
135obj-$(CONFIG_DRM_TDFX)	+= tdfx/
136obj-$(CONFIG_DRM_R128)	+= r128/
137obj-$(CONFIG_DRM_RADEON)+= radeon/
138obj-$(CONFIG_DRM_AMDGPU)+= amd/amdgpu/
139obj-$(CONFIG_DRM_MGA)	+= mga/
140obj-$(CONFIG_DRM_I810)	+= i810/
141obj-$(CONFIG_DRM_I915)	+= i915/
142obj-$(CONFIG_DRM_KMB_DISPLAY)  += kmb/
143obj-$(CONFIG_DRM_MGAG200) += mgag200/
144obj-$(CONFIG_DRM_V3D)  += v3d/
145obj-$(CONFIG_DRM_VC4)  += vc4/
146obj-$(CONFIG_DRM_SIS)   += sis/
147obj-$(CONFIG_DRM_SAVAGE)+= savage/
148obj-$(CONFIG_DRM_VMWGFX)+= vmwgfx/
149obj-$(CONFIG_DRM_VIA)	+=via/
150obj-$(CONFIG_DRM_VGEM)	+= vgem/
151obj-$(CONFIG_DRM_VKMS)	+= vkms/
152obj-$(CONFIG_DRM_NOUVEAU) +=nouveau/
153obj-$(CONFIG_DRM_EXYNOS) +=exynos/
154obj-$(CONFIG_DRM_ROCKCHIP) +=rockchip/
155obj-$(CONFIG_DRM_GMA500) += gma500/
156obj-$(CONFIG_DRM_UDL) += udl/
157obj-$(CONFIG_DRM_AST) += ast/
158obj-$(CONFIG_DRM_ARMADA) += armada/
159obj-$(CONFIG_DRM_ATMEL_HLCDC)	+= atmel-hlcdc/
160obj-y			+= rcar-du/
161obj-$(CONFIG_DRM_SHMOBILE) +=shmobile/
162obj-y			+= omapdrm/
163obj-$(CONFIG_DRM_SUN4I) += sun4i/
164obj-y			+= tilcdc/
165obj-$(CONFIG_DRM_QXL) += qxl/
166obj-$(CONFIG_DRM_VIRTIO_GPU) += virtio/
167obj-$(CONFIG_DRM_MSM) += msm/
168obj-$(CONFIG_DRM_TEGRA) += tegra/
169obj-$(CONFIG_DRM_STM) += stm/
170obj-$(CONFIG_DRM_STI) += sti/
171obj-y 			+= imx/
172obj-$(CONFIG_DRM_INGENIC) += ingenic/
173obj-$(CONFIG_DRM_LOGICVC) += logicvc/
174obj-$(CONFIG_DRM_MEDIATEK) += mediatek/
175obj-$(CONFIG_DRM_MESON)	+= meson/
176obj-y			+= i2c/
177obj-y			+= panel/
178obj-y			+= bridge/
179obj-$(CONFIG_DRM_FSL_DCU) += fsl-dcu/
180obj-$(CONFIG_DRM_ETNAVIV) += etnaviv/
181obj-y			+= hisilicon/
182obj-y			+= mxsfb/
183obj-y			+= tiny/
184obj-$(CONFIG_DRM_PL111) += pl111/
185obj-$(CONFIG_DRM_TVE200) += tve200/
186obj-$(CONFIG_DRM_XEN) += xen/
187obj-$(CONFIG_DRM_VBOXVIDEO) += vboxvideo/
188obj-$(CONFIG_DRM_LIMA)  += lima/
189obj-$(CONFIG_DRM_PANFROST) += panfrost/
190obj-$(CONFIG_DRM_ASPEED_GFX) += aspeed/
191obj-$(CONFIG_DRM_MCDE) += mcde/
192obj-$(CONFIG_DRM_TIDSS) += tidss/
193obj-y			+= xlnx/
194obj-y			+= gud/
195obj-$(CONFIG_DRM_HYPERV) += hyperv/
196obj-y			+= solomon/
197obj-$(CONFIG_DRM_SPRD) += sprd/
198