mirror of
https://github.com/tiagovignatti/intel-gpu-tools.git
synced 2025-06-29 18:56:08 +00:00
dma-buf new API consists of: - mmap(dma_buf_fd, ...): the ability to map a dma-buf file-descriptor of a graphics buffer to the userspace, and more importantly, to actually write on the mapped pointer (which was not possible before). It’s worth noting that the Direct Rendering Manager (DRM) and the hardware driver implementation are fundamentally important to safely export the graphics handle to be mapped. - ioctl(dma_buf_fd, DMA_BUF_IOCTL_SYNC, &args): cache coherency management in cases where the CPU and GPU devices are being accessed through dma-buf at the same time. Coherency markers, which forward directly to existing dma-buf device drivers vfunc hooks, are exposed to the userspace through the DMA_BUF_IOCTL_SYNC ioctl and have to be used before and after the mapped area is accessed. This is fundamentally important in hardware architectures where the graphics engine and the CPU cores don't share caches but also important in other type of hardware where the memory hierarchy is (most of the time) coherent. More details can be found in this patch set: http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=c11e391da2a8fe973c3c2398452000bed505851e v2: use uint32_t for color type, increment the variable and add --interactive-debug=paint v3: use igt_display_commit() to mode set the crtc so the rectangle is shown painted; also added Testcase description on the beginning of the file. Signed-off-by: Tiago Vignatti <tiago.vignatti@intel.com>
295 lines
5.8 KiB
Makefile
295 lines
5.8 KiB
Makefile
NOUVEAU_TESTS_M = \
|
|
prime_nv_api \
|
|
prime_nv_pcopy \
|
|
prime_nv_test \
|
|
$(NULL)
|
|
|
|
VC4_TESTS_M = \
|
|
vc4_create_bo \
|
|
vc4_wait_bo \
|
|
vc4_wait_seqno \
|
|
$(NULL)
|
|
|
|
TESTS_progs_M = \
|
|
core_get_client_auth \
|
|
drv_getparams_basic \
|
|
drv_suspend \
|
|
drv_hangman \
|
|
gem_bad_reloc \
|
|
gem_basic \
|
|
gem_busy \
|
|
gem_caching \
|
|
gem_close_race \
|
|
gem_create \
|
|
gem_cs_tlb \
|
|
gem_ctx_bad_exec \
|
|
gem_ctx_exec \
|
|
gem_ctx_param \
|
|
gem_eio \
|
|
gem_evict_alignment \
|
|
gem_evict_everything \
|
|
gem_exec_alignment \
|
|
gem_exec_bad_domains \
|
|
gem_exec_basic \
|
|
gem_exec_create \
|
|
gem_exec_faulting_reloc \
|
|
gem_exec_flush \
|
|
gem_exec_nop \
|
|
gem_exec_parallel \
|
|
gem_exec_params \
|
|
gem_exec_parse \
|
|
gem_exec_store \
|
|
gem_exec_suspend \
|
|
gem_exec_reloc \
|
|
gem_exec_whisper \
|
|
gem_fenced_exec_thrash \
|
|
gem_fence_thrash \
|
|
gem_fence_upload \
|
|
gem_flink_basic \
|
|
gem_flink_race \
|
|
gem_linear_blits \
|
|
gem_madvise \
|
|
gem_mmap \
|
|
gem_mmap_gtt \
|
|
gem_mmap_wc \
|
|
gem_partial_pwrite_pread \
|
|
gem_persistent_relocs \
|
|
gem_pipe_control_store_loop \
|
|
gem_ppgtt \
|
|
gem_pread \
|
|
gem_pread_after_blit \
|
|
gem_pwrite \
|
|
gem_pwrite_pread \
|
|
gem_pwrite_snooped \
|
|
gem_readwrite \
|
|
gem_read_read_speed \
|
|
gem_reloc_overflow \
|
|
gem_reloc_vs_gpu \
|
|
gem_render_copy_redux \
|
|
gem_request_retire \
|
|
gem_reset_stats \
|
|
gem_ringfill \
|
|
gem_set_tiling_vs_blt \
|
|
gem_shrink \
|
|
gem_softpin \
|
|
gem_stolen \
|
|
gem_storedw_batches_loop \
|
|
gem_streaming_writes \
|
|
gem_tiled_blits \
|
|
gem_tiled_partial_pwrite_pread \
|
|
gem_userptr_blits \
|
|
gem_write_read_ring_switch \
|
|
kms_addfb_basic \
|
|
kms_atomic \
|
|
kms_chv_cursor_fail \
|
|
kms_cursor_crc \
|
|
kms_draw_crc \
|
|
kms_fbc_crc \
|
|
kms_fbcon_fbt \
|
|
kms_flip \
|
|
kms_flip_event_leak \
|
|
kms_flip_tiling \
|
|
kms_frontbuffer_tracking \
|
|
kms_legacy_colorkey \
|
|
kms_mmio_vs_cs_flip \
|
|
kms_pipe_b_c_ivb \
|
|
kms_pipe_color \
|
|
kms_pipe_crc_basic \
|
|
kms_plane \
|
|
kms_psr_sink_crc \
|
|
kms_render \
|
|
kms_rotation_crc \
|
|
kms_setmode \
|
|
kms_universal_plane \
|
|
kms_vblank \
|
|
kms_crtc_background_color \
|
|
kms_plane_scaling \
|
|
kms_panel_fitting \
|
|
pm_backlight \
|
|
pm_lpsp \
|
|
pm_rpm \
|
|
pm_rps \
|
|
pm_rc6_residency \
|
|
pm_sseu \
|
|
prime_mmap \
|
|
prime_mmap_coherency \
|
|
prime_mmap_kms \
|
|
prime_self_import \
|
|
template \
|
|
$(NULL)
|
|
|
|
TESTS_progs_XM = \
|
|
gem_concurrent_blit \
|
|
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 \
|
|
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_workarounds \
|
|
gen3_mixed_blits \
|
|
gen3_render_linear_blits \
|
|
gen3_render_mixed_blits \
|
|
gen3_render_tiledx_blits \
|
|
gen3_render_tiledy_blits \
|
|
gen7_forcewake_mt \
|
|
kms_3d \
|
|
kms_fence_pin_leak \
|
|
kms_force_connector_basic \
|
|
kms_mmap_write_crc \
|
|
kms_pwrite_crc \
|
|
kms_sink_crc_basic \
|
|
prime_udl \
|
|
$(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 \
|
|
drv_missed_irq_hang \
|
|
drv_module_reload_basic \
|
|
kms_sysfs_edid_timing \
|
|
sysfs_l3_parity \
|
|
test_rte_check \
|
|
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) \
|
|
$(NULL)
|
|
|
|
|
|
# This target contains testcases with lots of subtests.
|
|
# It was split from multi_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) \
|
|
$(NULL)
|
|
|
|
kernel_tests = \
|
|
$(single_kernel_tests) \
|
|
$(multi_kernel_tests) \
|
|
$(NULL)
|
|
|
|
kernel_tests_full = \
|
|
$(single_kernel_tests) \
|
|
$(multi_kernel_tests) \
|
|
$(extra_multi_kernel_tests) \
|
|
$(NULL)
|
|
|
|
# Test that exercise specific asserts in the test framework library and are
|
|
# hence expected to fail.
|
|
XFAIL_TESTS = \
|
|
igt_no_exit \
|
|
igt_no_exit_list_only \
|
|
igt_no_subtest \
|
|
$(NULL)
|
|
|
|
# IMPORTANT: These tests here are all disabled because the result in sometime
|
|
# unrecoverable gpu hangs. Don't put real testcases here.
|
|
HANG = \
|
|
gem_bad_batch \
|
|
gem_hang \
|
|
gem_bad_blit \
|
|
gem_bad_address \
|
|
gem_non_secure_batch \
|
|
$(NULL)
|
|
|
|
scripts = \
|
|
check_drm_clients \
|
|
ddx_intel_after_fbdev \
|
|
debugfs_wedged \
|
|
drm_lib.sh \
|
|
$(NULL)
|
|
|
|
IMAGES = pass.png 1080p-left.png 1080p-right.png
|
|
|
|
testdisplay_SOURCES = \
|
|
testdisplay.c \
|
|
testdisplay.h \
|
|
testdisplay_hotplug.c \
|
|
$(NULL)
|
|
|
|
TESTS_progs += testdisplay
|
|
|
|
common_files = \
|
|
eviction_common.c \
|
|
$(NULL)
|