blob: ef68a0220eeb8f79756265271528a821e05b07ca [file] [log] [blame]
Ben Widawsky3a752a32013-02-07 10:30:03 -08001if BUILD_TESTS
Daniel Vettera6751ba2011-03-31 23:29:25 +02002noinst_PROGRAMS = \
Daniel Vetter08cf5372011-03-19 21:34:55 +01003 gem_stress \
Daniel Vetterf3616642011-10-30 20:51:03 +01004 $(TESTS_progs) \
Daniel Vetterc79c56c2012-11-28 11:08:31 +01005 $(TESTS_progs_M) \
Daniel Vetterba2255a2011-09-14 14:58:55 +02006 $(HANG) \
Daniel Vetter08cf5372011-03-19 21:34:55 +01007 $(NULL)
8
Alan Coopersmith1b5fd312012-08-24 14:02:04 -07009if HAVE_NOUVEAU
Daniel Vettercc4eeb92012-12-15 15:30:19 +010010NOUVEAU_TESTS_M = \
Daniel Vetterc2e05af2012-12-15 15:38:31 +010011 prime_nv_test \
Daniel Vettercc4eeb92012-12-15 15:30:19 +010012 prime_nv_pcopy
Daniel Vetterc2e05af2012-12-15 15:38:31 +010013NOUVEAU_TESTS = \
14 prime_nv_api
Alan Coopersmith1b5fd312012-08-24 14:02:04 -070015endif
16
Daniel Vetterc79c56c2012-11-28 11:08:31 +010017TESTS_progs_M = \
Daniel Vetter3cca0d82012-11-28 11:16:44 +010018 gem_basic \
Daniel Vetter792a05a2012-11-28 11:41:33 +010019 gem_cacheing \
Daniel Vetter4f6ab182012-11-28 12:00:33 +010020 gem_cpu_concurrent_blit \
Daniel Vetter9d65d482012-11-28 12:09:58 +010021 gem_cs_tlb \
Daniel Vetter53e184b2012-12-05 10:09:08 +010022 gem_dummy_reloc_loop \
Daniel Vetterd8df90d2012-12-01 00:51:53 +010023 gem_exec_bad_domains \
Daniel Vetterad591962012-12-05 04:16:38 +010024 gem_exec_nop \
Daniel Vetter2a9e1282012-11-28 12:17:40 +010025 gem_flink \
Daniel Vettera2778572012-11-28 12:35:03 +010026 gem_gtt_concurrent_blit \
Daniel Vetteraf228d42012-11-28 12:40:23 +010027 gem_mmap_gtt \
Daniel Vetter046b1492012-11-28 13:08:07 +010028 gem_partial_pwrite_pread \
Daniel Vetterca2851f2012-11-28 13:08:20 +010029 gem_ringfill \
Daniel Vetter129d2012012-11-28 13:10:26 +010030 gem_set_tiling_vs_blt \
Daniel Vetterdf11a6f2012-11-28 13:25:12 +010031 gem_tiled_partial_pwrite_pread \
Daniel Vettercc4eeb92012-12-15 15:30:19 +010032 $(NOUVEAU_TESTS_M) \
Daniel Vetteracdf7172012-12-15 00:48:47 +010033 kms_flip \
Daniel Vetterc79c56c2012-11-28 11:08:31 +010034 $(NULL)
35
Daniel Vetterf3616642011-10-30 20:51:03 +010036TESTS_progs = \
37 getversion \
Eric Anholt8c641832009-03-26 17:15:11 -070038 getclient \
39 getstats \
Daniel Vetter14319382012-10-09 19:29:02 +020040 gem_exec_big \
Chris Wilson5fc09c82011-01-21 00:43:11 +000041 gem_exec_blt \
Daniel Vetterf5854c82011-12-02 20:36:06 +010042 gem_exec_faulting_reloc \
Eric Anholt8c641832009-03-26 17:15:11 -070043 gem_readwrite \
Chris Wilsonec2eac62012-11-14 12:15:01 +000044 gem_lut_handle \
Chris Wilson230d77f2012-11-14 12:15:01 +000045 gem_exec_lut_handle \
Eric Anholt3b301df2009-04-03 14:23:06 -070046 gem_mmap \
Daniel Vetter16c4f522012-03-20 14:24:14 +010047 gem_mmap_offset_exhaustion \
Daniel Vetter7160c532012-11-28 12:38:00 +010048 gem_hangcheck_forcewake \
Chris Wilson2d0a8e82013-01-07 11:43:38 +000049 gem_pin \
Chris Wilson5fc09c82011-01-21 00:43:11 +000050 gem_pwrite \
Eric Anholtcd9ba0a2009-04-07 16:18:11 -070051 gem_pread_after_blit \
Daniel Vetterff6abb32012-04-17 17:25:24 +020052 gem_set_tiling_vs_gtt \
Daniel Vetter16bc6192012-04-17 22:02:33 +020053 gem_set_tiling_vs_pwrite \
Eric Anholt548a6a72009-04-07 16:21:16 -070054 gem_tiled_pread \
Daniel Vetter783f16e2011-12-02 10:55:56 +010055 gem_tiled_pread_pwrite \
Daniel Vetter98129fa2012-01-22 21:58:27 +010056 gem_tiled_swapping \
Chris Wilson9fd7e352011-02-01 19:22:32 +000057 gem_linear_blits \
Chris Wilsona0a0b6a2011-07-08 14:54:32 +010058 gem_vmap_blits \
Daniel Vetter2d431fd2012-10-03 13:44:30 +020059 gem_threaded_access_tiled \
Mika Kuoppala796fd582012-12-04 19:43:13 +020060 gem_seqno_wrap \
Jesse Barnes433e1c82009-05-14 14:39:48 -070061 gem_tiled_blits \
Chris Wilson371f87f2011-02-01 10:53:57 +000062 gem_tiled_fence_blits \
Jesse Barnesbbafc3d2009-06-18 18:07:47 -070063 gem_largeobject \
Chris Wilson89080552011-06-23 14:04:35 +010064 gem_bad_length \
Chris Wilsonf19a1942010-12-23 12:44:51 +000065 gem_fence_thrash \
Chris Wilson3ca054c2011-06-04 21:41:11 +010066 gem_fenced_exec_thrash \
Chris Wilsonf19a1942010-12-23 12:44:51 +000067 gem_gtt_speed \
Daniel Vetter082826d2012-08-15 10:26:08 +020068 gem_gtt_cpu_tlb \
Daniel Vetter7492f972012-01-24 18:05:11 +010069 gem_cs_prefetch \
Chris Wilson3b9a76d2012-10-02 17:27:16 +010070 gem_cpu_reloc \
Chris Wilson20b69032011-06-05 11:20:34 +010071 gen3_render_linear_blits \
72 gen3_render_tiledx_blits \
73 gen3_render_tiledy_blits \
Chris Wilsonf5e63b12011-06-05 17:23:09 +010074 gen3_render_mixed_blits \
75 gen3_mixed_blits \
Chris Wilson3ad92902012-12-06 19:32:14 +000076 gem_render_linear_blits \
Chris Wilsonc0dbf042012-12-06 20:36:24 +000077 gem_render_tiled_blits \
Daniel Vetter32f49c72011-09-08 10:50:37 +020078 gem_storedw_loop_render \
79 gem_storedw_loop_blt \
80 gem_storedw_loop_bsd \
Jesse Barnes922214f2011-08-12 12:51:34 -070081 gem_storedw_batches_loop \
Daniel Vetterb8245e12011-09-12 20:45:06 +020082 gem_double_irq_loop \
Daniel Vetter61b98062011-09-09 20:44:27 +020083 gem_ring_sync_loop \
Daniel Vetterfbf89502011-09-07 09:31:00 +020084 gem_pipe_control_store_loop \
Daniel Vettercf72da52012-04-22 12:35:23 +020085 gem_unfence_active_buffers \
Daniel Vetter5ef806b2011-10-28 17:39:14 +020086 gem_unref_active_buffers \
Daniel Vetterad6be1f2011-12-04 12:08:59 +010087 gem_reloc_vs_gpu \
root553021d2012-01-11 14:37:42 +010088 drm_vma_limiter \
Daniel Vetter36d25cc2012-01-11 14:59:47 +010089 drm_vma_limiter_cpu \
90 drm_vma_limiter_gtt \
Daniel Vetter7a54bfa2012-01-11 16:56:50 +010091 drm_vma_limiter_cached \
Ben Widawskyf841f402012-03-24 19:04:10 -070092 sysfs_rc6_residency \
Ben Widawsky0cedccc2012-09-07 18:12:07 -070093 sysfs_rps \
Ben Widawsky9cfcb752012-05-11 13:54:12 -070094 gem_wait_render_timeout \
Ben Widawskyf7e356d2012-06-14 10:00:57 -070095 gem_ctx_create \
96 gem_ctx_bad_destroy \
97 gem_ctx_exec \
98 gem_ctx_bad_exec \
Ben Widawskyafcffe72012-06-14 11:04:01 -070099 gem_ctx_basic \
Daniel Vetterfb748aa2012-07-23 06:41:10 +0200100 gem_reg_read \
Alan Coopersmith1b5fd312012-08-24 14:02:04 -0700101 $(NOUVEAU_TESTS) \
Daniel Vettere4014682012-08-24 23:18:48 +0200102 prime_self_import \
Dave Airlie71ba0032012-08-14 14:16:04 +1000103 prime_udl \
Chris Wilsonf19a1942010-12-23 12:44:51 +0000104 $(NULL)
Eric Anholt8c641832009-03-26 17:15:11 -0700105
Daniel Vettereb645912012-01-14 17:05:39 +0100106# IMPORTANT: The ZZ_ tests need to be run last!
107# ... and make can't deal with inlined comments ...
Daniel Vetterc79c56c2012-11-28 11:08:31 +0100108TESTS_scripts_M = \
109 $(NULL)
110
Daniel Vetter91b3c7f2011-10-30 21:24:12 +0100111TESTS_scripts = \
Daniel Vetterd798ab92012-12-18 22:55:58 +0100112 test_rte_check
Daniel Vetter91b3c7f2011-10-30 21:24:12 +0100113 debugfs_reader \
Eugeni Dodonov48186fe2011-11-10 11:12:10 -0200114 debugfs_emon_crash \
Daniel Vetter55fdd7f2012-05-31 13:49:32 +0200115 sysfs_l3_parity \
Eugeni Dodonovfaf413d2011-11-10 11:27:27 -0200116 sysfs_edid_timing \
roota628d562012-05-25 11:02:09 +0200117 module_reload \
Daniel Vetterbb40c7e2012-04-25 13:21:38 +0200118 ZZ_hangman \
Daniel Vetter91b3c7f2011-10-30 21:24:12 +0100119 $(NULL)
120
Daniel Vetter175fc652012-12-04 10:37:55 +0100121# This target contains testcases which support automagic subtest enumeration
122# from the piglit testrunner with --list-subtests and running individual
123# subtests with --run-subtest <testname>
Daniel Vetterc79c56c2012-11-28 11:08:31 +0100124multi_kernel_tests = \
125 $(TESTS_progs_M) \
126 $(TESTS_scripts_M) \
127 $(NULL)
128
129single_kernel_tests = \
Daniel Vetter20ff3832011-10-30 22:27:19 +0100130 $(TESTS_progs) \
Daniel Vetter91b3c7f2011-10-30 21:24:12 +0100131 $(TESTS_scripts) \
132 $(NULL)
Daniel Vetterf3616642011-10-30 20:51:03 +0100133
Daniel Vetterc79c56c2012-11-28 11:08:31 +0100134kernel_tests = \
135 $(single_kernel_tests) \
136 $(multi_kernel_tests) \
137 $(NULL)
138
Daniel Vetter20ff3832011-10-30 22:27:19 +0100139TESTS = \
140 $(NULL)
141
142test:
Daniel Vetterc79c56c2012-11-28 11:08:31 +0100143 @whoami | grep root || ( echo ERROR: not running as root; exit 1 )
144 @./check_drm_clients
145 @make TESTS="${kernel_tests}" check
146
147list-single-tests:
148 @echo TESTLIST
149 @echo ${single_kernel_tests}
150 @echo END TESTLIST
151
152list-multi-tests:
153 @echo TESTLIST
154 @echo ${multi_kernel_tests}
155 @echo END TESTLIST
Daniel Vetter20ff3832011-10-30 22:27:19 +0100156
Chris Wilsond4127e02011-02-09 10:24:39 +0000157HANG = \
Chris Wilson84c32bd2011-03-05 09:01:01 +0000158 gem_bad_batch \
Chris Wilsond4127e02011-02-09 10:24:39 +0000159 gem_hang \
Daniel Vetter2c380c22011-09-14 11:06:03 +0200160 gem_bad_blit \
Daniel Vetter32910232011-10-31 23:19:08 +0100161 gem_bad_address \
Daniel Vetterd79414f2012-11-29 11:27:32 +0100162 gem_non_secure_batch \
Chris Wilsond4127e02011-02-09 10:24:39 +0000163 $(NULL)
164
Daniel Vetterc79c56c2012-11-28 11:08:31 +0100165EXTRA_PROGRAMS = $(TESTS_progs) $(TESTS_progs_M) $(HANG)
166EXTRA_DIST = $(TESTS_scripts) $(TESTS_scripts_M) drm_lib.sh check_drm_clients debugfs_wedged
Eric Anholt895a4152009-03-26 18:47:42 -0700167CLEANFILES = $(EXTRA_PROGRAMS)
168
Gaetan Nadon665b8662012-01-03 21:12:23 -0500169AM_CFLAGS = $(DRM_CFLAGS) $(CWARNFLAGS) \
Eric Anholt895a4152009-03-26 18:47:42 -0700170 -I$(srcdir)/.. \
171 -I$(srcdir)/../lib
Eric Anholt3b301df2009-04-03 14:23:06 -0700172LDADD = ../lib/libintel_tools.la $(PCIACCESS_LIBS) $(DRM_LIBS)
Chris Wilson8f3f8622009-09-01 10:09:55 +0100173
Daniel Vetter7f7cafe2012-01-24 10:50:05 +0100174testdisplay_SOURCES = \
175 testdisplay.c \
176 testdisplay.h \
177 testdisplay_hotplug.c \
178 $(NULL)
179
Daniel Vetterf3616642011-10-30 20:51:03 +0100180TESTS_progs += testdisplay
Jesse Barnes5406c632010-12-21 09:38:23 -0800181LDADD += $(CAIRO_LIBS) $(LIBUDEV_LIBS) $(GLIB_LIBS)
182AM_CFLAGS += $(CAIRO_CFLAGS) $(LIBUDEV_CFLAGS) $(GLIB_CFLAGS)
Jesse Barnes5406c632010-12-21 09:38:23 -0800183
Alan Coopersmith504c4fa2012-01-06 15:45:29 -0800184gem_fence_thrash_CFLAGS = $(AM_CFLAGS) $(THREAD_CFLAGS)
Chris Wilson8f3f8622009-09-01 10:09:55 +0100185gem_fence_thrash_LDADD = $(LDADD) -lpthread
Daniel Vetter2d431fd2012-10-03 13:44:30 +0200186gem_threaded_access_tiled_LDADD = $(LDADD) -lpthread
Ben Widawsky9cfcb752012-05-11 13:54:12 -0700187
188gem_wait_render_timeout_LDADD = $(LDADD) -lrt
Ville Syrjäläf0546372012-12-18 16:51:27 +0200189kms_flip_LDADD = $(LDADD) -lrt
Ben Widawskyafcffe72012-06-14 11:04:01 -0700190
191gem_ctx_basic_LDADD = $(LDADD) -lpthread
Maarten Lankhorst45200252012-08-13 15:57:57 +0200192
Maarten Lankhorstfc54f2e2012-08-14 18:25:50 +0200193prime_nv_test_CFLAGS = $(AM_CFLAGS) $(DRM_NOUVEAU_CFLAGS)
194prime_nv_test_LDADD = $(LDADD) $(DRM_NOUVEAU_LIBS)
195prime_nv_api_CFLAGS = $(AM_CFLAGS) $(DRM_NOUVEAU_CFLAGS)
196prime_nv_api_LDADD = $(LDADD) $(DRM_NOUVEAU_LIBS)
197prime_nv_pcopy_CFLAGS = $(AM_CFLAGS) $(DRM_NOUVEAU_CFLAGS)
198prime_nv_pcopy_LDADD = $(LDADD) $(DRM_NOUVEAU_LIBS)
Ben Widawsky3a752a32013-02-07 10:30:03 -0800199endif