xref: /linux/drivers/gpu/drm/i915/Makefile (revision d6b80e904bb00a188d9a59be6bf7e19b89e3954f)
1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0
2c0e09200SDave Airlie#
3c0e09200SDave Airlie# Makefile for the drm device driver.  This driver provides support for the
4c0e09200SDave Airlie# Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher.
5c0e09200SDave Airlie
6dd3cac0aSJani Nikula# Enable W=1 warnings not enabled in drm subsystem Makefile
72250c7eaSJani Nikulasubdir-ccflags-y += $(call cc-option, -Wformat-truncation)
82250c7eaSJani Nikula
92250c7eaSJani Nikula# Enable -Werror in CI and development
1039bf4de8SChris Wilsonsubdir-ccflags-$(CONFIG_DRM_I915_WERROR) += -Werror
1139bf4de8SChris Wilson
12a4ba1ea6SJani Nikula# Support compiling the display code separately for both i915 and xe
13a4ba1ea6SJani Nikula# drivers. Define I915 when building i915.
14a4ba1ea6SJani Nikulasubdir-ccflags-y += -DI915
15a4ba1ea6SJani Nikula
16ed1fbee3SMaarten Lankhorst# FIXME: Disable tracepoints on i915 for PREEMPT_RT, unfortunately
17ed1fbee3SMaarten Lankhorst# it's an all or nothing flag. You cannot selectively disable
18ed1fbee3SMaarten Lankhorst# only some tracepoints.
19ed1fbee3SMaarten Lankhorstsubdir-ccflags-$(CONFIG_PREEMPT_RT) += -DNOTRACE
20ed1fbee3SMaarten Lankhorst
21b1992c37SMasahiro Yamadasubdir-ccflags-y += -I$(src)
22112ed2d3SChris Wilson
232fae6a86SDaniel Vetter# Please keep these build lists sorted!
242fae6a86SDaniel Vetter
252fae6a86SDaniel Vetter# core driver code
260db5649eSJani Nikulai915-y += \
2716dc224fSChris Wilson	i915_config.o \
280db5649eSJani Nikula	i915_driver.o \
290db5649eSJani Nikula	i915_drm_client.o \
30e2b1c3a1SJani Nikula	i915_edram.o \
312d74a093SJani Nikula	i915_freq.o \
3226f00514SChris Wilson	i915_getparam.o \
33eef67acfSJani Nikula	i915_gmch.o \
34198bca93SJani Nikula	i915_ioctl.o \
35198bca93SJani Nikula	i915_irq.o \
36f7452c7cSChris Wilson	i915_mitigations.o \
3727e21516SMatt Atwood	i915_mmio_range.o \
38708b7df3SDaniel Vetter	i915_module.o \
392fae6a86SDaniel Vetter	i915_params.o \
4042f5551dSChris Wilson	i915_pci.o \
4137d63f8fSChris Wilson	i915_scatterlist.o \
4263bf8301SJani Nikula	i915_switcheroo.o \
432fae6a86SDaniel Vetter	i915_sysfs.o \
44df7d085bSJani Nikula	i915_timer_util.o \
45358c855cSJani Nikula	i915_utils.o \
46d670c78eSJani Nikula	intel_clock_gating.o \
47d58db10eSRaag Jadav	intel_cpu_info.o \
4894b4f3baSChris Wilson	intel_device_info.o \
49232a6ebaSMatthew Auld	intel_memory_region.o \
504dd4375bSJani Nikula	intel_pcode.o \
51d1487389SThomas Hellström	intel_region_ttm.o \
527d3c425fSOscar Mateo	intel_runtime_pm.o \
537eb186bbSJani Nikula	intel_step.o \
54df0566a6SJani Nikula	intel_uncore.o \
5517d70726SJani Nikula	intel_uncore_trace.o \
56fb5f432aSJani Nikula	intel_wakeref.o \
576819b5a6SJani Nikula	vlv_iosf_sb.o \
58fb5f432aSJani Nikula	vlv_suspend.o
59112ed2d3SChris Wilson
60112ed2d3SChris Wilson# core library code
61112ed2d3SChris Wilsoni915-y += \
62112ed2d3SChris Wilson	i915_memcpy.o \
63112ed2d3SChris Wilson	i915_mm.o \
64112ed2d3SChris Wilson	i915_sw_fence.o \
658e458fe2SChris Wilson	i915_sw_fence_work.o \
66112ed2d3SChris Wilson	i915_syncmap.o \
67112ed2d3SChris Wilson	i915_user_extensions.o
689c065a7dSDaniel Vetter
690db5649eSJani Nikulai915-$(CONFIG_COMPAT) += \
700db5649eSJani Nikula	i915_ioc32.o
71c43c5a88SJani Nikulai915-$(CONFIG_DEBUG_FS) += \
72c43c5a88SJani Nikula	i915_debugfs.o \
7375658332SJani Nikula	i915_debugfs_params.o
740db5649eSJani Nikulai915-$(CONFIG_PERF_EVENTS) += \
750db5649eSJani Nikula	i915_pmu.o
762fae6a86SDaniel Vetter
7739a00914SJani Nikula# core display adaptation
7839a00914SJani Nikulai915-y += \
79*d6b80e90SJani Nikula	i915_hdcp_gsc.o \
80*d6b80e90SJani Nikula	i915_panic.o
8139a00914SJani Nikula
82112ed2d3SChris Wilson# "Graphics Technology" (aka we talk to the gpu)
83112ed2d3SChris Wilsongt-y += \
84c1f85878SChris Wilson	gt/gen2_engine_cs.o \
85c1f85878SChris Wilson	gt/gen6_engine_cs.o \
862c86e55dSMatthew Auld	gt/gen6_ppgtt.o \
8747f8253dSPrathap Kumar Valsan	gt/gen7_renderclear.o \
88d0d829e5SDaniele Ceraolo Spurio	gt/gen8_engine_cs.o \
892c86e55dSMatthew Auld	gt/gen8_ppgtt.o \
90112ed2d3SChris Wilson	gt/intel_breadcrumbs.o \
91112ed2d3SChris Wilson	gt/intel_context.o \
92b4d3acaaSChris Wilson	gt/intel_context_sseu.o \
93112ed2d3SChris Wilson	gt/intel_engine_cs.o \
94b5e8e954SChris Wilson	gt/intel_engine_heartbeat.o \
9579ffac85SChris Wilson	gt/intel_engine_pm.o \
96750e76b4SChris Wilson	gt/intel_engine_user.o \
9770a2b431SChris Wilson	gt/intel_execlists_submission.o \
982c86e55dSMatthew Auld	gt/intel_ggtt.o \
99f899f786SChris Wilson	gt/intel_ggtt_fencing.o \
10024635c51STvrtko Ursulin	gt/intel_gt.o \
10116e87459SChris Wilson	gt/intel_gt_buffer_pool.o \
1026db31251SAndi Shyti	gt/intel_gt_ccs_mode.o \
1039c878557SChris Wilson	gt/intel_gt_clock_utils.o \
104022f324cSLucas De Marchi	gt/intel_gt_debugfs.o \
10500142bceSLucas De Marchi	gt/intel_gt_engines_debugfs.o \
106cf1c97dcSAndi Shyti	gt/intel_gt_irq.o \
107e7858254SMatt Roper	gt/intel_gt_mcr.o \
10879ffac85SChris Wilson	gt/intel_gt_pm.o \
10923f6a829SLucas De Marchi	gt/intel_gt_pm_debugfs.o \
110d762043fSAndi Shyti	gt/intel_gt_pm_irq.o \
11166101975SChris Wilson	gt/intel_gt_requests.o \
112b770bcfaSAndi Shyti	gt/intel_gt_sysfs.o \
11380cf8af1SAndi Shyti	gt/intel_gt_sysfs_pm.o \
1142c86e55dSMatthew Auld	gt/intel_gtt.o \
1150dc3c562SAndi Shyti	gt/intel_llc.o \
116112ed2d3SChris Wilson	gt/intel_lrc.o \
117cf586021SChris Wilson	gt/intel_migrate.o \
1182871ea85SChris Wilson	gt/intel_mocs.o \
1192c86e55dSMatthew Auld	gt/intel_ppgtt.o \
120c1132367SAndi Shyti	gt/intel_rc6.o \
121f178b897SMatthew Auld	gt/intel_region_lmem.o \
1222006058eSChris Wilson	gt/intel_renderstate.o \
123112ed2d3SChris Wilson	gt/intel_reset.o \
1242871ea85SChris Wilson	gt/intel_ring.o \
1252871ea85SChris Wilson	gt/intel_ring_submission.o \
1263e7abf81SAndi Shyti	gt/intel_rps.o \
127f0e2f00cSMatt Roper	gt/intel_sa_media.o \
128112ed2d3SChris Wilson	gt/intel_sseu.o \
129a00eda7dSDaniele Ceraolo Spurio	gt/intel_sseu_debugfs.o \
130f0c02c1bSTvrtko Ursulin	gt/intel_timeline.o \
131568a2e6fSChris Wilson	gt/intel_tlb.o \
132ee71434eSAravind Iddamsetty	gt/intel_wopcm.o \
1334ec76dbeSChris Wilson	gt/intel_workarounds.o \
134be1cb55aSChris Wilson	gt/shmem_utils.o \
1354ec76dbeSChris Wilson	gt/sysfs_engines.o
136ee71434eSAravind Iddamsetty
1377a5c9223SCasey Bowman# x86 intel-gtt module support
1380db5649eSJani Nikulagt-$(CONFIG_X86) += \
1390db5649eSJani Nikula	gt/intel_ggtt_gmch.o
1402006058eSChris Wilson# autogenerated null render state
1412006058eSChris Wilsongt-y += \
1422006058eSChris Wilson	gt/gen6_renderstate.o \
1432006058eSChris Wilson	gt/gen7_renderstate.o \
1442006058eSChris Wilson	gt/gen8_renderstate.o \
1452006058eSChris Wilson	gt/gen9_renderstate.o
146112ed2d3SChris Wilsoni915-y += $(gt-y)
147112ed2d3SChris Wilson
148112ed2d3SChris Wilson# GEM (Graphics Execution Management) code
14998932149SChris Wilsongem-y += \
1503f43c876SChris Wilson	gem/i915_gem_busy.o \
15110be98a7SChris Wilson	gem/i915_gem_clflush.o \
15210be98a7SChris Wilson	gem/i915_gem_context.o \
153dcaccaf0SMatthew Auld	gem/i915_gem_create.o \
15410be98a7SChris Wilson	gem/i915_gem_dmabuf.o \
155f0e4a063SChris Wilson	gem/i915_gem_domain.o \
15610be98a7SChris Wilson	gem/i915_gem_execbuffer.o \
15710be98a7SChris Wilson	gem/i915_gem_internal.o \
158b908be54SMatthew Auld	gem/i915_gem_lmem.o \
159b414fcd5SChris Wilson	gem/i915_gem_mman.o \
1600db5649eSJani Nikula	gem/i915_gem_object.o \
16196593096SVille Syrjälä	gem/i915_gem_object_frontbuffer.o \
162f033428dSChris Wilson	gem/i915_gem_pages.o \
163f033428dSChris Wilson	gem/i915_gem_phys.o \
16410be98a7SChris Wilson	gem/i915_gem_pm.o \
165232a6ebaSMatthew Auld	gem/i915_gem_region.o \
16610be98a7SChris Wilson	gem/i915_gem_shmem.o \
16710be98a7SChris Wilson	gem/i915_gem_shrinker.o \
16810be98a7SChris Wilson	gem/i915_gem_stolen.o \
169446e2d16SChris Wilson	gem/i915_gem_throttle.o \
17010be98a7SChris Wilson	gem/i915_gem_tiling.o \
171213d5092SThomas Hellström	gem/i915_gem_ttm.o \
1723589fdbdSThomas Hellström	gem/i915_gem_ttm_move.o \
173c56ce956SThomas Hellström	gem/i915_gem_ttm_pm.o \
17410be98a7SChris Wilson	gem/i915_gem_userptr.o \
175d45a1a53SChris Wilson	gem/i915_gem_wait.o \
17610be98a7SChris Wilson	gem/i915_gemfs.o
17764d6c500SChris Wilsoni915-y += \
17898932149SChris Wilson	$(gem-y) \
17964d6c500SChris Wilson	i915_active.o \
18064d6c500SChris Wilson	i915_cmd_parser.o \
18163cf4cadSThomas Hellström	i915_deps.o \
1820db5649eSJani Nikula	i915_gem.o \
183b47eb4a2SChris Wilson	i915_gem_evict.o \
18454cf91dcSChris Wilson	i915_gem_gtt.o \
1855c43ec5dSThomas Hellström	i915_gem_ww.o \
186a446ae2cSLionel Landwerlin	i915_query.o \
187e61e0f51SChris Wilson	i915_request.o \
188e2f3496eSChris Wilson	i915_scheduler.o \
1891c5d22f7SChris Wilson	i915_trace_points.o \
19088be9a0aSMatthew Auld	i915_ttm_buddy_manager.o \
191b42fe9caSJoonas Lahtinen	i915_vma.o \
192ee71434eSAravind Iddamsetty	i915_vma_resource.o
1932fae6a86SDaniel Vetter
19433a732f4SAlex Dai# general-purpose microcontroller (GuC) support
195242c4b91SDaniele Ceraolo Spurioi915-y += \
19615bd4a67SDaniele Ceraolo Spurio	gt/uc/intel_gsc_fw.o \
1978a9bf295SDaniele Ceraolo Spurio	gt/uc/intel_gsc_proxy.o \
198242c4b91SDaniele Ceraolo Spurio	gt/uc/intel_gsc_uc.o \
199561055b8SDaniele Ceraolo Spurio	gt/uc/intel_gsc_uc_debugfs.o \
200459b2606SSuraj Kandpal	gt/uc/intel_gsc_uc_heci_cmd_submit.o\
2010f261b24SDaniele Ceraolo Spurio	gt/uc/intel_guc.o \
2020f261b24SDaniele Ceraolo Spurio	gt/uc/intel_guc_ads.o \
20324492514SAlan Previn	gt/uc/intel_guc_capture.o \
2040f261b24SDaniele Ceraolo Spurio	gt/uc/intel_guc_ct.o \
205293a5548SDaniele Ceraolo Spurio	gt/uc/intel_guc_debugfs.o \
2060f261b24SDaniele Ceraolo Spurio	gt/uc/intel_guc_fw.o \
2078781f051SJohn Harrison	gt/uc/intel_guc_hwconfig.o \
2080f261b24SDaniele Ceraolo Spurio	gt/uc/intel_guc_log.o \
209293a5548SDaniele Ceraolo Spurio	gt/uc/intel_guc_log_debugfs.o \
210216d56c5SVinay Belgaumkar	gt/uc/intel_guc_rc.o \
211dff0fc49SVinay Belgaumkar	gt/uc/intel_guc_slpc.o \
2120f261b24SDaniele Ceraolo Spurio	gt/uc/intel_guc_submission.o \
2130f261b24SDaniele Ceraolo Spurio	gt/uc/intel_huc.o \
214293a5548SDaniele Ceraolo Spurio	gt/uc/intel_huc_debugfs.o \
215242c4b91SDaniele Ceraolo Spurio	gt/uc/intel_huc_fw.o \
216242c4b91SDaniele Ceraolo Spurio	gt/uc/intel_uc.o \
217242c4b91SDaniele Ceraolo Spurio	gt/uc/intel_uc_debugfs.o \
218242c4b91SDaniele Ceraolo Spurio	gt/uc/intel_uc_fw.o
21933a732f4SAlex Dai
2201e3dc1d8STomas Winkler# graphics system controller (GSC) support
2210db5649eSJani Nikulai915-y += \
2220db5649eSJani Nikula	gt/intel_gsc.o
2231e3dc1d8STomas Winkler
224b3b088e2SDale B Stimson# graphics hardware monitoring (HWMON) support
2250db5649eSJani Nikulai915-$(CONFIG_HWMON) += \
2260db5649eSJani Nikula	i915_hwmon.o
227b3b088e2SDale B Stimson
2282fae6a86SDaniel Vetter# modesetting core code
229df0566a6SJani Nikulai915-y += \
230f3b603deSVille Syrjälä	display/hsw_ips.o \
231c3bda715SRodrigo Vivi	display/i9xx_display_sr.o \
232a649c2abSJani Nikula	display/i9xx_plane.o \
2330db5649eSJani Nikula	display/i9xx_wm.o \
2348bdbde7cSAnimesh Manna	display/intel_alpm.o \
235df0566a6SJani Nikula	display/intel_atomic.o \
236df0566a6SJani Nikula	display/intel_audio.o \
237df0566a6SJani Nikula	display/intel_bios.o \
23817cd58a8SJani Nikula	display/intel_bo.o \
239df0566a6SJani Nikula	display/intel_bw.o \
24074ad9ec9SNemesa Garg	display/intel_casf.o \
241df0566a6SJani Nikula	display/intel_cdclk.o \
242f14d81b7SGustavo Sousa	display/intel_cmtg.o \
243df0566a6SJani Nikula	display/intel_color.o \
2443e9b0655SChaitanya Kumar Borah	display/intel_colorop.o \
245ef105316SChaitanya Kumar Borah	display/intel_color_pipeline.o \
246df0566a6SJani Nikula	display/intel_combo_phy.o \
247df0566a6SJani Nikula	display/intel_connector.o \
248fbf756c3SDave Airlie	display/intel_crtc.o \
2493e29d3b3SJani Nikula	display/intel_crtc_state_dump.o \
25099ce270aSDave Airlie	display/intel_cursor.o \
251ac930babSVille Syrjälä	display/intel_dbuf_bw.o \
252df0566a6SJani Nikula	display/intel_display.o \
253adceb416SJani Nikula	display/intel_display_conversion.o \
25477316e75SJani Nikula	display/intel_display_driver.o \
2552b874a02SJani Nikula	display/intel_display_irq.o \
2568015bee0SJouni Högander	display/intel_display_params.o \
257df0566a6SJani Nikula	display/intel_display_power.o \
258323286c8SImre Deak	display/intel_display_power_map.o \
259ef1e1708SImre Deak	display/intel_display_power_well.o \
26059c6106eSJani Nikula	display/intel_display_reset.o \
261336c0eaeSJani Nikula	display/intel_display_rpm.o \
2626dbbff25SJani Nikula	display/intel_display_rps.o \
2636843cd85SJani Nikula	display/intel_display_snapshot.o \
264cd81a70dSJani Nikula	display/intel_display_utils.o \
26553dd7b1fSMatt Roper	display/intel_display_wa.o \
26632f9402dSAnusha Srivatsa	display/intel_dmc.o \
267765425f5SLuca Coelho	display/intel_dmc_wl.o \
268df0566a6SJani Nikula	display/intel_dpio_phy.o \
2698cf41f31SDave Airlie	display/intel_dpll.o \
270df0566a6SJani Nikula	display/intel_dpll_mgr.o \
271dc6d6158SJani Nikula	display/intel_dpt.o \
2721aba6713SJuha-Pekka Heikkila	display/intel_dpt_common.o \
273ed46f724SJani Nikula	display/intel_dram.o \
274a1b63119SJosé Roberto de Souza	display/intel_drrs.o \
27567f3b58fSAnimesh Manna	display/intel_dsb.o \
27698ed3698SAnimesh Manna	display/intel_dsb_buffer.o \
277f837a61fSImre Deak	display/intel_fb.o \
2785f449ed0SJouni Högander	display/intel_fb_bo.o \
279814c8757SDave Airlie	display/intel_fb_pin.o \
280df0566a6SJani Nikula	display/intel_fbc.o \
281777e687aSDave Airlie	display/intel_fdi.o \
282df0566a6SJani Nikula	display/intel_fifo_underrun.o \
283470022b5SVille Syrjälä	display/intel_flipq.o \
284df0566a6SJani Nikula	display/intel_frontbuffer.o \
2850ef1905eSVille Syrjälä	display/intel_global_state.o \
286df0566a6SJani Nikula	display/intel_hdcp.o \
2870f5b1144SSuraj Kandpal	display/intel_hdcp_gsc_message.o \
288df0566a6SJani Nikula	display/intel_hotplug.o \
289da38ba98SJani Nikula	display/intel_hotplug_irq.o \
29003120fefSJani Nikula	display/intel_hti.o \
2918ca0b875SImre Deak	display/intel_link_bw.o \
292b13604c0SJani Nikula	display/intel_load_detect.o \
293df0566a6SJani Nikula	display/intel_lpe_audio.o \
29460ded7ccSImre Deak	display/intel_modeset_lock.o \
2952c7676b6SJani Nikula	display/intel_modeset_setup.o \
2960db5649eSJani Nikula	display/intel_modeset_verify.o \
297df0566a6SJani Nikula	display/intel_overlay.o \
2983815e8f2SJani Nikula	display/intel_parent.o \
2996ca37b86SRodrigo Vivi	display/intel_pch.o \
300b2de2d00SVille Syrjälä	display/intel_pch_display.o \
301ae880cd0SVille Syrjälä	display/intel_pch_refclk.o \
302a649c2abSJani Nikula	display/intel_plane.o \
3031cd967c6SDave Airlie	display/intel_plane_initial.o \
3044c4cc7acSMika Kahola	display/intel_pmdemand.o \
305df0566a6SJani Nikula	display/intel_psr.o \
306df0566a6SJani Nikula	display/intel_quirks.o \
307b3d3c83eSJani Nikula	display/intel_rom.o \
3087fb3a1f7SJani Nikula	display/intel_sbi.o \
309bc85328fSImre Deak	display/intel_sprite.o \
310af3004c9SVille Syrjälä	display/intel_sprite_uapi.o \
3114fb87831SJani Nikula	display/intel_tc.o \
31262fe4515SJani Nikula	display/intel_vblank.o \
31300a16d02SDave Airlie	display/intel_vga.o \
31494b49d53SJani Nikula	display/intel_wm.o \
315ba470a99SVille Syrjälä	display/skl_prefill.o \
316714b1cdbSDave Airlie	display/skl_scaler.o \
31742a0d256SVille Syrjälä	display/skl_universal_plane.o \
3188393253bSJani Nikula	display/skl_watermark.o \
3195615e78eSJani Nikula	display/vlv_clock.o \
3208393253bSJani Nikula	display/vlv_sideband.o
321df0566a6SJani Nikulai915-$(CONFIG_ACPI) += \
322df0566a6SJani Nikula	display/intel_acpi.o \
323df0566a6SJani Nikula	display/intel_opregion.o
324df0566a6SJani Nikulai915-$(CONFIG_DRM_FBDEV_EMULATION) += \
32580d20fd9SJouni Högander	display/intel_fbdev.o \
32680d20fd9SJouni Högander	display/intel_fbdev_fb.o
32775658332SJani Nikulai915-$(CONFIG_DEBUG_FS) += \
32875658332SJani Nikula	display/intel_display_debugfs.o \
32975658332SJani Nikula	display/intel_display_debugfs_params.o \
33075658332SJani Nikula	display/intel_pipe_crc.o
3314520f53aSDaniel Vetter
3322fae6a86SDaniel Vetter# modesetting output/encoder code
333379bc100SJani Nikulai915-y += \
334379bc100SJani Nikula	display/dvo_ch7017.o \
335379bc100SJani Nikula	display/dvo_ch7xxx.o \
336379bc100SJani Nikula	display/dvo_ivch.o \
337379bc100SJani Nikula	display/dvo_ns2501.o \
338379bc100SJani Nikula	display/dvo_sil164.o \
339379bc100SJani Nikula	display/dvo_tfp410.o \
340917c2899SVille Syrjälä	display/g4x_dp.o \
34133e9e541SVille Syrjälä	display/g4x_hdmi.o \
342379bc100SJani Nikula	display/icl_dsi.o \
3436cc42fbeSJani Nikula	display/intel_backlight.o \
344379bc100SJani Nikula	display/intel_crt.o \
34551390cc0SRadhakrishna Sripada	display/intel_cx0_phy.o \
346379bc100SJani Nikula	display/intel_ddi.o \
34799092a97SDave Airlie	display/intel_ddi_buf_trans.o \
34869d43981SMatt Roper	display/intel_display_device.o \
349fd2b94a5SJani Nikula	display/intel_display_trace.o \
35089cb0ba4SImre Deak	display/intel_dkl_phy.o \
351379bc100SJani Nikula	display/intel_dp.o \
352aa850fb1SJani Nikula	display/intel_dp_aux.o \
353379bc100SJani Nikula	display/intel_dp_aux_backlight.o \
354d079b7e4SSean Paul	display/intel_dp_hdcp.o \
355379bc100SJani Nikula	display/intel_dp_link_training.o \
356379bc100SJani Nikula	display/intel_dp_mst.o \
357a5b40d4fSJani Nikula	display/intel_dp_test.o \
358379bc100SJani Nikula	display/intel_dsi.o \
359379bc100SJani Nikula	display/intel_dsi_dcs_backlight.o \
360379bc100SJani Nikula	display/intel_dsi_vbt.o \
361379bc100SJani Nikula	display/intel_dvo.o \
3623b3be899SImre Deak	display/intel_encoder.o \
363379bc100SJani Nikula	display/intel_gmbus.o \
364379bc100SJani Nikula	display/intel_hdmi.o \
365379bc100SJani Nikula	display/intel_lspcon.o \
366154ebdb7SSuraj Kandpal	display/intel_lt_phy.o \
367379bc100SJani Nikula	display/intel_lvds.o \
368379bc100SJani Nikula	display/intel_panel.o \
3690f16cd2aSVille Syrjälä	display/intel_pfit.o \
370abad6805SJani Nikula	display/intel_pps.o \
371c33ebdb7SVandita Kulkarni	display/intel_qp_tables.o \
372379bc100SJani Nikula	display/intel_sdvo.o \
37359476420SAnkit Nautiyal	display/intel_snps_hdmi_pll.o \
37429081008SMatt Roper	display/intel_snps_phy.o \
375379bc100SJani Nikula	display/intel_tv.o \
376379bc100SJani Nikula	display/intel_vdsc.o \
3775b0c5945SManasi Navare	display/intel_vrr.o \
378379bc100SJani Nikula	display/vlv_dsi.o \
379379bc100SJani Nikula	display/vlv_dsi_pll.o
3802fae6a86SDaniel Vetter
38191888b5bSImre Deaki915-$(CONFIG_DRM_I915_DP_TUNNEL) += \
38291888b5bSImre Deak	display/intel_dp_tunnel.o
38391888b5bSImre Deak
3840db5649eSJani Nikulai915-y += \
3850db5649eSJani Nikula	i915_perf.o
3865ed7a0cfSMichal Wajdeczko
387c5be8fc9SDaniele Ceraolo Spurio# Protected execution platform (PXP) support. Base support is required for HuC
388c5be8fc9SDaniele Ceraolo Spurioi915-y += \
3890436ac1bSHuang, Sean Z	pxp/intel_pxp.o \
3900db5649eSJani Nikula	pxp/intel_pxp_huc.o \
3910db5649eSJani Nikula	pxp/intel_pxp_tee.o
392c5be8fc9SDaniele Ceraolo Spurio
393c5be8fc9SDaniele Ceraolo Spurioi915-$(CONFIG_DRM_I915_PXP) += \
39495c9e122SHuang, Sean Z	pxp/intel_pxp_cmd.o \
395390cf1b2SDaniele Ceraolo Spurio	pxp/intel_pxp_debugfs.o \
396d6bf74deSAlan Previn	pxp/intel_pxp_gsccs.o \
3972ae09687SHuang, Sean Z	pxp/intel_pxp_irq.o \
3980cfab4cbSHuang, Sean Z	pxp/intel_pxp_pm.o \
399c5be8fc9SDaniele Ceraolo Spurio	pxp/intel_pxp_session.o
4003ad2dd9cSDaniele Ceraolo Spurio
40198a2f411SChris Wilson# Post-mortem debug and GPU hang state capture
4020db5649eSJani Nikulai915-$(CONFIG_DRM_I915_CAPTURE_ERROR) += \
4030db5649eSJani Nikula	i915_gpu_error.o
404953c7f82SChris Wilsoni915-$(CONFIG_DRM_I915_SELFTEST) += \
40557143f2eSThomas Hellström	gem/selftests/i915_gem_client_blt.o \
40610be98a7SChris Wilson	gem/selftests/igt_gem_utils.o \
407953c7f82SChris Wilson	selftests/i915_random.o \
40898dc0454SChris Wilson	selftests/i915_selftest.o \
409f3bc632aSChris Wilson	selftests/igt_atomic.o \
4108d2f6e2fSTvrtko Ursulin	selftests/igt_flush_test.o \
411e4a8c813SChris Wilson	selftests/igt_live_test.o \
4126fedafacSChris Wilson	selftests/igt_mmap.o \
41328d6ccceSTvrtko Ursulin	selftests/igt_reset.o \
414d4e3d455SChris Wilson	selftests/igt_spinner.o \
4150db5649eSJani Nikula	selftests/intel_scheduler_helpers.o \
416d4e3d455SChris Wilson	selftests/librapl.o
41798a2f411SChris Wilson
418cf9d2890SYu Zhang# virtual gpu code
4190db5649eSJani Nikulai915-y += \
4200db5649eSJani Nikula	i915_vgpu.o
421cf9d2890SYu Zhang
4227f0cf301SJani Nikulai915-$(CONFIG_DRM_I915_GVT) += \
4237f0cf301SJani Nikula	intel_gvt.o \
4247f0cf301SJani Nikula	intel_gvt_mmio_table.o
4250ad35fedSZhi Wanginclude $(src)/gvt/Makefile
4260ad35fedSZhi Wang
427c0e09200SDave Airlieobj-$(CONFIG_DRM_I915) += i915.o
4288b750bf7SChristoph Hellwigobj-$(CONFIG_DRM_I915_GVT_KVMGT) += kvmgt.o
429c6d4a099SMasahiro Yamada
430aaee4bbeSJani Nikula# kernel-doc test
431aaee4bbeSJani Nikula#
432aaee4bbeSJani Nikula# Enable locally for CONFIG_DRM_I915_WERROR=y. See also scripts/Makefile.build
433aaee4bbeSJani Nikulaifdef CONFIG_DRM_I915_WERROR
434002621a4SJean Delvare    cmd_checkdoc = PYTHONDONTWRITEBYTECODE=1 $(PYTHON3) $(KERNELDOC) -none -Werror $<
435aaee4bbeSJani Nikulaendif
436aaee4bbeSJani Nikula
437c6d4a099SMasahiro Yamada# header test
438c6d4a099SMasahiro Yamada
439c6d4a099SMasahiro Yamada# exclude some broken headers from the test coverage
440c6d4a099SMasahiro Yamadano-header-test := \
441e056f669SJani Nikula	display/intel_vbt_defs.h
442c6d4a099SMasahiro Yamada
4432047ace9SMasahiro Yamadaalways-$(CONFIG_DRM_I915_WERROR) += \
444c6d4a099SMasahiro Yamada	$(patsubst %.h,%.hdrtest, $(filter-out $(no-header-test), \
445b1992c37SMasahiro Yamada		$(shell cd $(src) && find * -name '*.h')))
446c6d4a099SMasahiro Yamada
447c6d4a099SMasahiro Yamadaquiet_cmd_hdrtest = HDRTEST $(patsubst %.hdrtest,%.h,$@)
448899ff790SJani Nikula      cmd_hdrtest = $(CC) $(filter-out $(CFLAGS_GCOV), $(c_flags)) -S -o /dev/null -x c /dev/null -include $<; \
44983ac5457SJani Nikula		$(srctree)/scripts/kernel-doc -none -Werror $<; touch $@
450c6d4a099SMasahiro Yamada
451c6d4a099SMasahiro Yamada$(obj)/%.hdrtest: $(src)/%.h FORCE
452c6d4a099SMasahiro Yamada	$(call if_changed_dep,hdrtest)
453