![]() |
![]() |
![]() |
![]() |
KMS TestsKMS Tests — Mode setting tests |
unused-handle |
unused-pitches |
unused-offsets |
unused-modifier |
clobberred-modifier |
no-handle |
basic |
bad-pitch-0 |
bad-pitch-32 |
bad-pitch-63 |
bad-pitch-128 |
bad-pitch-256 |
bad-pitch-1024 |
bad-pitch-999 |
bad-pitch-65536 |
size-max |
too-wide |
too-high |
bo-too-small |
small-bo |
bo-too-small-due-to-tiling |
addfb25-modifier-no-flag |
addfb25-bad-modifier |
addfb25-X-tiled-mismatch |
addfb25-X-tiled |
addfb25-framebuffer-vs-set-tiling |
addfb25-Y-tiled |
addfb25-Yf-tiled |
addfb25-Y-tiled-small |
basic-X-tiled |
framebuffer-vs-set-tiling |
tile-pitch-mismatch |
basic-Y-tiled |
invalid-get-prop-any |
invalid-get-prop |
invalid-set-prop-any |
invalid-set-prop |
plane-primary-toggle-with-vblank-wait |
plane-all-transition |
plane-all-transition-fencing |
plane-all-transition-nonblocking |
plane-all-transition-nonblocking-fencing |
plane-all-modeset-transition |
plane-all-modeset-transition-fencing |
plane-toggle-modeset-transition |
1x-modeset-transitions |
1x-modeset-transitions-nonblocking |
1x-modeset-transitions-fencing |
1x-modeset-transitions-nonblocking-fencing |
2x-modeset-transitions |
2x-modeset-transitions-nonblocking |
2x-modeset-transitions-fencing |
2x-modeset-transitions-nonblocking-fencing |
3x-modeset-transitions |
3x-modeset-transitions-nonblocking |
3x-modeset-transitions-fencing |
3x-modeset-transitions-nonblocking-fencing |
Test render compression (RC), in which the main surface is complemented by a color control surface (CCS) that the display uses to interpret the compressed data.
Exercise CHV pipe C cursor fail
pipe-A-64x64-left-edge |
pipe-A-64x64-right-edge |
pipe-A-64x64-top-edge |
pipe-A-64x64-bottom-edge |
pipe-B-64x64-left-edge |
pipe-B-64x64-right-edge |
pipe-B-64x64-top-edge |
pipe-B-64x64-bottom-edge |
pipe-C-64x64-left-edge |
pipe-C-64x64-right-edge |
pipe-C-64x64-top-edge |
pipe-C-64x64-bottom-edge |
pipe-A-128x128-left-edge |
pipe-A-128x128-right-edge |
pipe-A-128x128-top-edge |
pipe-A-128x128-bottom-edge |
pipe-B-128x128-left-edge |
pipe-B-128x128-right-edge |
pipe-B-128x128-top-edge |
pipe-B-128x128-bottom-edge |
pipe-C-128x128-left-edge |
pipe-C-128x128-right-edge |
pipe-C-128x128-top-edge |
pipe-C-128x128-bottom-edge |
pipe-A-256x256-left-edge |
pipe-A-256x256-right-edge |
pipe-A-256x256-top-edge |
pipe-A-256x256-bottom-edge |
pipe-B-256x256-left-edge |
pipe-B-256x256-right-edge |
pipe-B-256x256-top-edge |
pipe-B-256x256-bottom-edge |
pipe-C-256x256-left-edge |
pipe-C-256x256-right-edge |
pipe-C-256x256-top-edge |
pipe-C-256x256-bottom-edge |
Use the display CRC support to validate cursor plane functionality. The test will position the cursor plane either fully onscreen, partially onscreen, or fully offscreen, using either a fully opaque or fully transparent surface. In each case it then reads the PF CRC and compares it with the CRC value obtained when the cursor plane was disabled.
cursor-size-change |
cursor-64x64-onscreen |
cursor-64x64-offscreen |
cursor-64x64-sliding |
cursor-64x64-random |
cursor-64x64-dpms |
cursor-64x64-suspend |
cursor-64x64-rapid-movement |
cursor-64x21-onscreen |
cursor-64x21-offscreen |
cursor-64x21-sliding |
cursor-64x21-random |
cursor-128x128-onscreen |
cursor-128x128-offscreen |
cursor-128x128-sliding |
cursor-128x128-random |
cursor-128x128-dpms |
cursor-128x128-suspend |
cursor-128x128-rapid-movement |
cursor-128x42-onscreen |
cursor-128x42-offscreen |
cursor-128x42-sliding |
cursor-128x42-random |
cursor-256x256-onscreen |
cursor-256x256-offscreen |
cursor-256x256-sliding |
cursor-256x256-random |
cursor-256x256-dpms |
cursor-256x256-suspend |
cursor-256x256-rapid-movement |
cursor-256x85-onscreen |
cursor-256x85-offscreen |
cursor-256x85-sliding |
cursor-256x85-random |
cursor-512x512-onscreen |
cursor-512x512-offscreen |
cursor-512x512-sliding |
cursor-512x512-random |
cursor-512x512-dpms |
cursor-512x512-suspend |
cursor-512x512-rapid-movement |
cursor-512x170-onscreen |
cursor-512x170-offscreen |
cursor-512x170-sliding |
cursor-512x170-random |
Stress legacy cursor ioctl
pipe-A-single-bo |
pipe-A-single-move |
pipe-A-forked-bo |
pipe-A-forked-move |
pipe-A-torture-bo |
pipe-A-torture-move |
pipe-B-single-bo |
pipe-B-single-move |
pipe-B-forked-bo |
pipe-B-forked-move |
pipe-B-torture-bo |
pipe-B-torture-move |
pipe-C-single-bo |
pipe-C-single-move |
pipe-C-forked-bo |
pipe-C-forked-move |
pipe-C-torture-bo |
pipe-C-torture-move |
all-pipes-single-bo |
all-pipes-single-move |
all-pipes-forked-bo |
all-pipes-forked-move |
all-pipes-torture-bo |
all-pipes-torture-move |
nonblocking-modeset-vs-cursor-atomic |
long-nonblocking-modeset-vs-cursor-atomic |
2x-flip-vs-cursor-legacy |
2x-flip-vs-cursor-atomic |
2x-cursor-vs-flip-legacy |
2x-long-flip-vs-cursor-legacy |
2x-long-flip-vs-cursor-atomic |
2x-long-cursor-vs-flip-legacy |
2x-nonblocking-modeset-vs-cursor-atomic |
2x-cursor-vs-flip-atomic |
2x-long-nonblocking-modeset-vs-cursor-atomic |
2x-long-cursor-vs-flip-atomic |
flip-vs-cursor-crc-legacy |
flip-vs-cursor-crc-atomic |
flip-vs-cursor-busy-crc-legacy |
flip-vs-cursor-busy-crc-atomic |
basic-flip-before-cursor-legacy |
basic-busy-flip-before-cursor-legacy |
basic-flip-after-cursor-legacy |
flip-vs-cursor-legacy |
cursor-vs-flip-legacy |
cursorA-vs-flipA-legacy |
cursorA-vs-flipB-legacy |
cursorB-vs-flipA-legacy |
cursorB-vs-flipB-legacy |
basic-flip-before-cursor-varying-size |
basic-flip-after-cursor-varying-size |
flip-vs-cursor-varying-size |
cursor-vs-flip-varying-size |
cursorA-vs-flipA-varying-size |
cursorA-vs-flipB-varying-size |
cursorB-vs-flipA-varying-size |
cursorB-vs-flipB-varying-size |
short-flip-before-cursor-toggle |
short-flip-after-cursor-toggle |
flip-vs-cursor-toggle |
cursor-vs-flip-toggle |
cursorA-vs-flipA-toggle |
cursorA-vs-flipB-toggle |
cursorB-vs-flipA-toggle |
cursorB-vs-flipB-toggle |
basic-flip-before-cursor-atomic |
basic-busy-flip-before-cursor-atomic |
basic-flip-after-cursor-atomic |
flip-vs-cursor-atomic |
cursor-vs-flip-atomic |
cursorA-vs-flipA-atomic |
cursorA-vs-flipB-atomic |
cursorB-vs-flipA-atomic |
cursorB-vs-flipB-atomic |
short-flip-before-cursor-atomic-transitions |
short-flip-after-cursor-atomic-transitions |
flip-vs-cursor-atomic-transitions |
cursor-vs-flip-atomic-transitions |
cursorA-vs-flipA-atomic-transitions |
cursorA-vs-flipB-atomic-transitions |
cursorB-vs-flipA-atomic-transitions |
cursorB-vs-flipB-atomic-transitions |
short-flip-before-cursor-atomic-transitions-varying-size |
short-flip-after-cursor-atomic-transitions-varying-size |
flip-vs-cursor-atomic-transitions-varying-size |
cursor-vs-flip-atomic-transitions-varying-size |
cursorA-vs-flipA-atomic-transitions-varying-size |
cursorA-vs-flipB-atomic-transitions-varying-size |
cursorB-vs-flipA-atomic-transitions-varying-size |
cursorB-vs-flipB-atomic-transitions-varying-size |
draw-method-xrgb8888-mmap-cpu-untiled |
draw-method-xrgb8888-mmap-cpu-tiled |
draw-method-xrgb8888-mmap-gtt-untiled |
draw-method-xrgb8888-mmap-gtt-tiled |
draw-method-xrgb8888-mmap-wc-untiled |
draw-method-xrgb8888-mmap-wc-tiled |
draw-method-xrgb8888-pwrite-untiled |
draw-method-xrgb8888-pwrite-tiled |
draw-method-xrgb8888-blt-untiled |
draw-method-xrgb8888-blt-tiled |
draw-method-xrgb8888-render-untiled |
draw-method-xrgb8888-render-tiled |
draw-method-rgb565-mmap-cpu-untiled |
draw-method-rgb565-mmap-cpu-tiled |
draw-method-rgb565-mmap-gtt-untiled |
draw-method-rgb565-mmap-gtt-tiled |
draw-method-rgb565-mmap-wc-untiled |
draw-method-rgb565-mmap-wc-tiled |
draw-method-rgb565-pwrite-untiled |
draw-method-rgb565-pwrite-tiled |
draw-method-rgb565-blt-untiled |
draw-method-rgb565-blt-tiled |
draw-method-rgb565-render-untiled |
draw-method-rgb565-render-tiled |
draw-method-xrgb2101010-mmap-cpu-untiled |
draw-method-xrgb2101010-mmap-cpu-tiled |
draw-method-xrgb2101010-mmap-gtt-untiled |
draw-method-xrgb2101010-mmap-gtt-tiled |
draw-method-xrgb2101010-mmap-wc-untiled |
draw-method-xrgb2101010-mmap-wc-tiled |
draw-method-xrgb2101010-pwrite-untiled |
draw-method-xrgb2101010-pwrite-tiled |
draw-method-xrgb2101010-blt-untiled |
draw-method-xrgb2101010-blt-tiled |
draw-method-xrgb2101010-render-untiled |
draw-method-xrgb2101010-render-tiled |
fill-fb |
Performs various write operations to the scanout buffer while FBC is enabled. CRC checks will be used to make sure the modifications to scanout buffer are detected.
This test tries to provoke the kernel into leaking a pending page flip event when the fd is closed before the flip has completed. The test itself won't fail even if the kernel leaks the event, but the resulting dmesg WARN will indicate a failure.
Test the Kernel's frontbuffer tracking mechanism and its related features: FBC and PSR
Use the display CRC support to validate mmap write to an already uncached future scanout buffer.
Exercise the FDI lane bifurcation code for IVB in the kernel by settingdifferent combinations of modes for pipes B and C.
Test Color Features at Pipe level
ctm-red-to-blue-pipe0 |
ctm-green-to-red-pipe0 |
ctm-blue-to-red-pipe0 |
ctm-0-25-pipe0 |
ctm-0-5-pipe0 |
ctm-0-75-pipe0 |
ctm-max-pipe0 |
ctm-negative-pipe0 |
degamma-pipe0 |
gamma-pipe0 |
legacy-gamma-pipe0 |
legacy-gamma-reset-pipe0 |
ctm-red-to-blue-pipe1 |
ctm-green-to-red-pipe1 |
ctm-blue-to-red-pipe1 |
ctm-0-25-pipe1 |
ctm-0-5-pipe1 |
ctm-0-75-pipe1 |
ctm-max-pipe1 |
ctm-negative-pipe1 |
degamma-pipe1 |
gamma-pipe1 |
legacy-gamma-pipe1 |
legacy-gamma-reset-pipe1 |
ctm-red-to-blue-pipe2 |
ctm-green-to-red-pipe2 |
ctm-blue-to-red-pipe2 |
ctm-0-25-pipe2 |
ctm-0-5-pipe2 |
ctm-0-75-pipe2 |
ctm-max-pipe2 |
ctm-negative-pipe2 |
degamma-pipe2 |
gamma-pipe2 |
legacy-gamma-pipe2 |
legacy-gamma-reset-pipe2 |
invalid-lut-sizes |
invalid-ctm-matrix-sizes |
bad-pipe |
bad-source |
bad-nb-words-1 |
bad-nb-words-3 |
read-crc-pipe-A |
read-crc-pipe-A-frame-sequence |
nonblocking-crc-pipe-A |
nonblocking-crc-pipe-A-frame-sequence |
suspend-read-crc-pipe-A |
hang-read-crc-pipe-A |
read-crc-pipe-B |
read-crc-pipe-B-frame-sequence |
nonblocking-crc-pipe-B |
nonblocking-crc-pipe-B-frame-sequence |
suspend-read-crc-pipe-B |
hang-read-crc-pipe-B |
read-crc-pipe-C |
read-crc-pipe-C-frame-sequence |
nonblocking-crc-pipe-C |
nonblocking-crc-pipe-C-frame-sequence |
suspend-read-crc-pipe-C |
hang-read-crc-pipe-C |
plane-position-covered-pipe-A-planes |
plane-position-hole-pipe-A-planes |
plane-position-hole-dpms-pipe-A-planes |
plane-panning-top-left-pipe-A-planes |
plane-panning-bottom-right-pipe-A-planes |
plane-panning-bottom-right-suspend-pipe-A-planes |
plane-position-covered-pipe-B-planes |
plane-position-hole-pipe-B-planes |
plane-position-hole-dpms-pipe-B-planes |
plane-panning-top-left-pipe-B-planes |
plane-panning-bottom-right-pipe-B-planes |
plane-panning-bottom-right-suspend-pipe-B-planes |
plane-position-covered-pipe-C-planes |
plane-position-hole-pipe-C-planes |
plane-position-hole-dpms-pipe-C-planes |
plane-panning-top-left-pipe-C-planes |
plane-panning-bottom-right-pipe-C-planes |
plane-panning-bottom-right-suspend-pipe-C-planes |
Test atomic mode setting with a plane by switching between high and low resolutions
Test atomic mode setting with multiple planes
legacy-pipe-A-tiling-none |
atomic-pipe-A-tiling-none |
legacy-pipe-A-tiling-x |
atomic-pipe-A-tiling-x |
legacy-pipe-A-tiling-y |
atomic-pipe-A-tiling-y |
legacy-pipe-A-tiling-yf |
atomic-pipe-A-tiling-yf |
legacy-pipe-B-tiling-none |
atomic-pipe-B-tiling-none |
legacy-pipe-B-tiling-x |
atomic-pipe-B-tiling-x |
legacy-pipe-B-tiling-y |
atomic-pipe-B-tiling-y |
legacy-pipe-B-tiling-yf |
atomic-pipe-B-tiling-yf |
legacy-pipe-C-tiling-none |
atomic-pipe-C-tiling-none |
legacy-pipe-C-tiling-x |
atomic-pipe-C-tiling-x |
legacy-pipe-C-tiling-y |
atomic-pipe-C-tiling-y |
legacy-pipe-C-tiling-yf |
atomic-pipe-C-tiling-yf |
psr_basic |
primary_page_flip |
primary_mmap_gtt |
primary_mmap_gtt_waiting |
primary_mmap_cpu |
primary_blt |
primary_render |
sprite_mmap_gtt |
sprite_mmap_gtt_waiting |
sprite_mmap_cpu |
sprite_blt |
sprite_render |
sprite_plane_move |
sprite_plane_onoff |
cursor_mmap_gtt |
cursor_mmap_gtt_waiting |
cursor_mmap_cpu |
cursor_blt |
cursor_render |
cursor_plane_move |
cursor_plane_onoff |
dpms_off_psr_active |
dpms_off_psr_exit |
suspend_psr_active |
suspend_psr_exit |
Use the display CRC support to validate pwrite to an already uncached future scanout buffer.
This check the time we take to read the content of all the possible connectors. Without the edid -ENXIO patch (http://permalink.gmane.org/gmane.comp.video.dri.devel/62083), we sometimes take a *really* long time. So let's just check for some reasonable timing here
universal-plane-pipe-A-functional |
universal-plane-pipe-A-sanity |
disable-primary-vs-flip-pipe-A |
cursor-fb-leak-pipe-A |
universal-plane-gen9-features-pipe-A |
universal-plane-pipe-B-functional |
universal-plane-pipe-B-sanity |
disable-primary-vs-flip-pipe-B |
cursor-fb-leak-pipe-B |
universal-plane-gen9-features-pipe-B |
universal-plane-pipe-C-functional |
universal-plane-pipe-C-sanity |
disable-primary-vs-flip-pipe-C |
cursor-fb-leak-pipe-C |
universal-plane-gen9-features-pipe-C |