Loading...
1#
2# Makefile for the drm device driver. This driver provides support for the
3# Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher.
4
5drm-y := drm_auth.o drm_bufs.o drm_cache.o \
6 drm_context.o drm_dma.o \
7 drm_fops.o drm_gem.o drm_ioctl.o drm_irq.o \
8 drm_lock.o drm_memory.o drm_drv.o drm_vm.o \
9 drm_scatter.o drm_pci.o \
10 drm_platform.o drm_sysfs.o drm_hashtab.o drm_mm.o \
11 drm_crtc.o drm_modes.o drm_edid.o \
12 drm_info.o drm_debugfs.o drm_encoder_slave.o \
13 drm_trace_points.o drm_global.o drm_prime.o \
14 drm_rect.o drm_vma_manager.o drm_flip_work.o \
15 drm_modeset_lock.o drm_atomic.o drm_bridge.o
16
17drm-$(CONFIG_COMPAT) += drm_ioc32.o
18drm-$(CONFIG_DRM_GEM_CMA_HELPER) += drm_gem_cma_helper.o
19drm-$(CONFIG_PCI) += ati_pcigart.o
20drm-$(CONFIG_DRM_PANEL) += drm_panel.o
21drm-$(CONFIG_OF) += drm_of.o
22drm-$(CONFIG_AGP) += drm_agpsupport.o
23
24drm_kms_helper-y := drm_crtc_helper.o drm_dp_helper.o drm_probe_helper.o \
25 drm_plane_helper.o drm_dp_mst_topology.o drm_atomic_helper.o \
26 drm_kms_helper_common.o
27
28drm_kms_helper-$(CONFIG_DRM_LOAD_EDID_FIRMWARE) += drm_edid_load.o
29drm_kms_helper-$(CONFIG_DRM_FBDEV_EMULATION) += drm_fb_helper.o
30drm_kms_helper-$(CONFIG_DRM_KMS_CMA_HELPER) += drm_fb_cma_helper.o
31drm_kms_helper-$(CONFIG_DRM_DP_AUX_CHARDEV) += drm_dp_aux_dev.o
32
33obj-$(CONFIG_DRM_KMS_HELPER) += drm_kms_helper.o
34
35CFLAGS_drm_trace_points.o := -I$(src)
36
37obj-$(CONFIG_DRM) += drm.o
38obj-$(CONFIG_DRM_MIPI_DSI) += drm_mipi_dsi.o
39obj-$(CONFIG_DRM_ARM) += arm
40obj-$(CONFIG_DRM_TTM) += ttm
41obj-$(CONFIG_DRM_TDFX) += tdfx
42obj-$(CONFIG_DRM_R128) += r128
43obj-$(CONFIG_HSA_AMD) += amd/amdkfd
44obj-$(CONFIG_DRM_RADEON)+= radeon
45obj-$(CONFIG_DRM_AMDGPU)+= amd/amdgpu
46obj-$(CONFIG_DRM_MGA) += mga
47obj-$(CONFIG_DRM_I810) += i810
48obj-$(CONFIG_DRM_I915) += i915
49obj-$(CONFIG_DRM_MGAG200) += mgag200
50obj-$(CONFIG_DRM_VC4) += vc4
51obj-$(CONFIG_DRM_CIRRUS_QEMU) += cirrus
52obj-$(CONFIG_DRM_SIS) += sis
53obj-$(CONFIG_DRM_SAVAGE)+= savage
54obj-$(CONFIG_DRM_VMWGFX)+= vmwgfx
55obj-$(CONFIG_DRM_VIA) +=via/
56obj-$(CONFIG_DRM_VGEM) += vgem
57obj-$(CONFIG_DRM_NOUVEAU) +=nouveau/
58obj-$(CONFIG_DRM_EXYNOS) +=exynos/
59obj-$(CONFIG_DRM_ROCKCHIP) +=rockchip/
60obj-$(CONFIG_DRM_GMA500) += gma500
61obj-$(CONFIG_DRM_UDL) += udl
62obj-$(CONFIG_DRM_AST) += ast
63obj-$(CONFIG_DRM_ARMADA) += armada
64obj-$(CONFIG_DRM_ATMEL_HLCDC) += atmel-hlcdc
65obj-$(CONFIG_DRM_RCAR_DU) += rcar-du
66obj-$(CONFIG_DRM_SHMOBILE) +=shmobile/
67obj-y += omapdrm
68obj-y += tilcdc
69obj-$(CONFIG_DRM_QXL) += qxl
70obj-$(CONFIG_DRM_BOCHS) += bochs
71obj-$(CONFIG_DRM_VIRTIO_GPU) += virtio
72obj-$(CONFIG_DRM_MSM) += msm
73obj-$(CONFIG_DRM_TEGRA) += tegra
74obj-$(CONFIG_DRM_STI) += sti
75obj-$(CONFIG_DRM_IMX) += imx
76obj-y += i2c
77obj-y += panel
78obj-y += bridge
79obj-$(CONFIG_DRM_FSL_DCU) += fsl-dcu
80obj-$(CONFIG_DRM_ETNAVIV) += etnaviv
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
8# Unconditionally enable W=1 warnings locally
9# --- begin copy-paste W=1 warnings from scripts/Makefile.extrawarn
10subdir-ccflags-y += -Wextra -Wunused -Wno-unused-parameter
11subdir-ccflags-y += $(call cc-option, -Wrestrict)
12subdir-ccflags-y += -Wmissing-format-attribute
13subdir-ccflags-y += -Wold-style-definition
14subdir-ccflags-y += -Wmissing-include-dirs
15subdir-ccflags-y += $(call cc-option, -Wunused-but-set-variable)
16subdir-ccflags-y += $(call cc-option, -Wunused-const-variable)
17subdir-ccflags-y += $(call cc-option, -Wpacked-not-aligned)
18subdir-ccflags-y += $(call cc-option, -Wformat-overflow)
19# FIXME: fix -Wformat-truncation warnings and uncomment
20#subdir-ccflags-y += $(call cc-option, -Wformat-truncation)
21subdir-ccflags-y += $(call cc-option, -Wstringop-truncation)
22# The following turn off the warnings enabled by -Wextra
23ifeq ($(findstring 2, $(KBUILD_EXTRA_WARN)),)
24subdir-ccflags-y += -Wno-missing-field-initializers
25subdir-ccflags-y += -Wno-type-limits
26subdir-ccflags-y += -Wno-shift-negative-value
27endif
28ifeq ($(findstring 3, $(KBUILD_EXTRA_WARN)),)
29subdir-ccflags-y += -Wno-sign-compare
30endif
31# --- end copy-paste
32
33# Enable -Werror in CI and development
34subdir-ccflags-$(CONFIG_DRM_WERROR) += -Werror
35
36drm-y := \
37 drm_atomic.o \
38 drm_atomic_uapi.o \
39 drm_auth.o \
40 drm_blend.o \
41 drm_bridge.o \
42 drm_cache.o \
43 drm_color_mgmt.o \
44 drm_connector.o \
45 drm_crtc.o \
46 drm_displayid.o \
47 drm_drv.o \
48 drm_dumb_buffers.o \
49 drm_edid.o \
50 drm_eld.o \
51 drm_encoder.o \
52 drm_file.o \
53 drm_fourcc.o \
54 drm_framebuffer.o \
55 drm_gem.o \
56 drm_ioctl.o \
57 drm_lease.o \
58 drm_managed.o \
59 drm_mm.o \
60 drm_mode_config.o \
61 drm_mode_object.o \
62 drm_modes.o \
63 drm_modeset_lock.o \
64 drm_plane.o \
65 drm_prime.o \
66 drm_print.o \
67 drm_property.o \
68 drm_rect.o \
69 drm_syncobj.o \
70 drm_sysfs.o \
71 drm_trace_points.o \
72 drm_vblank.o \
73 drm_vblank_work.o \
74 drm_vma_manager.o \
75 drm_writeback.o
76drm-$(CONFIG_DRM_CLIENT) += \
77 drm_client.o \
78 drm_client_event.o \
79 drm_client_modeset.o
80drm-$(CONFIG_DRM_LIB_RANDOM) += lib/drm_random.o
81drm-$(CONFIG_COMPAT) += drm_ioc32.o
82drm-$(CONFIG_DRM_PANEL) += drm_panel.o
83drm-$(CONFIG_OF) += drm_of.o
84drm-$(CONFIG_PCI) += drm_pci.o
85drm-$(CONFIG_DEBUG_FS) += \
86 drm_debugfs.o \
87 drm_debugfs_crc.o
88drm-$(CONFIG_DRM_LOAD_EDID_FIRMWARE) += drm_edid_load.o
89drm-$(CONFIG_DRM_PRIVACY_SCREEN) += \
90 drm_privacy_screen.o \
91 drm_privacy_screen_x86.o
92drm-$(CONFIG_DRM_ACCEL) += ../../accel/drm_accel.o
93drm-$(CONFIG_DRM_PANIC) += drm_panic.o
94drm-$(CONFIG_DRM_PANIC_SCREEN_QR_CODE) += drm_panic_qr.o
95obj-$(CONFIG_DRM) += drm.o
96
97obj-$(CONFIG_DRM_PANEL_ORIENTATION_QUIRKS) += drm_panel_orientation_quirks.o
98obj-$(CONFIG_DRM_PANEL_BACKLIGHT_QUIRKS) += drm_panel_backlight_quirks.o
99
100#
101# Memory-management helpers
102#
103#
104obj-$(CONFIG_DRM_EXEC) += drm_exec.o
105obj-$(CONFIG_DRM_GPUVM) += drm_gpuvm.o
106
107obj-$(CONFIG_DRM_BUDDY) += drm_buddy.o
108
109drm_dma_helper-y := drm_gem_dma_helper.o
110drm_dma_helper-$(CONFIG_DRM_FBDEV_EMULATION) += drm_fbdev_dma.o
111drm_dma_helper-$(CONFIG_DRM_KMS_HELPER) += drm_fb_dma_helper.o
112obj-$(CONFIG_DRM_GEM_DMA_HELPER) += drm_dma_helper.o
113
114drm_shmem_helper-y := drm_gem_shmem_helper.o
115drm_shmem_helper-$(CONFIG_DRM_FBDEV_EMULATION) += drm_fbdev_shmem.o
116obj-$(CONFIG_DRM_GEM_SHMEM_HELPER) += drm_shmem_helper.o
117
118drm_suballoc_helper-y := drm_suballoc.o
119obj-$(CONFIG_DRM_SUBALLOC_HELPER) += drm_suballoc_helper.o
120
121drm_vram_helper-y := drm_gem_vram_helper.o
122obj-$(CONFIG_DRM_VRAM_HELPER) += drm_vram_helper.o
123
124drm_ttm_helper-y := drm_gem_ttm_helper.o
125drm_ttm_helper-$(CONFIG_DRM_FBDEV_EMULATION) += drm_fbdev_ttm.o
126obj-$(CONFIG_DRM_TTM_HELPER) += drm_ttm_helper.o
127
128#
129# Modesetting helpers
130#
131
132drm_kms_helper-y := \
133 drm_atomic_helper.o \
134 drm_atomic_state_helper.o \
135 drm_crtc_helper.o \
136 drm_damage_helper.o \
137 drm_encoder_slave.o \
138 drm_flip_work.o \
139 drm_format_helper.o \
140 drm_gem_atomic_helper.o \
141 drm_gem_framebuffer_helper.o \
142 drm_kms_helper_common.o \
143 drm_modeset_helper.o \
144 drm_plane_helper.o \
145 drm_probe_helper.o \
146 drm_self_refresh_helper.o \
147 drm_simple_kms_helper.o
148drm_kms_helper-$(CONFIG_DRM_PANEL_BRIDGE) += bridge/panel.o
149drm_kms_helper-$(CONFIG_DRM_FBDEV_EMULATION) += drm_fb_helper.o
150obj-$(CONFIG_DRM_KMS_HELPER) += drm_kms_helper.o
151
152#
153# DRM clients
154#
155
156drm_client_lib-y := drm_client_setup.o
157drm_client_lib-$(CONFIG_DRM_FBDEV_EMULATION) += drm_fbdev_client.o
158obj-$(CONFIG_DRM_CLIENT_LIB) += drm_client_lib.o
159
160#
161# Drivers and the rest
162#
163
164obj-y += tests
165
166obj-$(CONFIG_DRM_MIPI_DBI) += drm_mipi_dbi.o
167obj-$(CONFIG_DRM_MIPI_DSI) += drm_mipi_dsi.o
168obj-y += arm
169obj-y += display
170obj-$(CONFIG_DRM_TTM) += ttm
171obj-$(CONFIG_DRM_SCHED) += scheduler
172obj-$(CONFIG_DRM_RADEON)+= radeon
173obj-$(CONFIG_DRM_AMDGPU)+= amd/amdgpu
174obj-$(CONFIG_DRM_AMDGPU)+= amd/amdxcp
175obj-$(CONFIG_DRM_I915) += i915
176obj-$(CONFIG_DRM_XE) += xe
177obj-$(CONFIG_DRM_KMB_DISPLAY) += kmb
178obj-$(CONFIG_DRM_MGAG200) += mgag200
179obj-$(CONFIG_DRM_V3D) += v3d
180obj-$(CONFIG_DRM_VC4) += vc4
181obj-$(CONFIG_DRM_VMWGFX)+= vmwgfx
182obj-$(CONFIG_DRM_VGEM) += vgem
183obj-$(CONFIG_DRM_VKMS) += vkms
184obj-$(CONFIG_DRM_NOUVEAU) +=nouveau/
185obj-$(CONFIG_DRM_EXYNOS) +=exynos/
186obj-$(CONFIG_DRM_ROCKCHIP) +=rockchip/
187obj-$(CONFIG_DRM_GMA500) += gma500
188obj-$(CONFIG_DRM_UDL) += udl
189obj-$(CONFIG_DRM_AST) += ast
190obj-$(CONFIG_DRM_ARMADA) += armada
191obj-$(CONFIG_DRM_ATMEL_HLCDC) += atmel-hlcdc
192obj-y += renesas
193obj-y += omapdrm
194obj-$(CONFIG_DRM_SUN4I) += sun4i
195obj-y += tilcdc
196obj-$(CONFIG_DRM_QXL) += qxl
197obj-$(CONFIG_DRM_VIRTIO_GPU) += virtio
198obj-$(CONFIG_DRM_MSM) += msm
199obj-$(CONFIG_DRM_TEGRA) += tegra
200obj-$(CONFIG_DRM_STM) += stm
201obj-$(CONFIG_DRM_STI) += sti
202obj-y += imx
203obj-$(CONFIG_DRM_INGENIC) += ingenic
204obj-$(CONFIG_DRM_LOGICVC) += logicvc
205obj-$(CONFIG_DRM_MEDIATEK) += mediatek
206obj-$(CONFIG_DRM_MESON) += meson
207obj-y += i2c
208obj-y += panel
209obj-y += bridge
210obj-$(CONFIG_DRM_FSL_DCU) += fsl-dcu
211obj-$(CONFIG_DRM_ETNAVIV) += etnaviv
212obj-y += hisilicon
213obj-y += mxsfb
214obj-y += tiny
215obj-$(CONFIG_DRM_PL111) += pl111
216obj-$(CONFIG_DRM_TVE200) += tve200
217obj-$(CONFIG_DRM_XEN) += xen
218obj-$(CONFIG_DRM_VBOXVIDEO) += vboxvideo
219obj-$(CONFIG_DRM_LIMA) += lima
220obj-$(CONFIG_DRM_PANFROST) += panfrost
221obj-$(CONFIG_DRM_PANTHOR) += panthor
222obj-$(CONFIG_DRM_ASPEED_GFX) += aspeed
223obj-$(CONFIG_DRM_MCDE) += mcde
224obj-$(CONFIG_DRM_TIDSS) += tidss
225obj-y += xlnx
226obj-y += gud
227obj-$(CONFIG_DRM_HYPERV) += hyperv
228obj-y += solomon
229obj-$(CONFIG_DRM_SPRD) += sprd
230obj-$(CONFIG_DRM_LOONGSON) += loongson
231obj-$(CONFIG_DRM_POWERVR) += imagination