forked from ~ljy/RK356X_SDK_RELEASE

hc
2023-12-11 6778948f9de86c3cfaf36725a7c87dcff9ba247f
kernel/drivers/gpu/drm/i915/Makefile
....@@ -12,182 +12,294 @@
1212 # Note the danger in using -Wall -Wextra is that when CI updates gcc we
1313 # will most likely get a sudden build breakage... Hopefully we will fix
1414 # new warnings before CI updates!
15
-subdir-ccflags-y := -Wall -Wextra -Wvla
15
+subdir-ccflags-y := -Wall -Wextra
1616 subdir-ccflags-y += $(call cc-disable-warning, unused-parameter)
1717 subdir-ccflags-y += $(call cc-disable-warning, type-limits)
1818 subdir-ccflags-y += $(call cc-disable-warning, missing-field-initializers)
19
-subdir-ccflags-y += $(call cc-disable-warning, implicit-fallthrough)
2019 subdir-ccflags-y += $(call cc-disable-warning, unused-but-set-variable)
2120 # clang warnings
2221 subdir-ccflags-y += $(call cc-disable-warning, sign-compare)
2322 subdir-ccflags-y += $(call cc-disable-warning, sometimes-uninitialized)
2423 subdir-ccflags-y += $(call cc-disable-warning, initializer-overrides)
24
+subdir-ccflags-y += $(call cc-disable-warning, uninitialized)
25
+subdir-ccflags-y += $(call cc-disable-warning, frame-address)
2526 subdir-ccflags-$(CONFIG_DRM_I915_WERROR) += -Werror
2627
2728 # Fine grained warnings disable
2829 CFLAGS_i915_pci.o = $(call cc-disable-warning, override-init)
29
-CFLAGS_intel_fbdev.o = $(call cc-disable-warning, override-init)
30
+CFLAGS_display/intel_fbdev.o = $(call cc-disable-warning, override-init)
3031
31
-subdir-ccflags-y += \
32
- $(call as-instr,movntdqa (%eax)$(comma)%xmm0,-DCONFIG_AS_MOVNTDQA)
32
+subdir-ccflags-y += -I$(srctree)/$(src)
3333
3434 # Please keep these build lists sorted!
3535
3636 # core driver code
37
-i915-y := i915_drv.o \
37
+i915-y += i915_drv.o \
38
+ i915_config.o \
3839 i915_irq.o \
39
- i915_memcpy.o \
40
- i915_mm.o \
40
+ i915_getparam.o \
41
+ i915_mitigations.o \
4142 i915_params.o \
4243 i915_pci.o \
43
- i915_suspend.o \
44
- i915_syncmap.o \
45
- i915_sw_fence.o \
44
+ i915_scatterlist.o \
45
+ i915_suspend.o \
46
+ i915_switcheroo.o \
4647 i915_sysfs.o \
47
- intel_csr.o \
48
+ i915_utils.o \
4849 intel_device_info.o \
50
+ intel_dram.o \
51
+ intel_memory_region.o \
52
+ intel_pch.o \
4953 intel_pm.o \
5054 intel_runtime_pm.o \
51
- intel_workarounds.o
55
+ intel_sideband.o \
56
+ intel_uncore.o \
57
+ intel_wakeref.o \
58
+ vlv_suspend.o
59
+
60
+# core library code
61
+i915-y += \
62
+ i915_memcpy.o \
63
+ i915_mm.o \
64
+ i915_sw_fence.o \
65
+ i915_sw_fence_work.o \
66
+ i915_syncmap.o \
67
+ i915_user_extensions.o
5268
5369 i915-$(CONFIG_COMPAT) += i915_ioc32.o
54
-i915-$(CONFIG_DEBUG_FS) += i915_debugfs.o intel_pipe_crc.o
70
+i915-$(CONFIG_DEBUG_FS) += \
71
+ i915_debugfs.o \
72
+ i915_debugfs_params.o \
73
+ display/intel_display_debugfs.o \
74
+ display/intel_pipe_crc.o
5575 i915-$(CONFIG_PERF_EVENTS) += i915_pmu.o
5676
57
-# GEM code
58
-i915-y += i915_cmd_parser.o \
59
- i915_gem_batch_pool.o \
60
- i915_gem_clflush.o \
61
- i915_gem_context.o \
62
- i915_gem_dmabuf.o \
77
+# "Graphics Technology" (aka we talk to the gpu)
78
+gt-y += \
79
+ gt/debugfs_engines.o \
80
+ gt/debugfs_gt.o \
81
+ gt/debugfs_gt_pm.o \
82
+ gt/gen2_engine_cs.o \
83
+ gt/gen6_engine_cs.o \
84
+ gt/gen6_ppgtt.o \
85
+ gt/gen7_renderclear.o \
86
+ gt/gen8_ppgtt.o \
87
+ gt/intel_breadcrumbs.o \
88
+ gt/intel_context.o \
89
+ gt/intel_context_param.o \
90
+ gt/intel_context_sseu.o \
91
+ gt/intel_engine_cs.o \
92
+ gt/intel_engine_heartbeat.o \
93
+ gt/intel_engine_pm.o \
94
+ gt/intel_engine_user.o \
95
+ gt/intel_ggtt.o \
96
+ gt/intel_ggtt_fencing.o \
97
+ gt/intel_gt.o \
98
+ gt/intel_gt_buffer_pool.o \
99
+ gt/intel_gt_clock_utils.o \
100
+ gt/intel_gt_irq.o \
101
+ gt/intel_gt_pm.o \
102
+ gt/intel_gt_pm_irq.o \
103
+ gt/intel_gt_requests.o \
104
+ gt/intel_gtt.o \
105
+ gt/intel_llc.o \
106
+ gt/intel_lrc.o \
107
+ gt/intel_mocs.o \
108
+ gt/intel_ppgtt.o \
109
+ gt/intel_rc6.o \
110
+ gt/intel_renderstate.o \
111
+ gt/intel_reset.o \
112
+ gt/intel_ring.o \
113
+ gt/intel_ring_submission.o \
114
+ gt/intel_rps.o \
115
+ gt/intel_sseu.o \
116
+ gt/intel_sseu_debugfs.o \
117
+ gt/intel_timeline.o \
118
+ gt/intel_workarounds.o \
119
+ gt/shmem_utils.o \
120
+ gt/sysfs_engines.o
121
+# autogenerated null render state
122
+gt-y += \
123
+ gt/gen6_renderstate.o \
124
+ gt/gen7_renderstate.o \
125
+ gt/gen8_renderstate.o \
126
+ gt/gen9_renderstate.o
127
+i915-y += $(gt-y)
128
+
129
+# GEM (Graphics Execution Management) code
130
+gem-y += \
131
+ gem/i915_gem_busy.o \
132
+ gem/i915_gem_clflush.o \
133
+ gem/i915_gem_client_blt.o \
134
+ gem/i915_gem_context.o \
135
+ gem/i915_gem_dmabuf.o \
136
+ gem/i915_gem_domain.o \
137
+ gem/i915_gem_execbuffer.o \
138
+ gem/i915_gem_fence.o \
139
+ gem/i915_gem_internal.o \
140
+ gem/i915_gem_object.o \
141
+ gem/i915_gem_object_blt.o \
142
+ gem/i915_gem_lmem.o \
143
+ gem/i915_gem_mman.o \
144
+ gem/i915_gem_pages.o \
145
+ gem/i915_gem_phys.o \
146
+ gem/i915_gem_pm.o \
147
+ gem/i915_gem_region.o \
148
+ gem/i915_gem_shmem.o \
149
+ gem/i915_gem_shrinker.o \
150
+ gem/i915_gem_stolen.o \
151
+ gem/i915_gem_throttle.o \
152
+ gem/i915_gem_tiling.o \
153
+ gem/i915_gem_userptr.o \
154
+ gem/i915_gem_wait.o \
155
+ gem/i915_gemfs.o
156
+i915-y += \
157
+ $(gem-y) \
158
+ i915_active.o \
159
+ i915_buddy.o \
160
+ i915_cmd_parser.o \
63161 i915_gem_evict.o \
64
- i915_gem_execbuffer.o \
65
- i915_gem_fence_reg.o \
66162 i915_gem_gtt.o \
67
- i915_gem_internal.o \
68163 i915_gem.o \
69
- i915_gem_object.o \
70
- i915_gem_render_state.o \
71
- i915_gem_shrinker.o \
72
- i915_gem_stolen.o \
73
- i915_gem_tiling.o \
74
- i915_gem_userptr.o \
75
- i915_gemfs.o \
164
+ i915_globals.o \
76165 i915_query.o \
77166 i915_request.o \
78
- i915_timeline.o \
167
+ i915_scheduler.o \
79168 i915_trace_points.o \
80169 i915_vma.o \
81
- intel_breadcrumbs.o \
82
- intel_engine_cs.o \
83
- intel_hangcheck.o \
84
- intel_lrc.o \
85
- intel_mocs.o \
86
- intel_ringbuffer.o \
87
- intel_uncore.o \
170
+ intel_region_lmem.o \
88171 intel_wopcm.o
89172
90173 # general-purpose microcontroller (GuC) support
91
-i915-y += intel_uc.o \
92
- intel_uc_fw.o \
93
- intel_guc.o \
94
- intel_guc_ads.o \
95
- intel_guc_ct.o \
96
- intel_guc_fw.o \
97
- intel_guc_log.o \
98
- intel_guc_submission.o \
99
- intel_huc.o \
100
- intel_huc_fw.o
101
-
102
-# autogenerated null render state
103
-i915-y += intel_renderstate_gen6.o \
104
- intel_renderstate_gen7.o \
105
- intel_renderstate_gen8.o \
106
- intel_renderstate_gen9.o
174
+i915-y += gt/uc/intel_uc.o \
175
+ gt/uc/intel_uc_debugfs.o \
176
+ gt/uc/intel_uc_fw.o \
177
+ gt/uc/intel_guc.o \
178
+ gt/uc/intel_guc_ads.o \
179
+ gt/uc/intel_guc_ct.o \
180
+ gt/uc/intel_guc_debugfs.o \
181
+ gt/uc/intel_guc_fw.o \
182
+ gt/uc/intel_guc_log.o \
183
+ gt/uc/intel_guc_log_debugfs.o \
184
+ gt/uc/intel_guc_submission.o \
185
+ gt/uc/intel_huc.o \
186
+ gt/uc/intel_huc_debugfs.o \
187
+ gt/uc/intel_huc_fw.o
107188
108189 # modesetting core code
109
-i915-y += intel_audio.o \
110
- intel_atomic.o \
111
- intel_atomic_plane.o \
112
- intel_bios.o \
113
- intel_cdclk.o \
114
- intel_color.o \
115
- intel_display.o \
116
- intel_dpio_phy.o \
117
- intel_dpll_mgr.o \
118
- intel_fbc.o \
119
- intel_fifo_underrun.o \
120
- intel_frontbuffer.o \
121
- intel_hdcp.o \
122
- intel_hotplug.o \
123
- intel_modes.o \
124
- intel_overlay.o \
125
- intel_psr.o \
126
- intel_sideband.o \
127
- intel_sprite.o
128
-i915-$(CONFIG_ACPI) += intel_acpi.o intel_opregion.o
129
-i915-$(CONFIG_DRM_FBDEV_EMULATION) += intel_fbdev.o
190
+i915-y += \
191
+ display/intel_atomic.o \
192
+ display/intel_atomic_plane.o \
193
+ display/intel_audio.o \
194
+ display/intel_bios.o \
195
+ display/intel_bw.o \
196
+ display/intel_cdclk.o \
197
+ display/intel_color.o \
198
+ display/intel_combo_phy.o \
199
+ display/intel_connector.o \
200
+ display/intel_csr.o \
201
+ display/intel_display.o \
202
+ display/intel_display_power.o \
203
+ display/intel_dpio_phy.o \
204
+ display/intel_dpll_mgr.o \
205
+ display/intel_dsb.o \
206
+ display/intel_fbc.o \
207
+ display/intel_fifo_underrun.o \
208
+ display/intel_frontbuffer.o \
209
+ display/intel_global_state.o \
210
+ display/intel_hdcp.o \
211
+ display/intel_hotplug.o \
212
+ display/intel_lpe_audio.o \
213
+ display/intel_overlay.o \
214
+ display/intel_psr.o \
215
+ display/intel_quirks.o \
216
+ display/intel_sprite.o \
217
+ display/intel_tc.o \
218
+ display/intel_vga.o
219
+i915-$(CONFIG_ACPI) += \
220
+ display/intel_acpi.o \
221
+ display/intel_opregion.o
222
+i915-$(CONFIG_DRM_FBDEV_EMULATION) += \
223
+ display/intel_fbdev.o
130224
131225 # modesetting output/encoder code
132
-i915-y += dvo_ch7017.o \
133
- dvo_ch7xxx.o \
134
- dvo_ivch.o \
135
- dvo_ns2501.o \
136
- dvo_sil164.o \
137
- dvo_tfp410.o \
138
- icl_dsi.o \
139
- intel_crt.o \
140
- intel_ddi.o \
141
- intel_dp_aux_backlight.o \
142
- intel_dp_link_training.o \
143
- intel_dp_mst.o \
144
- intel_dp.o \
145
- intel_dsi_dcs_backlight.o \
146
- intel_dsi_vbt.o \
147
- intel_dvo.o \
148
- intel_hdmi.o \
149
- intel_i2c.o \
150
- intel_lspcon.o \
151
- intel_lvds.o \
152
- intel_panel.o \
153
- intel_sdvo.o \
154
- intel_tv.o \
155
- vlv_dsi.o \
156
- vlv_dsi_pll.o
226
+i915-y += \
227
+ display/dvo_ch7017.o \
228
+ display/dvo_ch7xxx.o \
229
+ display/dvo_ivch.o \
230
+ display/dvo_ns2501.o \
231
+ display/dvo_sil164.o \
232
+ display/dvo_tfp410.o \
233
+ display/icl_dsi.o \
234
+ display/intel_crt.o \
235
+ display/intel_ddi.o \
236
+ display/intel_dp.o \
237
+ display/intel_dp_aux_backlight.o \
238
+ display/intel_dp_hdcp.o \
239
+ display/intel_dp_link_training.o \
240
+ display/intel_dp_mst.o \
241
+ display/intel_dsi.o \
242
+ display/intel_dsi_dcs_backlight.o \
243
+ display/intel_dsi_vbt.o \
244
+ display/intel_dvo.o \
245
+ display/intel_gmbus.o \
246
+ display/intel_hdmi.o \
247
+ display/intel_lspcon.o \
248
+ display/intel_lvds.o \
249
+ display/intel_panel.o \
250
+ display/intel_sdvo.o \
251
+ display/intel_tv.o \
252
+ display/intel_vdsc.o \
253
+ display/vlv_dsi.o \
254
+ display/vlv_dsi_pll.o
255
+
256
+i915-y += i915_perf.o
157257
158258 # Post-mortem debug and GPU hang state capture
159259 i915-$(CONFIG_DRM_I915_CAPTURE_ERROR) += i915_gpu_error.o
160260 i915-$(CONFIG_DRM_I915_SELFTEST) += \
261
+ gem/selftests/igt_gem_utils.o \
161262 selftests/i915_random.o \
162263 selftests/i915_selftest.o \
163
- selftests/igt_flush_test.o
264
+ selftests/igt_atomic.o \
265
+ selftests/igt_flush_test.o \
266
+ selftests/igt_live_test.o \
267
+ selftests/igt_mmap.o \
268
+ selftests/igt_reset.o \
269
+ selftests/igt_spinner.o \
270
+ selftests/librapl.o
164271
165272 # virtual gpu code
166273 i915-y += i915_vgpu.o
167
-
168
-# perf code
169
-i915-y += i915_perf.o \
170
- i915_oa_hsw.o \
171
- i915_oa_bdw.o \
172
- i915_oa_chv.o \
173
- i915_oa_sklgt2.o \
174
- i915_oa_sklgt3.o \
175
- i915_oa_sklgt4.o \
176
- i915_oa_bxt.o \
177
- i915_oa_kblgt2.o \
178
- i915_oa_kblgt3.o \
179
- i915_oa_glk.o \
180
- i915_oa_cflgt2.o \
181
- i915_oa_cflgt3.o \
182
- i915_oa_cnl.o \
183
- i915_oa_icl.o
184274
185275 ifeq ($(CONFIG_DRM_I915_GVT),y)
186276 i915-y += intel_gvt.o
187277 include $(src)/gvt/Makefile
188278 endif
189279
190
-# LPE Audio for VLV and CHT
191
-i915-y += intel_lpe_audio.o
192
-
193280 obj-$(CONFIG_DRM_I915) += i915.o
281
+obj-$(CONFIG_DRM_I915_GVT_KVMGT) += gvt/kvmgt.o
282
+
283
+# header test
284
+
285
+# exclude some broken headers from the test coverage
286
+no-header-test := \
287
+ display/intel_vbt_defs.h \
288
+ gvt/execlist.h \
289
+ gvt/fb_decoder.h \
290
+ gvt/gtt.h \
291
+ gvt/gvt.h \
292
+ gvt/interrupt.h \
293
+ gvt/mmio_context.h \
294
+ gvt/mpt.h \
295
+ gvt/scheduler.h
296
+
297
+extra-$(CONFIG_DRM_I915_WERROR) += \
298
+ $(patsubst %.h,%.hdrtest, $(filter-out $(no-header-test), \
299
+ $(shell cd $(srctree)/$(src) && find * -name '*.h')))
300
+
301
+quiet_cmd_hdrtest = HDRTEST $(patsubst %.hdrtest,%.h,$@)
302
+ cmd_hdrtest = $(CC) $(filter-out $(CFLAGS_GCOV), $(c_flags)) -S -o /dev/null -x c /dev/null -include $<; touch $@
303
+
304
+$(obj)/%.hdrtest: $(src)/%.h FORCE
305
+ $(call if_changed_dep,hdrtest)