diff --git a/tests/Makefile.am b/tests/Makefile.am
index 12cc6dc..9a1c770 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -1,19 +1,19 @@
 include Makefile.sources
 
 if HAVE_LIBDRM_AMDGPU
-    TESTS_progs_M += $(AMDGPU_TESTS_M)
+    TESTS_progs += $(AMDGPU_TESTS)
 endif
 
 if HAVE_LIBDRM_NOUVEAU
-    TESTS_progs_M += $(NOUVEAU_TESTS_M)
+    TESTS_progs += $(NOUVEAU_TESTS)
 endif
 
 if HAVE_LIBDRM_VC4
-    TESTS_progs_M += $(VC4_TESTS_M)
+    TESTS_progs += $(VC4_TESTS)
 endif
 
 if HAVE_CHAMELIUM
-TESTS_progs_M += \
+TESTS_progs += \
 	chamelium \
 	$(NULL)
 endif
@@ -21,12 +21,12 @@ endif
 if BUILD_TESTS
 test-list.txt: Makefile.sources
 	@echo TESTLIST > $@
-	@echo ${single_kernel_tests} ${multi_kernel_tests} >> $@
+	@echo ${kernel_tests} >> $@
 	@echo END TESTLIST >> $@
 
 test-list-full.txt: Makefile.sources
 	@echo TESTLIST > $@
-	@echo ${single_kernel_tests} ${multi_kernel_tests} ${extra_multi_kernel_tests} >> $@
+	@echo ${kernel_tests} ${extra_kernel_tests} >> $@
 	@echo END TESTLIST >> $@
 
 
@@ -38,13 +38,11 @@ noinst_PROGRAMS = \
 pkglibexec_PROGRAMS = \
 	gem_stress \
 	$(TESTS_progs) \
-	$(TESTS_progs_M) \
-	$(TESTS_progs_XM) \
+	$(TESTS_progs_X) \
 	$(NULL)
 
 dist_pkglibexec_SCRIPTS = \
 	$(TESTS_scripts) \
-	$(TESTS_scripts_M) \
 	$(scripts) \
 	$(NULL)
 
diff --git a/tests/Makefile.sources b/tests/Makefile.sources
index 14ea5b6..dafb028 100644
--- a/tests/Makefile.sources
+++ b/tests/Makefile.sources
@@ -1,10 +1,10 @@
-NOUVEAU_TESTS_M = \
+NOUVEAU_TESTS = \
 	prime_nv_api \
 	prime_nv_pcopy \
 	prime_nv_test \
 	$(NULL)
 
-VC4_TESTS_M = \
+VC4_TESTS = \
 	vc4_create_bo \
 	vc4_dmabuf_poll \
 	vc4_lookup_fail \
@@ -12,30 +12,53 @@ VC4_TESTS_M = \
 	vc4_wait_seqno \
 	$(NULL)
 
-AMDGPU_TESTS_M = \
+AMDGPU_TESTS = \
 	amdgpu/amd_basic \
 	amdgpu/amd_cs_nop \
 	amdgpu/amd_prime \
 	$(NULL)
 
-TESTS_progs_M = \
+TESTS_progs = \
+	core_auth \
 	core_get_client_auth \
+	core_getclient \
+	core_getstats \
+	core_getversion \
+	core_prop_blob \
+	core_setmaster_vs_auth \
+	drm_import_export \
 	drm_mm \
+	drm_read \
+	drm_vma_limiter \
+	drm_vma_limiter_cached \
+	drm_vma_limiter_cpu \
+	drm_vma_limiter_gtt \
 	drv_getparams_basic \
+	drv_hangman \
+	drv_missed_irq \
+	drv_module_reload \
 	drv_selftest \
 	drv_suspend \
-	drv_hangman \
+	gem_bad_length \
 	gem_bad_reloc \
 	gem_basic \
 	gem_busy \
 	gem_caching \
 	gem_close_race \
 	gem_concurrent_blit \
+	gem_cpu_reloc \
 	gem_create \
+	gem_cs_prefetch \
 	gem_cs_tlb \
+	gem_ctx_bad_destroy \
 	gem_ctx_bad_exec \
+	gem_ctx_basic \
+	gem_ctx_create \
 	gem_ctx_exec \
 	gem_ctx_param \
+	gem_ctx_switch \
+	gem_ctx_thrash \
+	gem_double_irq_loop \
 	gem_eio \
 	gem_evict_alignment \
 	gem_evict_everything \
@@ -44,6 +67,8 @@ TESTS_progs_M = \
 	gem_exec_await \
 	gem_exec_bad_domains \
 	gem_exec_basic \
+	gem_exec_big \
+	gem_exec_blt \
 	gem_exec_capture \
 	gem_exec_create \
 	gem_exec_faulting_reloc \
@@ -51,28 +76,41 @@ TESTS_progs_M = \
 	gem_exec_flush \
 	gem_exec_gttfill \
 	gem_exec_latency \
+	gem_exec_lut_handle \
 	gem_exec_nop \
 	gem_exec_parallel \
 	gem_exec_params \
 	gem_exec_parse \
+	gem_exec_reloc \
+	gem_exec_reuse \
 	gem_exec_schedule \
 	gem_exec_store \
 	gem_exec_suspend \
-	gem_exec_reloc \
-	gem_exec_reuse \
 	gem_exec_whisper \
-	gem_fenced_exec_thrash \
+	gem_fd_exhaustion \
 	gem_fence_thrash \
 	gem_fence_upload \
+	gem_fenced_exec_thrash \
 	gem_flink_basic \
 	gem_flink_race \
+	gem_gpgpu_fill \
+	gem_gtt_cpu_tlb \
+	gem_gtt_hog \
+	gem_gtt_speed \
+	gem_hangcheck_forcewake \
+	gem_largeobject \
 	gem_linear_blits \
+	gem_lut_handle \
 	gem_madvise \
+	gem_media_fill \
 	gem_mmap \
 	gem_mmap_gtt \
+	gem_mmap_offset_exhaustion \
 	gem_mmap_wc \
+	gem_mocs_settings \
 	gem_partial_pwrite_pread \
 	gem_persistent_relocs \
+	gem_pin \
 	gem_pipe_control_store_loop \
 	gem_ppgtt \
 	gem_pread \
@@ -80,171 +118,125 @@ TESTS_progs_M = \
 	gem_pwrite \
 	gem_pwrite_pread \
 	gem_pwrite_snooped \
-	gem_readwrite \
 	gem_read_read_speed \
+	gem_readwrite \
+	gem_reg_read \
 	gem_reloc_overflow \
 	gem_reloc_vs_gpu \
+	gem_render_copy \
 	gem_render_copy_redux \
+	gem_render_linear_blits \
+	gem_render_tiled_blits \
 	gem_request_retire \
 	gem_reset_stats \
+	gem_ring_sync_copy \
+	gem_ring_sync_loop \
 	gem_ringfill \
+	gem_seqno_wrap \
 	gem_set_tiling_vs_blt \
+	gem_set_tiling_vs_gtt \
+	gem_set_tiling_vs_pwrite \
 	gem_shrink \
 	gem_softpin \
+	gem_spin_batch \
 	gem_stolen \
 	gem_storedw_batches_loop \
+	gem_storedw_loop \
 	gem_streaming_writes \
+	gem_sync \
+	gem_threaded_access_tiled \
 	gem_tiled_blits \
+	gem_tiled_fence_blits \
 	gem_tiled_partial_pwrite_pread \
+	gem_tiled_pread_basic \
+	gem_tiled_pread_pwrite \
+	gem_tiled_swapping \
+	gem_tiled_wb \
+	gem_tiled_wc \
+	gem_tiling_max_stride \
+	gem_unfence_active_buffers \
+	gem_unref_active_buffers \
 	gem_userptr_blits \
+	gem_wait \
+	gem_workarounds \
 	gem_write_read_ring_switch \
+	gen3_mixed_blits \
+	gen3_render_linear_blits \
+	gen3_render_mixed_blits \
+	gen3_render_tiledx_blits \
+	gen3_render_tiledy_blits \
+	gen7_forcewake_mt \
 	gvt_basic \
+	kms_3d \
 	kms_addfb_basic \
 	kms_atomic \
 	kms_atomic_transition \
 	kms_busy \
 	kms_ccs \
 	kms_chv_cursor_fail \
+	kms_concurrent \
+	kms_crtc_background_color \
 	kms_cursor_crc \
 	kms_cursor_legacy \
 	kms_draw_crc \
 	kms_fbc_crc \
 	kms_fbcon_fbt \
+	kms_fence_pin_leak \
 	kms_flip \
 	kms_flip_event_leak \
 	kms_flip_tiling \
+	kms_force_connector_basic \
 	kms_frontbuffer_tracking \
+	kms_hdmi_inject \
 	kms_invalid_dotclock \
 	kms_legacy_colorkey \
+	kms_mmap_write_crc \
 	kms_mmio_vs_cs_flip \
+	kms_panel_fitting \
 	kms_pipe_b_c_ivb \
 	kms_pipe_color \
 	kms_pipe_crc_basic \
 	kms_plane \
-	kms_plane_multiple \
 	kms_plane_lowres \
-	kms_concurrent \
+	kms_plane_multiple \
+	kms_plane_scaling \
 	kms_properties \
 	kms_psr_sink_crc \
+	kms_pwrite_crc \
 	kms_render \
 	kms_rmfb \
 	kms_rotation_crc \
 	kms_setmode \
+	kms_sink_crc_basic \
+	kms_sysfs_edid_timing \
+	kms_tv_load_detect \
 	kms_universal_plane \
 	kms_vblank \
-	kms_crtc_background_color \
-	kms_plane_scaling \
-	kms_panel_fitting \
-	kms_tv_load_detect \
+	meta_test \
+	perf \
 	pm_backlight \
 	pm_lpsp \
+	pm_rc6_residency \
 	pm_rpm \
 	pm_rps \
-	pm_rc6_residency \
 	pm_sseu \
 	prime_busy \
 	prime_mmap \
 	prime_mmap_coherency \
 	prime_mmap_kms \
 	prime_self_import \
+	prime_udl \
 	prime_vgem \
 	sw_sync \
 	template \
 	vgem_basic \
 	vgem_slow \
-	meta_test \
 	$(NULL)
 
-TESTS_progs_XM = \
+TESTS_progs_X = \
     gem_concurrent_all \
     $(NULL)
 
-TESTS_progs = \
-	core_auth \
-	core_getclient \
-	core_getstats \
-	core_getversion \
-	core_prop_blob \
-	core_setmaster_vs_auth \
-	drm_import_export \
-	drm_read \
-	drm_vma_limiter \
-	drm_vma_limiter_cached \
-	drm_vma_limiter_cpu \
-	drm_vma_limiter_gtt \
-	drv_missed_irq \
-	gem_bad_length \
-	gem_cpu_reloc \
-	gem_cs_prefetch \
-	gem_ctx_bad_destroy \
-	gem_ctx_basic \
-	gem_ctx_create \
-	gem_ctx_switch \
-	gem_ctx_thrash \
-	gem_double_irq_loop \
-	gem_exec_big \
-	gem_exec_blt \
-	gem_exec_lut_handle \
-	gem_fd_exhaustion \
-	gem_gtt_cpu_tlb \
-	gem_gtt_hog \
-	gem_gtt_speed \
-	gem_hangcheck_forcewake \
-	gem_largeobject \
-	gem_lut_handle \
-	gem_mmap_offset_exhaustion \
-	gem_media_fill \
-	gem_mocs_settings \
-	gem_gpgpu_fill \
-	gem_pin \
-	gem_reg_read \
-	gem_render_copy \
-	gem_render_linear_blits \
-	gem_render_tiled_blits \
-	gem_ring_sync_copy \
-	gem_ring_sync_loop \
-	gem_seqno_wrap \
-	gem_set_tiling_vs_gtt \
-	gem_set_tiling_vs_pwrite \
-	gem_storedw_loop \
-	gem_sync \
-	gem_threaded_access_tiled \
-	gem_tiled_fence_blits \
-	gem_tiled_pread_basic \
-	gem_tiled_pread_pwrite \
-	gem_tiled_swapping \
-	gem_tiled_wb \
-	gem_tiled_wc \
-	gem_tiling_max_stride \
-	gem_unfence_active_buffers \
-	gem_unref_active_buffers \
-	gem_wait \
-	gem_spin_batch \
-	gem_workarounds \
-	gen3_mixed_blits \
-	gen3_render_linear_blits \
-	gen3_render_mixed_blits \
-	gen3_render_tiledx_blits \
-	gen3_render_tiledy_blits \
-	gen7_forcewake_mt \
-	kms_hdmi_inject \
-	kms_3d \
-	kms_fence_pin_leak \
-	kms_force_connector_basic \
-	kms_mmap_write_crc \
-	kms_pwrite_crc \
-	kms_sink_crc_basic \
-	prime_udl \
-	drv_module_reload \
-	kms_sysfs_edid_timing \
-	perf \
-	$(NULL)
-
-# IMPORTANT: The ZZ_ tests need to be run last!
-# ... and make can't deal with inlined comments ...
-TESTS_scripts_M = \
-	$(NULL)
-
 TESTS_scripts = \
 	debugfs_emon_crash \
 	drv_debugfs_reader \
@@ -253,44 +245,22 @@ TESTS_scripts = \
 	tools_test \
 	$(NULL)
 
-# This target contains testcases which support automagic subtest enumeration
-# from the piglit testrunner with --list-subtests and running individual
-# subtests with --run-subtest <testname>
-#
-# Your testcase should probably use an igt_main and igt_fixture and should have
-# a pile of igt_subtest blocks.
-multi_kernel_tests = \
-	$(TESTS_progs_M) \
-	$(TESTS_scripts_M) \
+kernel_tests = \
+	$(TESTS_progs) \
+	$(TESTS_scripts) \
 	$(NULL)
 
-
 # This target contains testcases with lots of subtests.
-# It was split from multi_kernel_tests because of the overhead of listing all
+# It was split from kernel_tests because of the overhead of listing all
 # the subtests in piglit
-extra_multi_kernel_tests = \
-	$(TESTS_progs_XM) \
-	$(NULL)
-
-
-# This target is for simple testcase which don't expose any subtest.
-#
-# Your testcase should probably use igt_simple_main, but none of the other magic
-# blocks like igt_fixture or igt_subtest.
-single_kernel_tests = \
-	$(TESTS_progs) \
-	$(TESTS_scripts) \
+extra_kernel_tests = \
+	$(TESTS_progs_X) \
 	$(NULL)
 
-kernel_tests = \
-	$(single_kernel_tests) \
-	$(multi_kernel_tests) \
-	$(NULL)
 
 kernel_tests_full = \
-    $(single_kernel_tests) \
-    $(multi_kernel_tests) \
-	$(extra_multi_kernel_tests) \
+	$(kernel_tests) \
+	$(extra_kernel_tests) \
 	$(NULL)
 
 # IMPORTANT: These tests here are all disabled because the result in sometime
