Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge tag 'drm-misc-next-2024-06-13' of https://gitlab.freedesktop.org/drm/misc/kernel into drm-next

drm-misc-next for 6.11:

UAPI Changes:

Cross-subsystem Changes:

Core Changes:
- Sprinkle MODULE_DESCRIPTIONS everywhere they are missing
- bridge: Remove drm_bridge_chain_mode_fixup
- ci: Require a more recent version of mesa, improve farm estup and
test generation
- mipi-dbi: Remove mipi_dbi_machine_little_endian, make SPI bits per
word configurable, support RGB888, and allow pixel formats to be
specified in the DT.
- mm: Remove drm_mm_replace_node
- panic: Allow to dump kmsg to the screen
- print: Add a drm prefix to warn level messages too, remove
___drm_dbg, consolidate prefix handling

Driver Changes:
- sun4i: Rework the blender setup for DE2
- bridges:
- bridge-connector: Plumb in the new HDMI helpers
- samsung-dsim: Fix timings calculation
- tc358767: Plenty of small fixes
- panels:
- More cleanup of prepare / enable state tracking in drivers
- New panel: PrimeView PM070WL4,

Signed-off-by: Dave Airlie <airlied@redhat.com>

From: Maxime Ripard <mripard@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240613-cicada-of-infinite-unity-0955ca@houat

+2218 -4101
+30
Documentation/devicetree/bindings/display/panel/panel-mipi-dbi-spi.yaml
··· 50 50 | Command or data | 51 51 |<D7><D6><D5><D4><D3><D2><D1><D0>| 52 52 53 + The standard defines one pixel format for type C: RGB111. The industry 54 + however has decided to provide the type A/B interface pixel formats also on 55 + the Type C interface and most common among these are RGB565 and RGB666. 56 + The MIPI DCS command set_address_mode (36h) has one bit that controls RGB/BGR 57 + order. This gives each supported RGB format a BGR variant. 58 + 53 59 The panel resolution is specified using the panel-timing node properties 54 60 hactive (width) and vactive (height). The other mandatory panel-timing 55 61 properties should be set to zero except clock-frequency which can be ··· 99 93 100 94 spi-3wire: true 101 95 96 + format: 97 + description: > 98 + Pixel format in bit order as going on the wire: 99 + * `x2r1g1b1r1g1b1` - RGB111, 2 pixels per byte 100 + * `x2b1g1r1b1g1r1` - BGR111, 2 pixels per byte 101 + * `x1r1g1b1x1r1g1b1` - RGB111, 2 pixels per byte 102 + * `x1b1g1r1x1b1g1r1` - BGR111, 2 pixels per byte 103 + * `r5g6b5` - RGB565, 2 bytes 104 + * `b5g6r5` - BGR565, 2 bytes 105 + * `r6x2g6x2b6x2` - RGB666, 3 bytes 106 + * `b6x2g6x2r6x2` - BGR666, 3 bytes 107 + enum: 108 + - x2r1g1b1r1g1b1 109 + - x2b1g1r1b1g1r1 110 + - x1r1g1b1x1r1g1b1 111 + - x1b1g1r1x1b1g1r1 112 + - r5g6b5 113 + - b5g6r5 114 + - r6x2g6x2b6x2 115 + - b6x2g6x2r6x2 116 + default: r5g6b5 117 + 102 118 required: 103 119 - compatible 104 120 - reg ··· 146 118 dc-gpios = <&gpio 24 GPIO_ACTIVE_HIGH>; 147 119 reset-gpios = <&gpio 25 GPIO_ACTIVE_HIGH>; 148 120 write-only; 121 + 122 + format = "r5g6b5"; 149 123 150 124 backlight = <&backlight>; 151 125
+2
Documentation/devicetree/bindings/display/panel/panel-simple.yaml
··· 236 236 - powertip,ph128800t006-zhc01 237 237 # POWERTIP PH800480T013-IDF2 7.0" WVGA TFT LCD panel 238 238 - powertip,ph800480t013-idf02 239 + # PrimeView PM070WL4 7.0" 800x480 TFT LCD panel 240 + - primeview,pm070wl4 239 241 # QiaoDian XianShi Corporation 4"3 TFT LCD panel 240 242 - qiaodian,qd43003c0-40 241 243 # Shenzhen QiShenglong Industrialist Co., Ltd. Gopher 2b 4.3" 480(RGB)x272 TFT LCD panel
+2
Documentation/devicetree/bindings/vendor-prefixes.yaml
··· 1164 1164 description: PowerVR (deprecated, use img) 1165 1165 "^powkiddy,.*": 1166 1166 description: Powkiddy 1167 + "^primeview,.*": 1168 + description: Prime View International (PVI) 1167 1169 "^primux,.*": 1168 1170 description: Primux Trading, S.L. 1169 1171 "^probox2,.*":
+23 -18
Documentation/gpu/todo.rst
··· 469 469 470 470 Level: Starter 471 471 472 - Clean up checks for already prepared/enabled in panels 473 - ------------------------------------------------------ 472 + Remove disable/unprepare in remove/shutdown in panel-simple and panel-edp 473 + ------------------------------------------------------------------------- 474 474 475 - In a whole pile of panel drivers, we have code to make the 476 - prepare/unprepare/enable/disable callbacks behave as no-ops if they've already 477 - been called. To get some idea of the duplicated code, try:: 475 + As of commit d2aacaf07395 ("drm/panel: Check for already prepared/enabled in 476 + drm_panel"), we have a check in the drm_panel core to make sure nobody 477 + double-calls prepare/enable/disable/unprepare. Eventually that should probably 478 + be turned into a WARN_ON() or somehow made louder, but right now we actually 479 + expect it to trigger and so we don't want it to be too loud. 478 480 479 - git grep 'if.*>prepared' -- drivers/gpu/drm/panel 480 - git grep 'if.*>enabled' -- drivers/gpu/drm/panel 481 + Specifically, that warning will trigger for panel-edp and panel-simple at 482 + shutdown time because those panels hardcode a call to drm_panel_disable() 483 + and drm_panel_unprepare() at shutdown and remove time that they call regardless 484 + of panel state. On systems with a properly coded DRM modeset driver that 485 + calls drm_atomic_helper_shutdown() this is pretty much guaranteed to cause 486 + the warning to fire. 481 487 482 - In the patch ("drm/panel: Check for already prepared/enabled in drm_panel") 483 - we've moved this check to the core. Now we can most definitely remove the 484 - check from the individual panels and save a pile of code. 485 - 486 - In adition to removing the check from the individual panels, it is believed 487 - that even the core shouldn't need this check and that should be considered 488 - an error if other code ever relies on this check. The check in the core 489 - currently prints a warning whenever something is relying on this check with 490 - dev_warn(). After a little while, we likely want to promote this to a 491 - WARN(1) to help encourage folks not to rely on this behavior. 488 + Unfortunately we can't safely remove the calls in panel-edp and panel-simple 489 + until we're sure that all DRM modeset drivers that are used with those panels 490 + properly call drm_atomic_helper_shutdown(). This TODO item is to validate 491 + that all DRM modeset drivers used with panel-edp and panel-simple properly 492 + call drm_atomic_helper_shutdown() and then remove the calls to 493 + disable/unprepare from those panels. Alternatively, this TODO item could be 494 + removed by convincing stakeholders that those calls are fine and downgrading 495 + the error message in drm_panel_disable() / drm_panel_unprepare() to a 496 + debug-level message. 492 497 493 498 Contact: Douglas Anderson <dianders@chromium.org> 494 499 495 - Level: Starter/Intermediate 500 + Level: Intermediate 496 501 497 502 Transition away from using mipi_dsi_*_write_seq() 498 503 -------------------------------------------------
+13
drivers/gpu/drm/Kconfig
··· 137 137 This is unsafe and should not be enabled on a production build. 138 138 If in doubt, say "N". 139 139 140 + config DRM_PANIC_SCREEN 141 + string "Panic screen formater" 142 + default "user" 143 + depends on DRM_PANIC 144 + help 145 + This option enable to choose what will be displayed when a kernel 146 + panic occurs. You can choose between "user", a short message telling 147 + the user to reboot the system, or "kmsg" which will display the last 148 + lines of kmsg. 149 + This can also be overridden by drm.panic_screen=xxxx kernel parameter 150 + or by writing to /sys/module/drm/parameters/panic_screen sysfs entry 151 + Default is "user" 152 + 140 153 config DRM_DEBUG_DP_MST_TOPOLOGY_REFS 141 154 bool "Enable refcount backtrace history in the DP MST helpers" 142 155 depends on STACKTRACE_SUPPORT
+1 -1
drivers/gpu/drm/bridge/ite-it6505.c
··· 2615 2615 gpiod_set_value_cansleep(pdata->gpiod_reset, 0); 2616 2616 usleep_range(1000, 2000); 2617 2617 gpiod_set_value_cansleep(pdata->gpiod_reset, 1); 2618 - usleep_range(10000, 20000); 2618 + usleep_range(25000, 35000); 2619 2619 } 2620 2620 2621 2621 it6505->powered = true;
+1
drivers/gpu/drm/bridge/lontium-lt9611.c
··· 1195 1195 }; 1196 1196 module_i2c_driver(lt9611_driver); 1197 1197 1198 + MODULE_DESCRIPTION("Lontium LT9611 DSI/HDMI bridge driver"); 1198 1199 MODULE_LICENSE("GPL v2");
+1
drivers/gpu/drm/bridge/lontium-lt9611uxc.c
··· 1016 1016 module_i2c_driver(lt9611uxc_driver); 1017 1017 1018 1018 MODULE_AUTHOR("Dmitry Baryshkov <dmitry.baryshkov@linaro.org>"); 1019 + MODULE_DESCRIPTION("Lontium LT9611UXC DSI/HDMI bridge driver"); 1019 1020 MODULE_LICENSE("GPL v2"); 1020 1021 1021 1022 MODULE_FIRMWARE(FW_FILE);
+23 -2
drivers/gpu/drm/bridge/samsung-dsim.c
··· 574 574 u16 _m, best_m; 575 575 u8 _s, best_s; 576 576 577 - p_min = DIV_ROUND_UP(fin, (12 * MHZ)); 578 - p_max = fin / (6 * MHZ); 577 + p_min = DIV_ROUND_UP(fin, (driver_data->pll_fin_max * MHZ)); 578 + p_max = fin / (driver_data->pll_fin_min * MHZ); 579 579 580 580 for (_p = p_min; _p <= p_max; ++_p) { 581 581 for (_s = 0; _s <= 5; ++_s) { ··· 1604 1604 } else if (dsi->plat_data->hw_type == DSIM_TYPE_IMX8MP) { 1605 1605 adjusted_mode->flags &= ~(DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC); 1606 1606 adjusted_mode->flags |= (DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_PVSYNC); 1607 + } 1608 + 1609 + /* 1610 + * When using video sync pulses, the HFP, HBP, and HSA are divided between 1611 + * the available lanes if there is more than one lane. For certain 1612 + * timings and lane configurations, the HFP may not be evenly divisible. 1613 + * If the HFP is rounded down, it ends up being too small which can cause 1614 + * some monitors to not sync properly. In these instances, adjust htotal 1615 + * and hsync to round the HFP up, and recalculate the htotal. Through trial 1616 + * and error, it appears that the HBP and HSA do not appearto need the same 1617 + * correction that HFP does. 1618 + */ 1619 + if (dsi->lanes > 1) { 1620 + int hfp = adjusted_mode->hsync_start - adjusted_mode->hdisplay; 1621 + int remainder = hfp % dsi->lanes; 1622 + 1623 + if (remainder) { 1624 + adjusted_mode->hsync_start += remainder; 1625 + adjusted_mode->hsync_end += remainder; 1626 + adjusted_mode->htotal += remainder; 1627 + } 1607 1628 } 1608 1629 1609 1630 return 0;
+1
drivers/gpu/drm/bridge/sii9234.c
··· 961 961 }; 962 962 963 963 module_i2c_driver(sii9234_driver); 964 + MODULE_DESCRIPTION("Silicon Image SII9234 HDMI/MHL bridge driver"); 964 965 MODULE_LICENSE("GPL");
+1
drivers/gpu/drm/bridge/sil-sii8620.c
··· 2384 2384 }; 2385 2385 2386 2386 module_i2c_driver(sii8620_driver); 2387 + MODULE_DESCRIPTION("Silicon Image SiI8620 HDMI/MHL bridge driver"); 2387 2388 MODULE_LICENSE("GPL v2");
+2 -2
drivers/gpu/drm/bridge/tc358767.c
··· 1646 1646 u32 req, avail; 1647 1647 u32 bits_per_pixel = 24; 1648 1648 1649 - /* DPI interface clock limitation: upto 154 MHz */ 1649 + /* DPI->(e)DP interface clock limitation: up to 154 MHz */ 1650 1650 if (mode->clock > 154000) 1651 1651 return MODE_CLOCK_HIGH; 1652 1652 ··· 2152 2152 dev_err(tc->dev, "syserr %x\n", stat); 2153 2153 } 2154 2154 2155 - if (tc->hpd_pin >= 0 && tc->bridge.dev) { 2155 + if (tc->hpd_pin >= 0 && tc->bridge.dev && tc->aux.drm_dev) { 2156 2156 /* 2157 2157 * H is triggered when the GPIO goes high. 2158 2158 *
+40 -1
drivers/gpu/drm/ci/build-igt.sh
··· 3 3 4 4 set -ex 5 5 6 + function generate_testlist { 7 + set +x 8 + while read -r line; do 9 + if [ "$line" = "TESTLIST" ] || [ "$line" = "END TESTLIST" ]; then 10 + continue 11 + fi 12 + 13 + tests=$(echo "$line" | tr ' ' '\n') 14 + 15 + for test in $tests; do 16 + output=$(/igt/libexec/igt-gpu-tools/"$test" --list-subtests || true) 17 + 18 + if [ -z "$output" ]; then 19 + echo "$test" 20 + else 21 + echo "$output" | while read -r subtest; do 22 + echo "$test@$subtest" 23 + done 24 + fi 25 + done 26 + done < /igt/libexec/igt-gpu-tools/test-list.txt > /igt/libexec/igt-gpu-tools/ci-testlist.txt 27 + set -x 28 + } 29 + 6 30 git clone https://gitlab.freedesktop.org/drm/igt-gpu-tools.git --single-branch --no-checkout 7 31 cd igt-gpu-tools 8 32 git checkout $IGT_VERSION ··· 45 21 -Dlibunwind=enabled \ 46 22 -Dprefix=/igt" 47 23 24 + if [[ "$KERNEL_ARCH" = "arm64" ]] || [[ "$KERNEL_ARCH" = "arm" ]]; then 25 + MESON_OPTIONS="$MESON_OPTIONS -Dxe_driver=disabled" 26 + fi 27 + 48 28 mkdir -p /igt 49 29 meson build $MESON_OPTIONS $EXTRA_MESON_ARGS 50 30 ninja -C build -j${FDO_CI_CONCURRENT:-4} || ninja -C build -j 1 51 31 ninja -C build install 32 + 33 + if [[ "$KERNEL_ARCH" = "arm64" ]]; then 34 + export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/igt/lib/aarch64-linux-gnu 35 + elif [[ "$KERNEL_ARCH" = "arm" ]]; then 36 + export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/igt/lib 37 + else 38 + export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/igt/lib64 39 + fi 40 + 41 + echo "Generating ci-testlist.txt" 42 + generate_testlist 52 43 53 44 mkdir -p artifacts/ 54 45 tar -cf artifacts/igt.tar /igt ··· 71 32 # Pass needed files to the test stage 72 33 S3_ARTIFACT_NAME="igt.tar.gz" 73 34 gzip -c artifacts/igt.tar > ${S3_ARTIFACT_NAME} 74 - ci-fairy s3cp --token-file "${CI_JOB_JWT_FILE}" ${S3_ARTIFACT_NAME} https://${PIPELINE_ARTIFACTS_BASE}/${KERNEL_ARCH}/${S3_ARTIFACT_NAME} 35 + ci-fairy s3cp --token-file "${S3_JWT_FILE}" ${S3_ARTIFACT_NAME} https://${PIPELINE_ARTIFACTS_BASE}/${KERNEL_ARCH}/${S3_ARTIFACT_NAME}
+4 -2
drivers/gpu/drm/ci/build.sh
··· 131 131 # Pass needed files to the test stage 132 132 mkdir -p install 133 133 cp -rfv .gitlab-ci/* install/. 134 + cp -rfv ci/* install/. 134 135 cp -rfv install/common install/ci-common 135 136 cp -rfv drivers/gpu/drm/ci/* install/. 136 137 ··· 145 144 FILES_TO_UPLOAD="$FILES_TO_UPLOAD $(basename -a $DEVICE_TREES)" 146 145 fi 147 146 147 + ls -l "${S3_JWT_FILE}" 148 148 for f in $FILES_TO_UPLOAD; do 149 - ci-fairy s3cp --token-file "${CI_JOB_JWT_FILE}" /lava-files/$f \ 149 + ci-fairy s3cp --token-file "${S3_JWT_FILE}" /lava-files/$f \ 150 150 https://${PIPELINE_ARTIFACTS_BASE}/${DEBIAN_ARCH}/$f 151 151 done 152 152 153 153 S3_ARTIFACT_NAME="kernel-files.tar.zst" 154 154 tar --zstd -cf $S3_ARTIFACT_NAME install 155 - ci-fairy s3cp --token-file "${CI_JOB_JWT_FILE}" ${S3_ARTIFACT_NAME} https://${PIPELINE_ARTIFACTS_BASE}/${DEBIAN_ARCH}/${S3_ARTIFACT_NAME} 155 + ci-fairy s3cp --token-file "${S3_JWT_FILE}" ${S3_ARTIFACT_NAME} https://${PIPELINE_ARTIFACTS_BASE}/${DEBIAN_ARCH}/${S3_ARTIFACT_NAME} 156 156 157 157 echo "Download vmlinux.xz from https://${PIPELINE_ARTIFACTS_BASE}/${DEBIAN_ARCH}/vmlinux.xz" 158 158 fi
+4 -8
drivers/gpu/drm/ci/container.yml
··· 36 36 rules: 37 37 - when: never 38 38 39 - debian/x86_64_test-android: 39 + .debian/x86_64_test-android: 40 40 rules: 41 41 - when: never 42 42 43 - windows_build_vs2019: 43 + windows_build_msvc: 44 44 rules: 45 45 - when: never 46 46 47 - windows_test_vs2019: 47 + windows_test_msvc: 48 48 rules: 49 49 - when: never 50 50 ··· 56 56 rules: 57 57 - when: never 58 58 59 - windows_vs2019: 60 - rules: 61 - - when: never 62 - 63 - clang-format: 59 + windows_msvc: 64 60 rules: 65 61 - when: never
+30 -14
drivers/gpu/drm/ci/gitlab-ci.yml
··· 1 1 variables: 2 2 DRM_CI_PROJECT_PATH: &drm-ci-project-path mesa/mesa 3 - DRM_CI_COMMIT_SHA: &drm-ci-commit-sha 9d162de9a05155e1c4041857a5848842749164cf 3 + DRM_CI_COMMIT_SHA: &drm-ci-commit-sha e2b9c5a9e3e4f9b532067af8022eaef8d6fc6c00 4 4 5 5 UPSTREAM_REPO: git://anongit.freedesktop.org/drm/drm 6 6 TARGET_BRANCH: drm-next 7 7 8 - IGT_VERSION: d2af13d9f5be5ce23d996e4afd3e45990f5ab977 8 + IGT_VERSION: 0df7b9b97f9da0e364f5ee30fe331004b8c86b56 9 9 10 10 DEQP_RUNNER_GIT_URL: https://gitlab.freedesktop.org/anholt/deqp-runner.git 11 11 DEQP_RUNNER_GIT_TAG: v0.15.0 ··· 19 19 bash download-git-cache.sh 20 20 rm download-git-cache.sh 21 21 set +o xtrace 22 + S3_JWT_FILE: /s3_jwt 22 23 S3_HOST: s3.freedesktop.org 24 + # This bucket is used to fetch the kernel image 25 + S3_KERNEL_BUCKET: mesa-rootfs 26 + # Bucket for git cache 27 + S3_GITCACHE_BUCKET: git-cache 28 + # Bucket for the pipeline artifacts pushed to S3 29 + S3_ARTIFACTS_BUCKET: artifacts 23 30 # per-pipeline artifact storage on MinIO 24 - PIPELINE_ARTIFACTS_BASE: ${S3_HOST}/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID} 31 + PIPELINE_ARTIFACTS_BASE: ${S3_HOST}/${S3_ARTIFACTS_BUCKET}/${CI_PROJECT_PATH}/${CI_PIPELINE_ID} 25 32 # per-job artifact storage on MinIO 26 33 JOB_ARTIFACTS_BASE: ${PIPELINE_ARTIFACTS_BASE}/${CI_JOB_ID} 27 34 # default kernel for rootfs before injecting the current kernel tree 28 35 KERNEL_REPO: "gfx-ci/linux" 29 - KERNEL_TAG: "v6.6.4-for-mesa-ci-e4f4c500f7fb" 30 - KERNEL_IMAGE_BASE: https://${S3_HOST}/mesa-lava/${KERNEL_REPO}/${KERNEL_TAG} 36 + KERNEL_TAG: "v6.6.21-mesa-f8ea" 37 + KERNEL_IMAGE_BASE: https://${S3_HOST}/${S3_KERNEL_BUCKET}/${KERNEL_REPO}/${KERNEL_TAG} 38 + PKG_REPO_REV: "3cc12a2a" 31 39 LAVA_TAGS: subset-1-gfx 32 40 LAVA_JOB_PRIORITY: 30 41 + ARTIFACTS_BASE_URL: https://${CI_PROJECT_ROOT_NAMESPACE}.${CI_PAGES_DOMAIN}/-/${CI_PROJECT_NAME}/-/jobs/${CI_JOB_ID}/artifacts 42 + # Python scripts for structured logger 43 + PYTHONPATH: "$PYTHONPATH:$CI_PROJECT_DIR/install" 33 44 34 45 default: 46 + id_tokens: 47 + S3_JWT: 48 + aud: https://s3.freedesktop.org 35 49 before_script: 36 50 - export SCRIPTS_DIR=$(mktemp -d) 37 51 - curl -L -s --retry 4 -f --retry-all-errors --retry-delay 60 -O --output-dir "${SCRIPTS_DIR}" "${DRM_CI_PROJECT_URL}/-/raw/${DRM_CI_COMMIT_SHA}/.gitlab-ci/setup-test-env.sh" 38 52 - source ${SCRIPTS_DIR}/setup-test-env.sh 39 53 - echo -e "\e[0Ksection_start:$(date +%s):unset_env_vars_section[collapsed=true]\r\e[0KUnsetting vulnerable environment variables" 40 - - export CI_JOB_JWT_FILE="${CI_JOB_JWT_FILE:-$(mktemp)}" 41 - - echo -n "${CI_JOB_JWT}" > "${CI_JOB_JWT_FILE}" 42 - - unset CI_JOB_JWT 54 + - echo -n "${S3_JWT}" > "${S3_JWT_FILE}" 55 + - unset CI_JOB_JWT S3_JWT 43 56 - echo -e "\e[0Ksection_end:$(date +%s):unset_env_vars_section\r\e[0K" 44 57 45 58 - echo -e "\e[0Ksection_start:$(date +%s):drm_ci_download_section[collapsed=true]\r\e[0KDownloading mesa from $DRM_CI_PROJECT_URL/-/archive/$DRM_CI_COMMIT_SHA/mesa-$DRM_CI_COMMIT_SHA.tar.gz" 46 59 - cd $CI_PROJECT_DIR 47 60 - curl --output - $DRM_CI_PROJECT_URL/-/archive/$DRM_CI_COMMIT_SHA/mesa-$DRM_CI_COMMIT_SHA.tar.gz | tar -xz 48 61 - mv mesa-$DRM_CI_COMMIT_SHA/.gitlab-ci* . 62 + - mv mesa-$DRM_CI_COMMIT_SHA/bin/ci . 49 63 - rm -rf mesa-$DRM_CI_COMMIT_SHA/ 50 64 - echo -e "\e[0Ksection_end:$(date +%s):drm_ci_download_section\r\e[0K" 51 65 ··· 67 53 - > 68 54 set +x 69 55 70 - test -e "${CI_JOB_JWT_FILE}" && 71 - export CI_JOB_JWT="$(<${CI_JOB_JWT_FILE})" && 72 - rm "${CI_JOB_JWT_FILE}" 56 + test -e "${S3_JWT_FILE}" && 57 + export S3_JWT="$(<${S3_JWT_FILE})" && 58 + rm "${S3_JWT_FILE}" 73 59 74 60 include: 75 61 - project: 'freedesktop/ci-templates' ··· 101 87 - '/src/intel/ci/gitlab-ci-inc.yml' 102 88 - '/src/freedreno/ci/gitlab-ci-inc.yml' 103 89 - '/src/amd/ci/gitlab-ci-inc.yml' 90 + - '/src/virtio/ci/gitlab-ci-inc.yml' 104 91 - drivers/gpu/drm/ci/image-tags.yml 105 92 - drivers/gpu/drm/ci/container.yml 106 93 - drivers/gpu/drm/ci/static-checks.yml ··· 113 98 stages: 114 99 - sanity 115 100 - container 101 + - code-validation 116 102 - git-archive 117 103 - build 118 104 - amdgpu ··· 123 107 - msm 124 108 - rockchip 125 109 - virtio-gpu 126 - - lint 127 110 128 111 # YAML anchors for rule conditions 129 112 # -------------------------------- ··· 233 218 script: 234 219 # Remove drm-ci files we just added 235 220 - rm -rf .gitlab-ci.* 221 + - rm -rf ci 236 222 237 223 # Compactify the .git directory 238 224 - git gc --aggressive 239 225 # compress the current folder 240 226 - tar -cvzf ../$CI_PROJECT_NAME.tar.gz . 241 227 242 - # login with the JWT token file 243 - - ci-fairy s3cp --token-file "${CI_JOB_JWT_FILE}" ../$CI_PROJECT_NAME.tar.gz https://$S3_HOST/git-cache/$CI_PROJECT_NAMESPACE/$CI_PROJECT_NAME/$CI_PROJECT_NAME.tar.gz 228 + # Use id_tokens for JWT auth 229 + - ci-fairy s3cp --token-file "${S3_JWT_FILE}" ../$CI_PROJECT_NAME.tar.gz https://$S3_HOST/${S3_GITCACHE_BUCKET}/$CI_PROJECT_NAMESPACE/$CI_PROJECT_NAME/$CI_PROJECT_NAME.tar.gz 244 230 245 231 246 232 # Sanity checks of MR settings and commit logs
+5 -4
drivers/gpu/drm/ci/igt_runner.sh
··· 59 59 60 60 curl -L --retry 4 -f --retry-all-errors --retry-delay 60 -s ${FDO_HTTP_CACHE_URI:-}$PIPELINE_ARTIFACTS_BASE/$ARCH/igt.tar.gz | tar --zstd -v -x -C / 61 61 62 + TESTLIST="/igt/libexec/igt-gpu-tools/ci-testlist.txt" 62 63 63 64 # If the job is parallel at the gitab job level, take the corresponding fraction 64 65 # of the caselist. 65 66 if [ -n "$CI_NODE_INDEX" ]; then 66 - sed -ni $CI_NODE_INDEX~$CI_NODE_TOTAL"p" /install/testlist.txt 67 + sed -ni $CI_NODE_INDEX~$CI_NODE_TOTAL"p" $TESTLIST 67 68 fi 68 69 69 70 # core_getversion checks if the driver is loaded and probed correctly 70 71 # so run it in all shards 71 - if ! grep -q "core_getversion" /install/testlist.txt; then 72 + if ! grep -q "core_getversion" $TESTLIST; then 72 73 # Add the line to the file 73 - echo "core_getversion" >> /install/testlist.txt 74 + echo "core_getversion" >> $TESTLIST 74 75 fi 75 76 76 77 set +e 77 78 igt-runner \ 78 79 run \ 79 80 --igt-folder /igt/libexec/igt-gpu-tools \ 80 - --caselist /install/testlist.txt \ 81 + --caselist $TESTLIST \ 81 82 --output /results \ 82 83 $IGT_SKIPS \ 83 84 $IGT_FLAKES \
+1 -1
drivers/gpu/drm/ci/image-tags.yml
··· 1 1 variables: 2 - CONTAINER_TAG: "2023-10-11-mesa-uprev" 2 + CONTAINER_TAG: "2024-05-09-mesa-uprev" 3 3 DEBIAN_X86_64_BUILD_BASE_IMAGE: "debian/x86_64_build-base" 4 4 DEBIAN_BASE_TAG: "${CONTAINER_TAG}" 5 5
+2 -2
drivers/gpu/drm/ci/lava-submit.sh
··· 27 27 section_end variables 28 28 29 29 tar zcf job-rootfs-overlay.tar.gz -C results/job-rootfs-overlay/ . 30 - ci-fairy s3cp --token-file "${CI_JOB_JWT_FILE}" job-rootfs-overlay.tar.gz "https://${JOB_ROOTFS_OVERLAY_PATH}" 30 + ci-fairy s3cp --token-file "${S3_JWT_FILE}" job-rootfs-overlay.tar.gz "https://${JOB_ROOTFS_OVERLAY_PATH}" 31 31 32 32 touch results/lava.log 33 33 tail -f results/lava.log & ··· 45 45 --ci-project-dir "${CI_PROJECT_DIR}" \ 46 46 --device-type "${DEVICE_TYPE}" \ 47 47 --dtb-filename "${DTB}" \ 48 - --jwt-file "${CI_JOB_JWT_FILE}" \ 48 + --jwt-file "${S3_JWT_FILE}" \ 49 49 --kernel-image-name "${KERNEL_IMAGE_NAME}" \ 50 50 --kernel-image-type "${KERNEL_IMAGE_TYPE}" \ 51 51 --boot-method "${BOOT_METHOD}" \
+10 -7
drivers/gpu/drm/ci/test.yml
··· 24 24 variables: 25 25 HWCI_TEST_SCRIPT: "/install/igt_runner.sh" 26 26 DEBIAN_ARCH: "armhf" 27 + FARM: collabora 27 28 dependencies: 28 29 - testing:arm32 29 30 needs: ··· 40 39 variables: 41 40 HWCI_TEST_SCRIPT: "/install/igt_runner.sh" 42 41 DEBIAN_ARCH: "arm64" 42 + FARM: collabora 43 43 dependencies: 44 44 - testing:arm64 45 45 needs: ··· 56 54 variables: 57 55 HWCI_TEST_SCRIPT: "/install/igt_runner.sh" 58 56 DEBIAN_ARCH: "amd64" 57 + FARM: collabora 59 58 dependencies: 60 59 - testing:x86_64 61 60 needs: ··· 77 74 S3_ARTIFACT_NAME: "arm64/kernel-files" 78 75 BM_KERNEL: https://${PIPELINE_ARTIFACTS_BASE}/arm64/Image.gz 79 76 BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8 $BM_KERNEL_EXTRA_ARGS root=/dev/nfs rw nfsrootdebug nfsroot=,tcp,nfsvers=4.2 init=/init $BM_KERNELARGS" 77 + FARM: google 80 78 needs: 81 79 - debian/arm64_test 82 80 - job: testing:arm64 ··· 120 116 - .baremetal-igt-arm64 121 117 stage: msm 122 118 variables: 119 + DEVICE_TYPE: apq8016-sbc-usb-host 123 120 DRIVER_NAME: msm 124 - BM_DTB: https://${PIPELINE_ARTIFACTS_BASE}/arm64/apq8016-sbc-usb-host.dtb 121 + BM_DTB: https://${PIPELINE_ARTIFACTS_BASE}/arm64/${DEVICE_TYPE}.dtb 125 122 GPU_VERSION: apq8016 126 123 # disabling unused clocks congests with the MDSS runtime PM trying to 127 124 # disable those clocks and causes boot to fail. ··· 137 132 - .baremetal-igt-arm64 138 133 stage: msm 139 134 variables: 135 + DEVICE_TYPE: apq8096-db820c 140 136 DRIVER_NAME: msm 141 137 BM_KERNEL_EXTRA_ARGS: maxcpus=2 142 - BM_DTB: https://${PIPELINE_ARTIFACTS_BASE}/arm64/apq8096-db820c.dtb 138 + BM_DTB: https://${PIPELINE_ARTIFACTS_BASE}/arm64/${DEVICE_TYPE}.dtb 143 139 GPU_VERSION: apq8096 144 140 RUNNER_TAG: google-freedreno-db820c 145 141 script: ··· 152 146 stage: msm 153 147 parallel: 6 154 148 variables: 149 + DEVICE_TYPE: sdm845-cheza-r3 155 150 DRIVER_NAME: msm 156 151 BM_KERNEL: https://${PIPELINE_ARTIFACTS_BASE}/arm64/cheza-kernel 157 152 GPU_VERSION: sdm845 ··· 191 184 extends: 192 185 - .lava-igt:x86_64 193 186 stage: i915 187 + timeout: "1h30m" 194 188 variables: 195 189 DRIVER_NAME: i915 196 190 DTB: "" ··· 202 194 extends: 203 195 - .i915 204 196 parallel: 3 205 - timeout: "1h30m" 206 197 variables: 207 198 DEVICE_TYPE: asus-C523NA-A20057-coral 208 199 GPU_VERSION: apl ··· 211 204 extends: 212 205 - .i915 213 206 parallel: 2 214 - timeout: "1h30m" 215 207 variables: 216 208 DEVICE_TYPE: hp-x360-12b-ca0010nr-n4020-octopus 217 209 GPU_VERSION: glk ··· 220 214 extends: 221 215 - .i915 222 216 parallel: 2 223 - timeout: "1h30m" 224 217 variables: 225 218 DEVICE_TYPE: asus-C433TA-AJ0005-rammus 226 219 GPU_VERSION: amly ··· 238 233 extends: 239 234 - .i915 240 235 parallel: 2 241 - timeout: "1h30m" 242 236 variables: 243 237 DEVICE_TYPE: dell-latitude-5400-8665U-sarien 244 238 GPU_VERSION: whl ··· 247 243 extends: 248 244 - .i915 249 245 parallel: 2 250 - timeout: "1h30m" 251 246 variables: 252 247 DEVICE_TYPE: asus-C436FA-Flip-hatch 253 248 GPU_VERSION: cml
-2761
drivers/gpu/drm/ci/testlist.txt
··· 1 - core_auth@getclient-simple 2 - core_auth@getclient-master-drop 3 - core_auth@basic-auth 4 - core_auth@many-magics 5 - core_getclient 6 - core_getstats 7 - core_getversion 8 - core_setmaster_vs_auth 9 - drm_read@invalid-buffer 10 - drm_read@fault-buffer 11 - drm_read@empty-block 12 - drm_read@empty-nonblock 13 - drm_read@short-buffer-block 14 - drm_read@short-buffer-nonblock 15 - drm_read@short-buffer-wakeup 16 - gem_eio@throttle 17 - gem_eio@create 18 - gem_eio@create-ext 19 - gem_eio@context-create 20 - gem_eio@execbuf 21 - gem_eio@banned 22 - gem_eio@suspend 23 - gem_eio@hibernate 24 - gem_eio@in-flight-external 25 - gem_eio@in-flight-suspend 26 - gem_eio@reset-stress 27 - gem_eio@unwedge-stress 28 - gem_eio@wait-immediate 29 - gem_eio@wait-wedge-immediate 30 - gem_eio@in-flight-immediate 31 - gem_eio@in-flight-contexts-immediate 32 - gem_eio@in-flight-internal-immediate 33 - gem_eio@wait-1us 34 - gem_eio@wait-wedge-1us 35 - gem_eio@in-flight-1us 36 - gem_eio@in-flight-contexts-1us 37 - gem_eio@in-flight-internal-1us 38 - gem_eio@wait-10ms 39 - gem_eio@wait-wedge-10ms 40 - gem_eio@in-flight-10ms 41 - gem_eio@in-flight-contexts-10ms 42 - gem_eio@in-flight-internal-10ms 43 - gem_eio@kms 44 - kms_3d 45 - kms_addfb_basic@unused-handle 46 - kms_addfb_basic@unused-pitches 47 - kms_addfb_basic@unused-offsets 48 - kms_addfb_basic@unused-modifier 49 - kms_addfb_basic@clobberred-modifier 50 - kms_addfb_basic@invalid-smem-bo-on-discrete 51 - kms_addfb_basic@legacy-format 52 - kms_addfb_basic@no-handle 53 - kms_addfb_basic@basic 54 - kms_addfb_basic@bad-pitch-0 55 - kms_addfb_basic@bad-pitch-32 56 - kms_addfb_basic@bad-pitch-63 57 - kms_addfb_basic@bad-pitch-128 58 - kms_addfb_basic@bad-pitch-256 59 - kms_addfb_basic@bad-pitch-1024 60 - kms_addfb_basic@bad-pitch-999 61 - kms_addfb_basic@bad-pitch-65536 62 - kms_addfb_basic@invalid-get-prop-any 63 - kms_addfb_basic@invalid-get-prop 64 - kms_addfb_basic@invalid-set-prop-any 65 - kms_addfb_basic@invalid-set-prop 66 - kms_addfb_basic@master-rmfb 67 - kms_addfb_basic@addfb25-modifier-no-flag 68 - kms_addfb_basic@addfb25-bad-modifier 69 - kms_addfb_basic@addfb25-x-tiled-mismatch-legacy 70 - kms_addfb_basic@addfb25-x-tiled-legacy 71 - kms_addfb_basic@addfb25-framebuffer-vs-set-tiling 72 - kms_addfb_basic@basic-x-tiled-legacy 73 - kms_addfb_basic@framebuffer-vs-set-tiling 74 - kms_addfb_basic@tile-pitch-mismatch 75 - kms_addfb_basic@basic-y-tiled-legacy 76 - kms_addfb_basic@size-max 77 - kms_addfb_basic@too-wide 78 - kms_addfb_basic@too-high 79 - kms_addfb_basic@bo-too-small 80 - kms_addfb_basic@small-bo 81 - kms_addfb_basic@bo-too-small-due-to-tiling 82 - kms_addfb_basic@addfb25-y-tiled-legacy 83 - kms_addfb_basic@addfb25-yf-tiled-legacy 84 - kms_addfb_basic@addfb25-y-tiled-small-legacy 85 - kms_addfb_basic@addfb25-4-tiled 86 - kms_async_flips@async-flip-with-page-flip-events 87 - kms_async_flips@alternate-sync-async-flip 88 - kms_async_flips@test-time-stamp 89 - kms_async_flips@test-cursor 90 - kms_async_flips@invalid-async-flip 91 - kms_async_flips@crc 92 - kms_atomic@plane-overlay-legacy 93 - kms_atomic@plane-primary-legacy 94 - kms_atomic@plane-primary-overlay-mutable-zpos 95 - kms_atomic@plane-immutable-zpos 96 - kms_atomic@test-only 97 - kms_atomic@plane-cursor-legacy 98 - kms_atomic@plane-invalid-params 99 - kms_atomic@plane-invalid-params-fence 100 - kms_atomic@crtc-invalid-params 101 - kms_atomic@crtc-invalid-params-fence 102 - kms_atomic@atomic-invalid-params 103 - kms_atomic@atomic-plane-damage 104 - kms_atomic_interruptible@legacy-setmode 105 - kms_atomic_interruptible@atomic-setmode 106 - kms_atomic_interruptible@legacy-dpms 107 - kms_atomic_interruptible@legacy-pageflip 108 - kms_atomic_interruptible@legacy-cursor 109 - kms_atomic_interruptible@universal-setplane-primary 110 - kms_atomic_interruptible@universal-setplane-cursor 111 - kms_atomic_transition@plane-primary-toggle-with-vblank-wait 112 - kms_atomic_transition@plane-all-transition 113 - kms_atomic_transition@plane-all-transition-fencing 114 - kms_atomic_transition@plane-all-transition-nonblocking 115 - kms_atomic_transition@plane-all-transition-nonblocking-fencing 116 - kms_atomic_transition@plane-use-after-nonblocking-unbind 117 - kms_atomic_transition@plane-use-after-nonblocking-unbind-fencing 118 - kms_atomic_transition@plane-all-modeset-transition 119 - kms_atomic_transition@plane-all-modeset-transition-fencing 120 - kms_atomic_transition@plane-all-modeset-transition-internal-panels 121 - kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels 122 - kms_atomic_transition@plane-toggle-modeset-transition 123 - kms_atomic_transition@modeset-transition 124 - kms_atomic_transition@modeset-transition-fencing 125 - kms_atomic_transition@modeset-transition-nonblocking 126 - kms_atomic_transition@modeset-transition-nonblocking-fencing 127 - kms_big_fb@x-tiled-addfb-size-overflow 128 - kms_big_fb@y-tiled-addfb-size-overflow 129 - kms_big_fb@yf-tiled-addfb-size-overflow 130 - kms_big_fb@4-tiled-addfb-size-overflow 131 - kms_big_fb@x-tiled-addfb-size-offset-overflow 132 - kms_big_fb@y-tiled-addfb-size-offset-overflow 133 - kms_big_fb@yf-tiled-addfb-size-offset-overflow 134 - kms_big_fb@4-tiled-addfb-size-offset-overflow 135 - kms_big_fb@linear-addfb 136 - kms_big_fb@x-tiled-addfb 137 - kms_big_fb@y-tiled-addfb 138 - kms_big_fb@yf-tiled-addfb 139 - kms_big_fb@4-tiled-addfb 140 - kms_big_fb@linear-8bpp-rotate-0 141 - kms_big_fb@linear-8bpp-rotate-90 142 - kms_big_fb@linear-8bpp-rotate-180 143 - kms_big_fb@linear-8bpp-rotate-270 144 - kms_big_fb@linear-16bpp-rotate-0 145 - kms_big_fb@linear-16bpp-rotate-90 146 - kms_big_fb@linear-16bpp-rotate-180 147 - kms_big_fb@linear-16bpp-rotate-270 148 - kms_big_fb@linear-32bpp-rotate-0 149 - kms_big_fb@linear-32bpp-rotate-90 150 - kms_big_fb@linear-32bpp-rotate-180 151 - kms_big_fb@linear-32bpp-rotate-270 152 - kms_big_fb@linear-64bpp-rotate-0 153 - kms_big_fb@linear-64bpp-rotate-90 154 - kms_big_fb@linear-64bpp-rotate-180 155 - kms_big_fb@linear-64bpp-rotate-270 156 - kms_big_fb@x-tiled-8bpp-rotate-0 157 - kms_big_fb@x-tiled-8bpp-rotate-90 158 - kms_big_fb@x-tiled-8bpp-rotate-180 159 - kms_big_fb@x-tiled-8bpp-rotate-270 160 - kms_big_fb@x-tiled-16bpp-rotate-0 161 - kms_big_fb@x-tiled-16bpp-rotate-90 162 - kms_big_fb@x-tiled-16bpp-rotate-180 163 - kms_big_fb@x-tiled-16bpp-rotate-270 164 - kms_big_fb@x-tiled-32bpp-rotate-0 165 - kms_big_fb@x-tiled-32bpp-rotate-90 166 - kms_big_fb@x-tiled-32bpp-rotate-180 167 - kms_big_fb@x-tiled-32bpp-rotate-270 168 - kms_big_fb@x-tiled-64bpp-rotate-0 169 - kms_big_fb@x-tiled-64bpp-rotate-90 170 - kms_big_fb@x-tiled-64bpp-rotate-180 171 - kms_big_fb@x-tiled-64bpp-rotate-270 172 - kms_big_fb@y-tiled-8bpp-rotate-0 173 - kms_big_fb@y-tiled-8bpp-rotate-90 174 - kms_big_fb@y-tiled-8bpp-rotate-180 175 - kms_big_fb@y-tiled-8bpp-rotate-270 176 - kms_big_fb@y-tiled-16bpp-rotate-0 177 - kms_big_fb@y-tiled-16bpp-rotate-90 178 - kms_big_fb@y-tiled-16bpp-rotate-180 179 - kms_big_fb@y-tiled-16bpp-rotate-270 180 - kms_big_fb@y-tiled-32bpp-rotate-0 181 - kms_big_fb@y-tiled-32bpp-rotate-90 182 - kms_big_fb@y-tiled-32bpp-rotate-180 183 - kms_big_fb@y-tiled-32bpp-rotate-270 184 - kms_big_fb@y-tiled-64bpp-rotate-0 185 - kms_big_fb@y-tiled-64bpp-rotate-90 186 - kms_big_fb@y-tiled-64bpp-rotate-180 187 - kms_big_fb@y-tiled-64bpp-rotate-270 188 - kms_big_fb@yf-tiled-8bpp-rotate-0 189 - kms_big_fb@yf-tiled-8bpp-rotate-90 190 - kms_big_fb@yf-tiled-8bpp-rotate-180 191 - kms_big_fb@yf-tiled-8bpp-rotate-270 192 - kms_big_fb@yf-tiled-16bpp-rotate-0 193 - kms_big_fb@yf-tiled-16bpp-rotate-90 194 - kms_big_fb@yf-tiled-16bpp-rotate-180 195 - kms_big_fb@yf-tiled-16bpp-rotate-270 196 - kms_big_fb@yf-tiled-32bpp-rotate-0 197 - kms_big_fb@yf-tiled-32bpp-rotate-90 198 - kms_big_fb@yf-tiled-32bpp-rotate-180 199 - kms_big_fb@yf-tiled-32bpp-rotate-270 200 - kms_big_fb@yf-tiled-64bpp-rotate-0 201 - kms_big_fb@yf-tiled-64bpp-rotate-90 202 - kms_big_fb@yf-tiled-64bpp-rotate-180 203 - kms_big_fb@yf-tiled-64bpp-rotate-270 204 - kms_big_fb@4-tiled-8bpp-rotate-0 205 - kms_big_fb@4-tiled-8bpp-rotate-90 206 - kms_big_fb@4-tiled-8bpp-rotate-180 207 - kms_big_fb@4-tiled-8bpp-rotate-270 208 - kms_big_fb@4-tiled-16bpp-rotate-0 209 - kms_big_fb@4-tiled-16bpp-rotate-90 210 - kms_big_fb@4-tiled-16bpp-rotate-180 211 - kms_big_fb@4-tiled-16bpp-rotate-270 212 - kms_big_fb@4-tiled-32bpp-rotate-0 213 - kms_big_fb@4-tiled-32bpp-rotate-90 214 - kms_big_fb@4-tiled-32bpp-rotate-180 215 - kms_big_fb@4-tiled-32bpp-rotate-270 216 - kms_big_fb@4-tiled-64bpp-rotate-0 217 - kms_big_fb@4-tiled-64bpp-rotate-90 218 - kms_big_fb@4-tiled-64bpp-rotate-180 219 - kms_big_fb@4-tiled-64bpp-rotate-270 220 - kms_big_fb@linear-max-hw-stride-32bpp-rotate-0 221 - kms_big_fb@linear-max-hw-stride-32bpp-rotate-180 222 - kms_big_fb@linear-max-hw-stride-64bpp-rotate-0 223 - kms_big_fb@linear-max-hw-stride-64bpp-rotate-180 224 - kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0 225 - kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0-async-flip 226 - kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180 227 - kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180-async-flip 228 - kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-0 229 - kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-0-async-flip 230 - kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-180 231 - kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-180-async-flip 232 - kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0-hflip 233 - kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip 234 - kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180-hflip 235 - kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip 236 - kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-0-hflip 237 - kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip 238 - kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-180-hflip 239 - kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip 240 - kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0 241 - kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-async-flip 242 - kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180 243 - kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-async-flip 244 - kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0 245 - kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-async-flip 246 - kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180 247 - kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-async-flip 248 - kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-hflip 249 - kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip 250 - kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-hflip 251 - kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip 252 - kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-hflip 253 - kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip 254 - kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-hflip 255 - kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip 256 - kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0 257 - kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0-async-flip 258 - kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-180 259 - kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-180-async-flip 260 - kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0 261 - kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0-async-flip 262 - kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180 263 - kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-async-flip 264 - kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0-hflip 265 - kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip 266 - kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-180-hflip 267 - kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip 268 - kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0-hflip 269 - kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip 270 - kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip 271 - kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip 272 - kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0 273 - kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-async-flip 274 - kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180 275 - kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-async-flip 276 - kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0 277 - kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-async-flip 278 - kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180 279 - kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-async-flip 280 - kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip 281 - kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip 282 - kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-hflip 283 - kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip 284 - kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip 285 - kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip 286 - kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip 287 - kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip 288 - kms_big_joiner@basic 289 - kms_big_joiner@invalid-modeset 290 - kms_big_joiner@2x-modeset 291 - kms_busy@basic 292 - kms_busy@basic-hang 293 - kms_busy@extended-pageflip-modeset-hang-oldfb 294 - kms_busy@extended-pageflip-hang-oldfb 295 - kms_busy@extended-pageflip-hang-newfb 296 - kms_busy@extended-modeset-hang-oldfb 297 - kms_busy@extended-modeset-hang-newfb 298 - kms_busy@extended-modeset-hang-oldfb-with-reset 299 - kms_busy@extended-modeset-hang-newfb-with-reset 300 - kms_bw@linear-tiling-1-displays-1920x1080p 301 - kms_bw@linear-tiling-1-displays-2560x1440p 302 - kms_bw@linear-tiling-1-displays-3840x2160p 303 - kms_bw@linear-tiling-2-displays-1920x1080p 304 - kms_bw@linear-tiling-2-displays-2560x1440p 305 - kms_bw@linear-tiling-2-displays-3840x2160p 306 - kms_bw@linear-tiling-3-displays-1920x1080p 307 - kms_bw@linear-tiling-3-displays-2560x1440p 308 - kms_bw@linear-tiling-3-displays-3840x2160p 309 - kms_bw@linear-tiling-4-displays-1920x1080p 310 - kms_bw@linear-tiling-4-displays-2560x1440p 311 - kms_bw@linear-tiling-4-displays-3840x2160p 312 - kms_bw@linear-tiling-5-displays-1920x1080p 313 - kms_bw@linear-tiling-5-displays-2560x1440p 314 - kms_bw@linear-tiling-5-displays-3840x2160p 315 - kms_bw@linear-tiling-6-displays-1920x1080p 316 - kms_bw@linear-tiling-6-displays-2560x1440p 317 - kms_bw@linear-tiling-6-displays-3840x2160p 318 - kms_bw@linear-tiling-7-displays-1920x1080p 319 - kms_bw@linear-tiling-7-displays-2560x1440p 320 - kms_bw@linear-tiling-7-displays-3840x2160p 321 - kms_bw@linear-tiling-8-displays-1920x1080p 322 - kms_bw@linear-tiling-8-displays-2560x1440p 323 - kms_bw@linear-tiling-8-displays-3840x2160p 324 - kms_ccs@pipe-A-bad-pixel-format-y-tiled-ccs 325 - kms_ccs@pipe-A-bad-pixel-format-yf-tiled-ccs 326 - kms_ccs@pipe-A-bad-pixel-format-y-tiled-gen12-rc-ccs 327 - kms_ccs@pipe-A-bad-pixel-format-y-tiled-gen12-rc-ccs-cc 328 - kms_ccs@pipe-A-bad-pixel-format-y-tiled-gen12-mc-ccs 329 - kms_ccs@pipe-A-bad-pixel-format-4-tiled-dg2-rc-ccs 330 - kms_ccs@pipe-A-bad-pixel-format-4-tiled-dg2-mc-ccs 331 - kms_ccs@pipe-A-bad-pixel-format-4-tiled-dg2-rc-ccs-cc 332 - kms_ccs@pipe-A-bad-pixel-format-4-tiled-mtl-rc-ccs 333 - kms_ccs@pipe-A-bad-pixel-format-4-tiled-mtl-mc-ccs 334 - kms_ccs@pipe-A-bad-pixel-format-4-tiled-mtl-rc-ccs-cc 335 - kms_ccs@pipe-A-bad-rotation-90-y-tiled-ccs 336 - kms_ccs@pipe-A-bad-rotation-90-yf-tiled-ccs 337 - kms_ccs@pipe-A-bad-rotation-90-y-tiled-gen12-rc-ccs 338 - kms_ccs@pipe-A-bad-rotation-90-y-tiled-gen12-rc-ccs-cc 339 - kms_ccs@pipe-A-bad-rotation-90-y-tiled-gen12-mc-ccs 340 - kms_ccs@pipe-A-bad-rotation-90-4-tiled-dg2-rc-ccs 341 - kms_ccs@pipe-A-bad-rotation-90-4-tiled-dg2-mc-ccs 342 - kms_ccs@pipe-A-bad-rotation-90-4-tiled-dg2-rc-ccs-cc 343 - kms_ccs@pipe-A-bad-rotation-90-4-tiled-mtl-rc-ccs 344 - kms_ccs@pipe-A-bad-rotation-90-4-tiled-mtl-mc-ccs 345 - kms_ccs@pipe-A-bad-rotation-90-4-tiled-mtl-rc-ccs-cc 346 - kms_ccs@pipe-A-crc-primary-basic-y-tiled-ccs 347 - kms_ccs@pipe-A-crc-primary-basic-yf-tiled-ccs 348 - kms_ccs@pipe-A-crc-primary-basic-y-tiled-gen12-rc-ccs 349 - kms_ccs@pipe-A-crc-primary-basic-y-tiled-gen12-rc-ccs-cc 350 - kms_ccs@pipe-A-crc-primary-basic-y-tiled-gen12-mc-ccs 351 - kms_ccs@pipe-A-crc-primary-basic-4-tiled-dg2-rc-ccs 352 - kms_ccs@pipe-A-crc-primary-basic-4-tiled-dg2-mc-ccs 353 - kms_ccs@pipe-A-crc-primary-basic-4-tiled-dg2-rc-ccs-cc 354 - kms_ccs@pipe-A-crc-primary-basic-4-tiled-mtl-rc-ccs 355 - kms_ccs@pipe-A-crc-primary-basic-4-tiled-mtl-mc-ccs 356 - kms_ccs@pipe-A-crc-primary-basic-4-tiled-mtl-rc-ccs-cc 357 - kms_ccs@pipe-A-crc-primary-rotation-180-y-tiled-ccs 358 - kms_ccs@pipe-A-crc-primary-rotation-180-yf-tiled-ccs 359 - kms_ccs@pipe-A-crc-primary-rotation-180-y-tiled-gen12-rc-ccs 360 - kms_ccs@pipe-A-crc-primary-rotation-180-y-tiled-gen12-rc-ccs-cc 361 - kms_ccs@pipe-A-crc-primary-rotation-180-y-tiled-gen12-mc-ccs 362 - kms_ccs@pipe-A-crc-primary-rotation-180-4-tiled-dg2-rc-ccs 363 - kms_ccs@pipe-A-crc-primary-rotation-180-4-tiled-dg2-mc-ccs 364 - kms_ccs@pipe-A-crc-primary-rotation-180-4-tiled-dg2-rc-ccs-cc 365 - kms_ccs@pipe-A-crc-primary-rotation-180-4-tiled-mtl-rc-ccs 366 - kms_ccs@pipe-A-crc-primary-rotation-180-4-tiled-mtl-mc-ccs 367 - kms_ccs@pipe-A-crc-primary-rotation-180-4-tiled-mtl-rc-ccs-cc 368 - kms_ccs@pipe-A-random-ccs-data-y-tiled-ccs 369 - kms_ccs@pipe-A-random-ccs-data-yf-tiled-ccs 370 - kms_ccs@pipe-A-random-ccs-data-y-tiled-gen12-rc-ccs 371 - kms_ccs@pipe-A-random-ccs-data-y-tiled-gen12-rc-ccs-cc 372 - kms_ccs@pipe-A-random-ccs-data-y-tiled-gen12-mc-ccs 373 - kms_ccs@pipe-A-random-ccs-data-4-tiled-dg2-rc-ccs 374 - kms_ccs@pipe-A-random-ccs-data-4-tiled-dg2-mc-ccs 375 - kms_ccs@pipe-A-random-ccs-data-4-tiled-dg2-rc-ccs-cc 376 - kms_ccs@pipe-A-random-ccs-data-4-tiled-mtl-rc-ccs 377 - kms_ccs@pipe-A-random-ccs-data-4-tiled-mtl-mc-ccs 378 - kms_ccs@pipe-A-random-ccs-data-4-tiled-mtl-rc-ccs-cc 379 - kms_ccs@pipe-A-missing-ccs-buffer-y-tiled-ccs 380 - kms_ccs@pipe-A-missing-ccs-buffer-yf-tiled-ccs 381 - kms_ccs@pipe-A-missing-ccs-buffer-y-tiled-gen12-rc-ccs 382 - kms_ccs@pipe-A-missing-ccs-buffer-y-tiled-gen12-rc-ccs-cc 383 - kms_ccs@pipe-A-missing-ccs-buffer-y-tiled-gen12-mc-ccs 384 - kms_ccs@pipe-A-missing-ccs-buffer-4-tiled-mtl-rc-ccs 385 - kms_ccs@pipe-A-missing-ccs-buffer-4-tiled-mtl-mc-ccs 386 - kms_ccs@pipe-A-missing-ccs-buffer-4-tiled-mtl-rc-ccs-cc 387 - kms_ccs@pipe-A-ccs-on-another-bo-y-tiled-ccs 388 - kms_ccs@pipe-A-ccs-on-another-bo-yf-tiled-ccs 389 - kms_ccs@pipe-A-ccs-on-another-bo-y-tiled-gen12-rc-ccs 390 - kms_ccs@pipe-A-ccs-on-another-bo-y-tiled-gen12-rc-ccs-cc 391 - kms_ccs@pipe-A-ccs-on-another-bo-y-tiled-gen12-mc-ccs 392 - kms_ccs@pipe-A-ccs-on-another-bo-4-tiled-mtl-rc-ccs 393 - kms_ccs@pipe-A-ccs-on-another-bo-4-tiled-mtl-mc-ccs 394 - kms_ccs@pipe-A-ccs-on-another-bo-4-tiled-mtl-rc-ccs-cc 395 - kms_ccs@pipe-A-bad-aux-stride-y-tiled-ccs 396 - kms_ccs@pipe-A-bad-aux-stride-yf-tiled-ccs 397 - kms_ccs@pipe-A-bad-aux-stride-y-tiled-gen12-rc-ccs 398 - kms_ccs@pipe-A-bad-aux-stride-y-tiled-gen12-rc-ccs-cc 399 - kms_ccs@pipe-A-bad-aux-stride-y-tiled-gen12-mc-ccs 400 - kms_ccs@pipe-A-bad-aux-stride-4-tiled-mtl-rc-ccs 401 - kms_ccs@pipe-A-bad-aux-stride-4-tiled-mtl-mc-ccs 402 - kms_ccs@pipe-A-bad-aux-stride-4-tiled-mtl-rc-ccs-cc 403 - kms_ccs@pipe-A-crc-sprite-planes-basic-y-tiled-ccs 404 - kms_ccs@pipe-A-crc-sprite-planes-basic-yf-tiled-ccs 405 - kms_ccs@pipe-A-crc-sprite-planes-basic-y-tiled-gen12-rc-ccs 406 - kms_ccs@pipe-A-crc-sprite-planes-basic-y-tiled-gen12-rc-ccs-cc 407 - kms_ccs@pipe-A-crc-sprite-planes-basic-y-tiled-gen12-mc-ccs 408 - kms_ccs@pipe-A-crc-sprite-planes-basic-4-tiled-dg2-rc-ccs 409 - kms_ccs@pipe-A-crc-sprite-planes-basic-4-tiled-dg2-mc-ccs 410 - kms_ccs@pipe-A-crc-sprite-planes-basic-4-tiled-dg2-rc-ccs-cc 411 - kms_ccs@pipe-A-crc-sprite-planes-basic-4-tiled-mtl-rc-ccs 412 - kms_ccs@pipe-A-crc-sprite-planes-basic-4-tiled-mtl-mc-ccs 413 - kms_ccs@pipe-A-crc-sprite-planes-basic-4-tiled-mtl-rc-ccs-cc 414 - kms_ccs@pipe-B-bad-pixel-format-y-tiled-ccs 415 - kms_ccs@pipe-B-bad-pixel-format-yf-tiled-ccs 416 - kms_ccs@pipe-B-bad-pixel-format-y-tiled-gen12-rc-ccs 417 - kms_ccs@pipe-B-bad-pixel-format-y-tiled-gen12-rc-ccs-cc 418 - kms_ccs@pipe-B-bad-pixel-format-y-tiled-gen12-mc-ccs 419 - kms_ccs@pipe-B-bad-pixel-format-4-tiled-dg2-rc-ccs 420 - kms_ccs@pipe-B-bad-pixel-format-4-tiled-dg2-mc-ccs 421 - kms_ccs@pipe-B-bad-pixel-format-4-tiled-dg2-rc-ccs-cc 422 - kms_ccs@pipe-B-bad-pixel-format-4-tiled-mtl-rc-ccs 423 - kms_ccs@pipe-B-bad-pixel-format-4-tiled-mtl-mc-ccs 424 - kms_ccs@pipe-B-bad-pixel-format-4-tiled-mtl-rc-ccs-cc 425 - kms_ccs@pipe-B-bad-rotation-90-y-tiled-ccs 426 - kms_ccs@pipe-B-bad-rotation-90-yf-tiled-ccs 427 - kms_ccs@pipe-B-bad-rotation-90-y-tiled-gen12-rc-ccs 428 - kms_ccs@pipe-B-bad-rotation-90-y-tiled-gen12-rc-ccs-cc 429 - kms_ccs@pipe-B-bad-rotation-90-y-tiled-gen12-mc-ccs 430 - kms_ccs@pipe-B-bad-rotation-90-4-tiled-dg2-rc-ccs 431 - kms_ccs@pipe-B-bad-rotation-90-4-tiled-dg2-mc-ccs 432 - kms_ccs@pipe-B-bad-rotation-90-4-tiled-dg2-rc-ccs-cc 433 - kms_ccs@pipe-B-bad-rotation-90-4-tiled-mtl-rc-ccs 434 - kms_ccs@pipe-B-bad-rotation-90-4-tiled-mtl-mc-ccs 435 - kms_ccs@pipe-B-bad-rotation-90-4-tiled-mtl-rc-ccs-cc 436 - kms_ccs@pipe-B-crc-primary-basic-y-tiled-ccs 437 - kms_ccs@pipe-B-crc-primary-basic-yf-tiled-ccs 438 - kms_ccs@pipe-B-crc-primary-basic-y-tiled-gen12-rc-ccs 439 - kms_ccs@pipe-B-crc-primary-basic-y-tiled-gen12-rc-ccs-cc 440 - kms_ccs@pipe-B-crc-primary-basic-y-tiled-gen12-mc-ccs 441 - kms_ccs@pipe-B-crc-primary-basic-4-tiled-dg2-rc-ccs 442 - kms_ccs@pipe-B-crc-primary-basic-4-tiled-dg2-mc-ccs 443 - kms_ccs@pipe-B-crc-primary-basic-4-tiled-dg2-rc-ccs-cc 444 - kms_ccs@pipe-B-crc-primary-basic-4-tiled-mtl-rc-ccs 445 - kms_ccs@pipe-B-crc-primary-basic-4-tiled-mtl-mc-ccs 446 - kms_ccs@pipe-B-crc-primary-basic-4-tiled-mtl-rc-ccs-cc 447 - kms_ccs@pipe-B-crc-primary-rotation-180-y-tiled-ccs 448 - kms_ccs@pipe-B-crc-primary-rotation-180-yf-tiled-ccs 449 - kms_ccs@pipe-B-crc-primary-rotation-180-y-tiled-gen12-rc-ccs 450 - kms_ccs@pipe-B-crc-primary-rotation-180-y-tiled-gen12-rc-ccs-cc 451 - kms_ccs@pipe-B-crc-primary-rotation-180-y-tiled-gen12-mc-ccs 452 - kms_ccs@pipe-B-crc-primary-rotation-180-4-tiled-dg2-rc-ccs 453 - kms_ccs@pipe-B-crc-primary-rotation-180-4-tiled-dg2-mc-ccs 454 - kms_ccs@pipe-B-crc-primary-rotation-180-4-tiled-dg2-rc-ccs-cc 455 - kms_ccs@pipe-B-crc-primary-rotation-180-4-tiled-mtl-rc-ccs 456 - kms_ccs@pipe-B-crc-primary-rotation-180-4-tiled-mtl-mc-ccs 457 - kms_ccs@pipe-B-crc-primary-rotation-180-4-tiled-mtl-rc-ccs-cc 458 - kms_ccs@pipe-B-random-ccs-data-y-tiled-ccs 459 - kms_ccs@pipe-B-random-ccs-data-yf-tiled-ccs 460 - kms_ccs@pipe-B-random-ccs-data-y-tiled-gen12-rc-ccs 461 - kms_ccs@pipe-B-random-ccs-data-y-tiled-gen12-rc-ccs-cc 462 - kms_ccs@pipe-B-random-ccs-data-y-tiled-gen12-mc-ccs 463 - kms_ccs@pipe-B-random-ccs-data-4-tiled-dg2-rc-ccs 464 - kms_ccs@pipe-B-random-ccs-data-4-tiled-dg2-mc-ccs 465 - kms_ccs@pipe-B-random-ccs-data-4-tiled-dg2-rc-ccs-cc 466 - kms_ccs@pipe-B-random-ccs-data-4-tiled-mtl-rc-ccs 467 - kms_ccs@pipe-B-random-ccs-data-4-tiled-mtl-mc-ccs 468 - kms_ccs@pipe-B-random-ccs-data-4-tiled-mtl-rc-ccs-cc 469 - kms_ccs@pipe-B-missing-ccs-buffer-y-tiled-ccs 470 - kms_ccs@pipe-B-missing-ccs-buffer-yf-tiled-ccs 471 - kms_ccs@pipe-B-missing-ccs-buffer-y-tiled-gen12-rc-ccs 472 - kms_ccs@pipe-B-missing-ccs-buffer-y-tiled-gen12-rc-ccs-cc 473 - kms_ccs@pipe-B-missing-ccs-buffer-y-tiled-gen12-mc-ccs 474 - kms_ccs@pipe-B-missing-ccs-buffer-4-tiled-mtl-rc-ccs 475 - kms_ccs@pipe-B-missing-ccs-buffer-4-tiled-mtl-mc-ccs 476 - kms_ccs@pipe-B-missing-ccs-buffer-4-tiled-mtl-rc-ccs-cc 477 - kms_ccs@pipe-B-ccs-on-another-bo-y-tiled-ccs 478 - kms_ccs@pipe-B-ccs-on-another-bo-yf-tiled-ccs 479 - kms_ccs@pipe-B-ccs-on-another-bo-y-tiled-gen12-rc-ccs 480 - kms_ccs@pipe-B-ccs-on-another-bo-y-tiled-gen12-rc-ccs-cc 481 - kms_ccs@pipe-B-ccs-on-another-bo-y-tiled-gen12-mc-ccs 482 - kms_ccs@pipe-B-ccs-on-another-bo-4-tiled-mtl-rc-ccs 483 - kms_ccs@pipe-B-ccs-on-another-bo-4-tiled-mtl-mc-ccs 484 - kms_ccs@pipe-B-ccs-on-another-bo-4-tiled-mtl-rc-ccs-cc 485 - kms_ccs@pipe-B-bad-aux-stride-y-tiled-ccs 486 - kms_ccs@pipe-B-bad-aux-stride-yf-tiled-ccs 487 - kms_ccs@pipe-B-bad-aux-stride-y-tiled-gen12-rc-ccs 488 - kms_ccs@pipe-B-bad-aux-stride-y-tiled-gen12-rc-ccs-cc 489 - kms_ccs@pipe-B-bad-aux-stride-y-tiled-gen12-mc-ccs 490 - kms_ccs@pipe-B-bad-aux-stride-4-tiled-mtl-rc-ccs 491 - kms_ccs@pipe-B-bad-aux-stride-4-tiled-mtl-mc-ccs 492 - kms_ccs@pipe-B-bad-aux-stride-4-tiled-mtl-rc-ccs-cc 493 - kms_ccs@pipe-B-crc-sprite-planes-basic-y-tiled-ccs 494 - kms_ccs@pipe-B-crc-sprite-planes-basic-yf-tiled-ccs 495 - kms_ccs@pipe-B-crc-sprite-planes-basic-y-tiled-gen12-rc-ccs 496 - kms_ccs@pipe-B-crc-sprite-planes-basic-y-tiled-gen12-rc-ccs-cc 497 - kms_ccs@pipe-B-crc-sprite-planes-basic-y-tiled-gen12-mc-ccs 498 - kms_ccs@pipe-B-crc-sprite-planes-basic-4-tiled-dg2-rc-ccs 499 - kms_ccs@pipe-B-crc-sprite-planes-basic-4-tiled-dg2-mc-ccs 500 - kms_ccs@pipe-B-crc-sprite-planes-basic-4-tiled-dg2-rc-ccs-cc 501 - kms_ccs@pipe-B-crc-sprite-planes-basic-4-tiled-mtl-rc-ccs 502 - kms_ccs@pipe-B-crc-sprite-planes-basic-4-tiled-mtl-mc-ccs 503 - kms_ccs@pipe-B-crc-sprite-planes-basic-4-tiled-mtl-rc-ccs-cc 504 - kms_ccs@pipe-C-bad-pixel-format-y-tiled-ccs 505 - kms_ccs@pipe-C-bad-pixel-format-yf-tiled-ccs 506 - kms_ccs@pipe-C-bad-pixel-format-y-tiled-gen12-rc-ccs 507 - kms_ccs@pipe-C-bad-pixel-format-y-tiled-gen12-rc-ccs-cc 508 - kms_ccs@pipe-C-bad-pixel-format-y-tiled-gen12-mc-ccs 509 - kms_ccs@pipe-C-bad-pixel-format-4-tiled-dg2-rc-ccs 510 - kms_ccs@pipe-C-bad-pixel-format-4-tiled-dg2-mc-ccs 511 - kms_ccs@pipe-C-bad-pixel-format-4-tiled-dg2-rc-ccs-cc 512 - kms_ccs@pipe-C-bad-pixel-format-4-tiled-mtl-rc-ccs 513 - kms_ccs@pipe-C-bad-pixel-format-4-tiled-mtl-mc-ccs 514 - kms_ccs@pipe-C-bad-pixel-format-4-tiled-mtl-rc-ccs-cc 515 - kms_ccs@pipe-C-bad-rotation-90-y-tiled-ccs 516 - kms_ccs@pipe-C-bad-rotation-90-yf-tiled-ccs 517 - kms_ccs@pipe-C-bad-rotation-90-y-tiled-gen12-rc-ccs 518 - kms_ccs@pipe-C-bad-rotation-90-y-tiled-gen12-rc-ccs-cc 519 - kms_ccs@pipe-C-bad-rotation-90-y-tiled-gen12-mc-ccs 520 - kms_ccs@pipe-C-bad-rotation-90-4-tiled-dg2-rc-ccs 521 - kms_ccs@pipe-C-bad-rotation-90-4-tiled-dg2-mc-ccs 522 - kms_ccs@pipe-C-bad-rotation-90-4-tiled-dg2-rc-ccs-cc 523 - kms_ccs@pipe-C-bad-rotation-90-4-tiled-mtl-rc-ccs 524 - kms_ccs@pipe-C-bad-rotation-90-4-tiled-mtl-mc-ccs 525 - kms_ccs@pipe-C-bad-rotation-90-4-tiled-mtl-rc-ccs-cc 526 - kms_ccs@pipe-C-crc-primary-basic-y-tiled-ccs 527 - kms_ccs@pipe-C-crc-primary-basic-yf-tiled-ccs 528 - kms_ccs@pipe-C-crc-primary-basic-y-tiled-gen12-rc-ccs 529 - kms_ccs@pipe-C-crc-primary-basic-y-tiled-gen12-rc-ccs-cc 530 - kms_ccs@pipe-C-crc-primary-basic-y-tiled-gen12-mc-ccs 531 - kms_ccs@pipe-C-crc-primary-basic-4-tiled-dg2-rc-ccs 532 - kms_ccs@pipe-C-crc-primary-basic-4-tiled-dg2-mc-ccs 533 - kms_ccs@pipe-C-crc-primary-basic-4-tiled-dg2-rc-ccs-cc 534 - kms_ccs@pipe-C-crc-primary-basic-4-tiled-mtl-rc-ccs 535 - kms_ccs@pipe-C-crc-primary-basic-4-tiled-mtl-mc-ccs 536 - kms_ccs@pipe-C-crc-primary-basic-4-tiled-mtl-rc-ccs-cc 537 - kms_ccs@pipe-C-crc-primary-rotation-180-y-tiled-ccs 538 - kms_ccs@pipe-C-crc-primary-rotation-180-yf-tiled-ccs 539 - kms_ccs@pipe-C-crc-primary-rotation-180-y-tiled-gen12-rc-ccs 540 - kms_ccs@pipe-C-crc-primary-rotation-180-y-tiled-gen12-rc-ccs-cc 541 - kms_ccs@pipe-C-crc-primary-rotation-180-y-tiled-gen12-mc-ccs 542 - kms_ccs@pipe-C-crc-primary-rotation-180-4-tiled-dg2-rc-ccs 543 - kms_ccs@pipe-C-crc-primary-rotation-180-4-tiled-dg2-mc-ccs 544 - kms_ccs@pipe-C-crc-primary-rotation-180-4-tiled-dg2-rc-ccs-cc 545 - kms_ccs@pipe-C-crc-primary-rotation-180-4-tiled-mtl-rc-ccs 546 - kms_ccs@pipe-C-crc-primary-rotation-180-4-tiled-mtl-mc-ccs 547 - kms_ccs@pipe-C-crc-primary-rotation-180-4-tiled-mtl-rc-ccs-cc 548 - kms_ccs@pipe-C-random-ccs-data-y-tiled-ccs 549 - kms_ccs@pipe-C-random-ccs-data-yf-tiled-ccs 550 - kms_ccs@pipe-C-random-ccs-data-y-tiled-gen12-rc-ccs 551 - kms_ccs@pipe-C-random-ccs-data-y-tiled-gen12-rc-ccs-cc 552 - kms_ccs@pipe-C-random-ccs-data-y-tiled-gen12-mc-ccs 553 - kms_ccs@pipe-C-random-ccs-data-4-tiled-dg2-rc-ccs 554 - kms_ccs@pipe-C-random-ccs-data-4-tiled-dg2-mc-ccs 555 - kms_ccs@pipe-C-random-ccs-data-4-tiled-dg2-rc-ccs-cc 556 - kms_ccs@pipe-C-random-ccs-data-4-tiled-mtl-rc-ccs 557 - kms_ccs@pipe-C-random-ccs-data-4-tiled-mtl-mc-ccs 558 - kms_ccs@pipe-C-random-ccs-data-4-tiled-mtl-rc-ccs-cc 559 - kms_ccs@pipe-C-missing-ccs-buffer-y-tiled-ccs 560 - kms_ccs@pipe-C-missing-ccs-buffer-yf-tiled-ccs 561 - kms_ccs@pipe-C-missing-ccs-buffer-y-tiled-gen12-rc-ccs 562 - kms_ccs@pipe-C-missing-ccs-buffer-y-tiled-gen12-rc-ccs-cc 563 - kms_ccs@pipe-C-missing-ccs-buffer-y-tiled-gen12-mc-ccs 564 - kms_ccs@pipe-C-missing-ccs-buffer-4-tiled-mtl-rc-ccs 565 - kms_ccs@pipe-C-missing-ccs-buffer-4-tiled-mtl-mc-ccs 566 - kms_ccs@pipe-C-missing-ccs-buffer-4-tiled-mtl-rc-ccs-cc 567 - kms_ccs@pipe-C-ccs-on-another-bo-y-tiled-ccs 568 - kms_ccs@pipe-C-ccs-on-another-bo-yf-tiled-ccs 569 - kms_ccs@pipe-C-ccs-on-another-bo-y-tiled-gen12-rc-ccs 570 - kms_ccs@pipe-C-ccs-on-another-bo-y-tiled-gen12-rc-ccs-cc 571 - kms_ccs@pipe-C-ccs-on-another-bo-y-tiled-gen12-mc-ccs 572 - kms_ccs@pipe-C-ccs-on-another-bo-4-tiled-mtl-rc-ccs 573 - kms_ccs@pipe-C-ccs-on-another-bo-4-tiled-mtl-mc-ccs 574 - kms_ccs@pipe-C-ccs-on-another-bo-4-tiled-mtl-rc-ccs-cc 575 - kms_ccs@pipe-C-bad-aux-stride-y-tiled-ccs 576 - kms_ccs@pipe-C-bad-aux-stride-yf-tiled-ccs 577 - kms_ccs@pipe-C-bad-aux-stride-y-tiled-gen12-rc-ccs 578 - kms_ccs@pipe-C-bad-aux-stride-y-tiled-gen12-rc-ccs-cc 579 - kms_ccs@pipe-C-bad-aux-stride-y-tiled-gen12-mc-ccs 580 - kms_ccs@pipe-C-bad-aux-stride-4-tiled-mtl-rc-ccs 581 - kms_ccs@pipe-C-bad-aux-stride-4-tiled-mtl-mc-ccs 582 - kms_ccs@pipe-C-bad-aux-stride-4-tiled-mtl-rc-ccs-cc 583 - kms_ccs@pipe-C-crc-sprite-planes-basic-y-tiled-ccs 584 - kms_ccs@pipe-C-crc-sprite-planes-basic-yf-tiled-ccs 585 - kms_ccs@pipe-C-crc-sprite-planes-basic-y-tiled-gen12-rc-ccs 586 - kms_ccs@pipe-C-crc-sprite-planes-basic-y-tiled-gen12-rc-ccs-cc 587 - kms_ccs@pipe-C-crc-sprite-planes-basic-y-tiled-gen12-mc-ccs 588 - kms_ccs@pipe-C-crc-sprite-planes-basic-4-tiled-dg2-rc-ccs 589 - kms_ccs@pipe-C-crc-sprite-planes-basic-4-tiled-dg2-mc-ccs 590 - kms_ccs@pipe-C-crc-sprite-planes-basic-4-tiled-dg2-rc-ccs-cc 591 - kms_ccs@pipe-C-crc-sprite-planes-basic-4-tiled-mtl-rc-ccs 592 - kms_ccs@pipe-C-crc-sprite-planes-basic-4-tiled-mtl-mc-ccs 593 - kms_ccs@pipe-C-crc-sprite-planes-basic-4-tiled-mtl-rc-ccs-cc 594 - kms_ccs@pipe-D-bad-pixel-format-y-tiled-ccs 595 - kms_ccs@pipe-D-bad-pixel-format-yf-tiled-ccs 596 - kms_ccs@pipe-D-bad-pixel-format-y-tiled-gen12-rc-ccs 597 - kms_ccs@pipe-D-bad-pixel-format-y-tiled-gen12-rc-ccs-cc 598 - kms_ccs@pipe-D-bad-pixel-format-y-tiled-gen12-mc-ccs 599 - kms_ccs@pipe-D-bad-pixel-format-4-tiled-dg2-rc-ccs 600 - kms_ccs@pipe-D-bad-pixel-format-4-tiled-dg2-mc-ccs 601 - kms_ccs@pipe-D-bad-pixel-format-4-tiled-dg2-rc-ccs-cc 602 - kms_ccs@pipe-D-bad-pixel-format-4-tiled-mtl-rc-ccs 603 - kms_ccs@pipe-D-bad-pixel-format-4-tiled-mtl-mc-ccs 604 - kms_ccs@pipe-D-bad-pixel-format-4-tiled-mtl-rc-ccs-cc 605 - kms_ccs@pipe-D-bad-rotation-90-y-tiled-ccs 606 - kms_ccs@pipe-D-bad-rotation-90-yf-tiled-ccs 607 - kms_ccs@pipe-D-bad-rotation-90-y-tiled-gen12-rc-ccs 608 - kms_ccs@pipe-D-bad-rotation-90-y-tiled-gen12-rc-ccs-cc 609 - kms_ccs@pipe-D-bad-rotation-90-y-tiled-gen12-mc-ccs 610 - kms_ccs@pipe-D-bad-rotation-90-4-tiled-dg2-rc-ccs 611 - kms_ccs@pipe-D-bad-rotation-90-4-tiled-dg2-mc-ccs 612 - kms_ccs@pipe-D-bad-rotation-90-4-tiled-dg2-rc-ccs-cc 613 - kms_ccs@pipe-D-bad-rotation-90-4-tiled-mtl-rc-ccs 614 - kms_ccs@pipe-D-bad-rotation-90-4-tiled-mtl-mc-ccs 615 - kms_ccs@pipe-D-bad-rotation-90-4-tiled-mtl-rc-ccs-cc 616 - kms_ccs@pipe-D-crc-primary-basic-y-tiled-ccs 617 - kms_ccs@pipe-D-crc-primary-basic-yf-tiled-ccs 618 - kms_ccs@pipe-D-crc-primary-basic-y-tiled-gen12-rc-ccs 619 - kms_ccs@pipe-D-crc-primary-basic-y-tiled-gen12-rc-ccs-cc 620 - kms_ccs@pipe-D-crc-primary-basic-y-tiled-gen12-mc-ccs 621 - kms_ccs@pipe-D-crc-primary-basic-4-tiled-dg2-rc-ccs 622 - kms_ccs@pipe-D-crc-primary-basic-4-tiled-dg2-mc-ccs 623 - kms_ccs@pipe-D-crc-primary-basic-4-tiled-dg2-rc-ccs-cc 624 - kms_ccs@pipe-D-crc-primary-basic-4-tiled-mtl-rc-ccs 625 - kms_ccs@pipe-D-crc-primary-basic-4-tiled-mtl-mc-ccs 626 - kms_ccs@pipe-D-crc-primary-basic-4-tiled-mtl-rc-ccs-cc 627 - kms_ccs@pipe-D-crc-primary-rotation-180-y-tiled-ccs 628 - kms_ccs@pipe-D-crc-primary-rotation-180-yf-tiled-ccs 629 - kms_ccs@pipe-D-crc-primary-rotation-180-y-tiled-gen12-rc-ccs 630 - kms_ccs@pipe-D-crc-primary-rotation-180-y-tiled-gen12-rc-ccs-cc 631 - kms_ccs@pipe-D-crc-primary-rotation-180-y-tiled-gen12-mc-ccs 632 - kms_ccs@pipe-D-crc-primary-rotation-180-4-tiled-dg2-rc-ccs 633 - kms_ccs@pipe-D-crc-primary-rotation-180-4-tiled-dg2-mc-ccs 634 - kms_ccs@pipe-D-crc-primary-rotation-180-4-tiled-dg2-rc-ccs-cc 635 - kms_ccs@pipe-D-crc-primary-rotation-180-4-tiled-mtl-rc-ccs 636 - kms_ccs@pipe-D-crc-primary-rotation-180-4-tiled-mtl-mc-ccs 637 - kms_ccs@pipe-D-crc-primary-rotation-180-4-tiled-mtl-rc-ccs-cc 638 - kms_ccs@pipe-D-random-ccs-data-y-tiled-ccs 639 - kms_ccs@pipe-D-random-ccs-data-yf-tiled-ccs 640 - kms_ccs@pipe-D-random-ccs-data-y-tiled-gen12-rc-ccs 641 - kms_ccs@pipe-D-random-ccs-data-y-tiled-gen12-rc-ccs-cc 642 - kms_ccs@pipe-D-random-ccs-data-y-tiled-gen12-mc-ccs 643 - kms_ccs@pipe-D-random-ccs-data-4-tiled-dg2-rc-ccs 644 - kms_ccs@pipe-D-random-ccs-data-4-tiled-dg2-mc-ccs 645 - kms_ccs@pipe-D-random-ccs-data-4-tiled-dg2-rc-ccs-cc 646 - kms_ccs@pipe-D-random-ccs-data-4-tiled-mtl-rc-ccs 647 - kms_ccs@pipe-D-random-ccs-data-4-tiled-mtl-mc-ccs 648 - kms_ccs@pipe-D-random-ccs-data-4-tiled-mtl-rc-ccs-cc 649 - kms_ccs@pipe-D-missing-ccs-buffer-y-tiled-ccs 650 - kms_ccs@pipe-D-missing-ccs-buffer-yf-tiled-ccs 651 - kms_ccs@pipe-D-missing-ccs-buffer-y-tiled-gen12-rc-ccs 652 - kms_ccs@pipe-D-missing-ccs-buffer-y-tiled-gen12-rc-ccs-cc 653 - kms_ccs@pipe-D-missing-ccs-buffer-y-tiled-gen12-mc-ccs 654 - kms_ccs@pipe-D-missing-ccs-buffer-4-tiled-mtl-rc-ccs 655 - kms_ccs@pipe-D-missing-ccs-buffer-4-tiled-mtl-mc-ccs 656 - kms_ccs@pipe-D-missing-ccs-buffer-4-tiled-mtl-rc-ccs-cc 657 - kms_ccs@pipe-D-ccs-on-another-bo-y-tiled-ccs 658 - kms_ccs@pipe-D-ccs-on-another-bo-yf-tiled-ccs 659 - kms_ccs@pipe-D-ccs-on-another-bo-y-tiled-gen12-rc-ccs 660 - kms_ccs@pipe-D-ccs-on-another-bo-y-tiled-gen12-rc-ccs-cc 661 - kms_ccs@pipe-D-ccs-on-another-bo-y-tiled-gen12-mc-ccs 662 - kms_ccs@pipe-D-ccs-on-another-bo-4-tiled-mtl-rc-ccs 663 - kms_ccs@pipe-D-ccs-on-another-bo-4-tiled-mtl-mc-ccs 664 - kms_ccs@pipe-D-ccs-on-another-bo-4-tiled-mtl-rc-ccs-cc 665 - kms_ccs@pipe-D-bad-aux-stride-y-tiled-ccs 666 - kms_ccs@pipe-D-bad-aux-stride-yf-tiled-ccs 667 - kms_ccs@pipe-D-bad-aux-stride-y-tiled-gen12-rc-ccs 668 - kms_ccs@pipe-D-bad-aux-stride-y-tiled-gen12-rc-ccs-cc 669 - kms_ccs@pipe-D-bad-aux-stride-y-tiled-gen12-mc-ccs 670 - kms_ccs@pipe-D-bad-aux-stride-4-tiled-mtl-rc-ccs 671 - kms_ccs@pipe-D-bad-aux-stride-4-tiled-mtl-mc-ccs 672 - kms_ccs@pipe-D-bad-aux-stride-4-tiled-mtl-rc-ccs-cc 673 - kms_ccs@pipe-D-crc-sprite-planes-basic-y-tiled-ccs 674 - kms_ccs@pipe-D-crc-sprite-planes-basic-yf-tiled-ccs 675 - kms_ccs@pipe-D-crc-sprite-planes-basic-y-tiled-gen12-rc-ccs 676 - kms_ccs@pipe-D-crc-sprite-planes-basic-y-tiled-gen12-rc-ccs-cc 677 - kms_ccs@pipe-D-crc-sprite-planes-basic-y-tiled-gen12-mc-ccs 678 - kms_ccs@pipe-D-crc-sprite-planes-basic-4-tiled-dg2-rc-ccs 679 - kms_ccs@pipe-D-crc-sprite-planes-basic-4-tiled-dg2-mc-ccs 680 - kms_ccs@pipe-D-crc-sprite-planes-basic-4-tiled-dg2-rc-ccs-cc 681 - kms_ccs@pipe-D-crc-sprite-planes-basic-4-tiled-mtl-rc-ccs 682 - kms_ccs@pipe-D-crc-sprite-planes-basic-4-tiled-mtl-mc-ccs 683 - kms_ccs@pipe-D-crc-sprite-planes-basic-4-tiled-mtl-rc-ccs-cc 684 - kms_ccs@pipe-E-bad-pixel-format-y-tiled-ccs 685 - kms_ccs@pipe-E-bad-pixel-format-yf-tiled-ccs 686 - kms_ccs@pipe-E-bad-pixel-format-y-tiled-gen12-rc-ccs 687 - kms_ccs@pipe-E-bad-pixel-format-y-tiled-gen12-rc-ccs-cc 688 - kms_ccs@pipe-E-bad-pixel-format-y-tiled-gen12-mc-ccs 689 - kms_ccs@pipe-E-bad-pixel-format-4-tiled-dg2-rc-ccs 690 - kms_ccs@pipe-E-bad-pixel-format-4-tiled-dg2-mc-ccs 691 - kms_ccs@pipe-E-bad-pixel-format-4-tiled-dg2-rc-ccs-cc 692 - kms_ccs@pipe-E-bad-pixel-format-4-tiled-mtl-rc-ccs 693 - kms_ccs@pipe-E-bad-pixel-format-4-tiled-mtl-mc-ccs 694 - kms_ccs@pipe-E-bad-pixel-format-4-tiled-mtl-rc-ccs-cc 695 - kms_ccs@pipe-E-bad-rotation-90-y-tiled-ccs 696 - kms_ccs@pipe-E-bad-rotation-90-yf-tiled-ccs 697 - kms_ccs@pipe-E-bad-rotation-90-y-tiled-gen12-rc-ccs 698 - kms_ccs@pipe-E-bad-rotation-90-y-tiled-gen12-rc-ccs-cc 699 - kms_ccs@pipe-E-bad-rotation-90-y-tiled-gen12-mc-ccs 700 - kms_ccs@pipe-E-bad-rotation-90-4-tiled-dg2-rc-ccs 701 - kms_ccs@pipe-E-bad-rotation-90-4-tiled-dg2-mc-ccs 702 - kms_ccs@pipe-E-bad-rotation-90-4-tiled-dg2-rc-ccs-cc 703 - kms_ccs@pipe-E-bad-rotation-90-4-tiled-mtl-rc-ccs 704 - kms_ccs@pipe-E-bad-rotation-90-4-tiled-mtl-mc-ccs 705 - kms_ccs@pipe-E-bad-rotation-90-4-tiled-mtl-rc-ccs-cc 706 - kms_ccs@pipe-E-crc-primary-basic-y-tiled-ccs 707 - kms_ccs@pipe-E-crc-primary-basic-yf-tiled-ccs 708 - kms_ccs@pipe-E-crc-primary-basic-y-tiled-gen12-rc-ccs 709 - kms_ccs@pipe-E-crc-primary-basic-y-tiled-gen12-rc-ccs-cc 710 - kms_ccs@pipe-E-crc-primary-basic-y-tiled-gen12-mc-ccs 711 - kms_ccs@pipe-E-crc-primary-basic-4-tiled-dg2-rc-ccs 712 - kms_ccs@pipe-E-crc-primary-basic-4-tiled-dg2-mc-ccs 713 - kms_ccs@pipe-E-crc-primary-basic-4-tiled-dg2-rc-ccs-cc 714 - kms_ccs@pipe-E-crc-primary-basic-4-tiled-mtl-rc-ccs 715 - kms_ccs@pipe-E-crc-primary-basic-4-tiled-mtl-mc-ccs 716 - kms_ccs@pipe-E-crc-primary-basic-4-tiled-mtl-rc-ccs-cc 717 - kms_ccs@pipe-E-crc-primary-rotation-180-y-tiled-ccs 718 - kms_ccs@pipe-E-crc-primary-rotation-180-yf-tiled-ccs 719 - kms_ccs@pipe-E-crc-primary-rotation-180-y-tiled-gen12-rc-ccs 720 - kms_ccs@pipe-E-crc-primary-rotation-180-y-tiled-gen12-rc-ccs-cc 721 - kms_ccs@pipe-E-crc-primary-rotation-180-y-tiled-gen12-mc-ccs 722 - kms_ccs@pipe-E-crc-primary-rotation-180-4-tiled-dg2-rc-ccs 723 - kms_ccs@pipe-E-crc-primary-rotation-180-4-tiled-dg2-mc-ccs 724 - kms_ccs@pipe-E-crc-primary-rotation-180-4-tiled-dg2-rc-ccs-cc 725 - kms_ccs@pipe-E-crc-primary-rotation-180-4-tiled-mtl-rc-ccs 726 - kms_ccs@pipe-E-crc-primary-rotation-180-4-tiled-mtl-mc-ccs 727 - kms_ccs@pipe-E-crc-primary-rotation-180-4-tiled-mtl-rc-ccs-cc 728 - kms_ccs@pipe-E-random-ccs-data-y-tiled-ccs 729 - kms_ccs@pipe-E-random-ccs-data-yf-tiled-ccs 730 - kms_ccs@pipe-E-random-ccs-data-y-tiled-gen12-rc-ccs 731 - kms_ccs@pipe-E-random-ccs-data-y-tiled-gen12-rc-ccs-cc 732 - kms_ccs@pipe-E-random-ccs-data-y-tiled-gen12-mc-ccs 733 - kms_ccs@pipe-E-random-ccs-data-4-tiled-dg2-rc-ccs 734 - kms_ccs@pipe-E-random-ccs-data-4-tiled-dg2-mc-ccs 735 - kms_ccs@pipe-E-random-ccs-data-4-tiled-dg2-rc-ccs-cc 736 - kms_ccs@pipe-E-random-ccs-data-4-tiled-mtl-rc-ccs 737 - kms_ccs@pipe-E-random-ccs-data-4-tiled-mtl-mc-ccs 738 - kms_ccs@pipe-E-random-ccs-data-4-tiled-mtl-rc-ccs-cc 739 - kms_ccs@pipe-E-missing-ccs-buffer-y-tiled-ccs 740 - kms_ccs@pipe-E-missing-ccs-buffer-yf-tiled-ccs 741 - kms_ccs@pipe-E-missing-ccs-buffer-y-tiled-gen12-rc-ccs 742 - kms_ccs@pipe-E-missing-ccs-buffer-y-tiled-gen12-rc-ccs-cc 743 - kms_ccs@pipe-E-missing-ccs-buffer-y-tiled-gen12-mc-ccs 744 - kms_ccs@pipe-E-missing-ccs-buffer-4-tiled-mtl-rc-ccs 745 - kms_ccs@pipe-E-missing-ccs-buffer-4-tiled-mtl-mc-ccs 746 - kms_ccs@pipe-E-missing-ccs-buffer-4-tiled-mtl-rc-ccs-cc 747 - kms_ccs@pipe-E-ccs-on-another-bo-y-tiled-ccs 748 - kms_ccs@pipe-E-ccs-on-another-bo-yf-tiled-ccs 749 - kms_ccs@pipe-E-ccs-on-another-bo-y-tiled-gen12-rc-ccs 750 - kms_ccs@pipe-E-ccs-on-another-bo-y-tiled-gen12-rc-ccs-cc 751 - kms_ccs@pipe-E-ccs-on-another-bo-y-tiled-gen12-mc-ccs 752 - kms_ccs@pipe-E-ccs-on-another-bo-4-tiled-mtl-rc-ccs 753 - kms_ccs@pipe-E-ccs-on-another-bo-4-tiled-mtl-mc-ccs 754 - kms_ccs@pipe-E-ccs-on-another-bo-4-tiled-mtl-rc-ccs-cc 755 - kms_ccs@pipe-E-bad-aux-stride-y-tiled-ccs 756 - kms_ccs@pipe-E-bad-aux-stride-yf-tiled-ccs 757 - kms_ccs@pipe-E-bad-aux-stride-y-tiled-gen12-rc-ccs 758 - kms_ccs@pipe-E-bad-aux-stride-y-tiled-gen12-rc-ccs-cc 759 - kms_ccs@pipe-E-bad-aux-stride-y-tiled-gen12-mc-ccs 760 - kms_ccs@pipe-E-bad-aux-stride-4-tiled-mtl-rc-ccs 761 - kms_ccs@pipe-E-bad-aux-stride-4-tiled-mtl-mc-ccs 762 - kms_ccs@pipe-E-bad-aux-stride-4-tiled-mtl-rc-ccs-cc 763 - kms_ccs@pipe-E-crc-sprite-planes-basic-y-tiled-ccs 764 - kms_ccs@pipe-E-crc-sprite-planes-basic-yf-tiled-ccs 765 - kms_ccs@pipe-E-crc-sprite-planes-basic-y-tiled-gen12-rc-ccs 766 - kms_ccs@pipe-E-crc-sprite-planes-basic-y-tiled-gen12-rc-ccs-cc 767 - kms_ccs@pipe-E-crc-sprite-planes-basic-y-tiled-gen12-mc-ccs 768 - kms_ccs@pipe-E-crc-sprite-planes-basic-4-tiled-dg2-rc-ccs 769 - kms_ccs@pipe-E-crc-sprite-planes-basic-4-tiled-dg2-mc-ccs 770 - kms_ccs@pipe-E-crc-sprite-planes-basic-4-tiled-dg2-rc-ccs-cc 771 - kms_ccs@pipe-E-crc-sprite-planes-basic-4-tiled-mtl-rc-ccs 772 - kms_ccs@pipe-E-crc-sprite-planes-basic-4-tiled-mtl-mc-ccs 773 - kms_ccs@pipe-E-crc-sprite-planes-basic-4-tiled-mtl-rc-ccs-cc 774 - kms_ccs@pipe-F-bad-pixel-format-y-tiled-ccs 775 - kms_ccs@pipe-F-bad-pixel-format-yf-tiled-ccs 776 - kms_ccs@pipe-F-bad-pixel-format-y-tiled-gen12-rc-ccs 777 - kms_ccs@pipe-F-bad-pixel-format-y-tiled-gen12-rc-ccs-cc 778 - kms_ccs@pipe-F-bad-pixel-format-y-tiled-gen12-mc-ccs 779 - kms_ccs@pipe-F-bad-pixel-format-4-tiled-dg2-rc-ccs 780 - kms_ccs@pipe-F-bad-pixel-format-4-tiled-dg2-mc-ccs 781 - kms_ccs@pipe-F-bad-pixel-format-4-tiled-dg2-rc-ccs-cc 782 - kms_ccs@pipe-F-bad-pixel-format-4-tiled-mtl-rc-ccs 783 - kms_ccs@pipe-F-bad-pixel-format-4-tiled-mtl-mc-ccs 784 - kms_ccs@pipe-F-bad-pixel-format-4-tiled-mtl-rc-ccs-cc 785 - kms_ccs@pipe-F-bad-rotation-90-y-tiled-ccs 786 - kms_ccs@pipe-F-bad-rotation-90-yf-tiled-ccs 787 - kms_ccs@pipe-F-bad-rotation-90-y-tiled-gen12-rc-ccs 788 - kms_ccs@pipe-F-bad-rotation-90-y-tiled-gen12-rc-ccs-cc 789 - kms_ccs@pipe-F-bad-rotation-90-y-tiled-gen12-mc-ccs 790 - kms_ccs@pipe-F-bad-rotation-90-4-tiled-dg2-rc-ccs 791 - kms_ccs@pipe-F-bad-rotation-90-4-tiled-dg2-mc-ccs 792 - kms_ccs@pipe-F-bad-rotation-90-4-tiled-dg2-rc-ccs-cc 793 - kms_ccs@pipe-F-bad-rotation-90-4-tiled-mtl-rc-ccs 794 - kms_ccs@pipe-F-bad-rotation-90-4-tiled-mtl-mc-ccs 795 - kms_ccs@pipe-F-bad-rotation-90-4-tiled-mtl-rc-ccs-cc 796 - kms_ccs@pipe-F-crc-primary-basic-y-tiled-ccs 797 - kms_ccs@pipe-F-crc-primary-basic-yf-tiled-ccs 798 - kms_ccs@pipe-F-crc-primary-basic-y-tiled-gen12-rc-ccs 799 - kms_ccs@pipe-F-crc-primary-basic-y-tiled-gen12-rc-ccs-cc 800 - kms_ccs@pipe-F-crc-primary-basic-y-tiled-gen12-mc-ccs 801 - kms_ccs@pipe-F-crc-primary-basic-4-tiled-dg2-rc-ccs 802 - kms_ccs@pipe-F-crc-primary-basic-4-tiled-dg2-mc-ccs 803 - kms_ccs@pipe-F-crc-primary-basic-4-tiled-dg2-rc-ccs-cc 804 - kms_ccs@pipe-F-crc-primary-basic-4-tiled-mtl-rc-ccs 805 - kms_ccs@pipe-F-crc-primary-basic-4-tiled-mtl-mc-ccs 806 - kms_ccs@pipe-F-crc-primary-basic-4-tiled-mtl-rc-ccs-cc 807 - kms_ccs@pipe-F-crc-primary-rotation-180-y-tiled-ccs 808 - kms_ccs@pipe-F-crc-primary-rotation-180-yf-tiled-ccs 809 - kms_ccs@pipe-F-crc-primary-rotation-180-y-tiled-gen12-rc-ccs 810 - kms_ccs@pipe-F-crc-primary-rotation-180-y-tiled-gen12-rc-ccs-cc 811 - kms_ccs@pipe-F-crc-primary-rotation-180-y-tiled-gen12-mc-ccs 812 - kms_ccs@pipe-F-crc-primary-rotation-180-4-tiled-dg2-rc-ccs 813 - kms_ccs@pipe-F-crc-primary-rotation-180-4-tiled-dg2-mc-ccs 814 - kms_ccs@pipe-F-crc-primary-rotation-180-4-tiled-dg2-rc-ccs-cc 815 - kms_ccs@pipe-F-crc-primary-rotation-180-4-tiled-mtl-rc-ccs 816 - kms_ccs@pipe-F-crc-primary-rotation-180-4-tiled-mtl-mc-ccs 817 - kms_ccs@pipe-F-crc-primary-rotation-180-4-tiled-mtl-rc-ccs-cc 818 - kms_ccs@pipe-F-random-ccs-data-y-tiled-ccs 819 - kms_ccs@pipe-F-random-ccs-data-yf-tiled-ccs 820 - kms_ccs@pipe-F-random-ccs-data-y-tiled-gen12-rc-ccs 821 - kms_ccs@pipe-F-random-ccs-data-y-tiled-gen12-rc-ccs-cc 822 - kms_ccs@pipe-F-random-ccs-data-y-tiled-gen12-mc-ccs 823 - kms_ccs@pipe-F-random-ccs-data-4-tiled-dg2-rc-ccs 824 - kms_ccs@pipe-F-random-ccs-data-4-tiled-dg2-mc-ccs 825 - kms_ccs@pipe-F-random-ccs-data-4-tiled-dg2-rc-ccs-cc 826 - kms_ccs@pipe-F-random-ccs-data-4-tiled-mtl-rc-ccs 827 - kms_ccs@pipe-F-random-ccs-data-4-tiled-mtl-mc-ccs 828 - kms_ccs@pipe-F-random-ccs-data-4-tiled-mtl-rc-ccs-cc 829 - kms_ccs@pipe-F-missing-ccs-buffer-y-tiled-ccs 830 - kms_ccs@pipe-F-missing-ccs-buffer-yf-tiled-ccs 831 - kms_ccs@pipe-F-missing-ccs-buffer-y-tiled-gen12-rc-ccs 832 - kms_ccs@pipe-F-missing-ccs-buffer-y-tiled-gen12-rc-ccs-cc 833 - kms_ccs@pipe-F-missing-ccs-buffer-y-tiled-gen12-mc-ccs 834 - kms_ccs@pipe-F-missing-ccs-buffer-4-tiled-mtl-rc-ccs 835 - kms_ccs@pipe-F-missing-ccs-buffer-4-tiled-mtl-mc-ccs 836 - kms_ccs@pipe-F-missing-ccs-buffer-4-tiled-mtl-rc-ccs-cc 837 - kms_ccs@pipe-F-ccs-on-another-bo-y-tiled-ccs 838 - kms_ccs@pipe-F-ccs-on-another-bo-yf-tiled-ccs 839 - kms_ccs@pipe-F-ccs-on-another-bo-y-tiled-gen12-rc-ccs 840 - kms_ccs@pipe-F-ccs-on-another-bo-y-tiled-gen12-rc-ccs-cc 841 - kms_ccs@pipe-F-ccs-on-another-bo-y-tiled-gen12-mc-ccs 842 - kms_ccs@pipe-F-ccs-on-another-bo-4-tiled-mtl-rc-ccs 843 - kms_ccs@pipe-F-ccs-on-another-bo-4-tiled-mtl-mc-ccs 844 - kms_ccs@pipe-F-ccs-on-another-bo-4-tiled-mtl-rc-ccs-cc 845 - kms_ccs@pipe-F-bad-aux-stride-y-tiled-ccs 846 - kms_ccs@pipe-F-bad-aux-stride-yf-tiled-ccs 847 - kms_ccs@pipe-F-bad-aux-stride-y-tiled-gen12-rc-ccs 848 - kms_ccs@pipe-F-bad-aux-stride-y-tiled-gen12-rc-ccs-cc 849 - kms_ccs@pipe-F-bad-aux-stride-y-tiled-gen12-mc-ccs 850 - kms_ccs@pipe-F-bad-aux-stride-4-tiled-mtl-rc-ccs 851 - kms_ccs@pipe-F-bad-aux-stride-4-tiled-mtl-mc-ccs 852 - kms_ccs@pipe-F-bad-aux-stride-4-tiled-mtl-rc-ccs-cc 853 - kms_ccs@pipe-F-crc-sprite-planes-basic-y-tiled-ccs 854 - kms_ccs@pipe-F-crc-sprite-planes-basic-yf-tiled-ccs 855 - kms_ccs@pipe-F-crc-sprite-planes-basic-y-tiled-gen12-rc-ccs 856 - kms_ccs@pipe-F-crc-sprite-planes-basic-y-tiled-gen12-rc-ccs-cc 857 - kms_ccs@pipe-F-crc-sprite-planes-basic-y-tiled-gen12-mc-ccs 858 - kms_ccs@pipe-F-crc-sprite-planes-basic-4-tiled-dg2-rc-ccs 859 - kms_ccs@pipe-F-crc-sprite-planes-basic-4-tiled-dg2-mc-ccs 860 - kms_ccs@pipe-F-crc-sprite-planes-basic-4-tiled-dg2-rc-ccs-cc 861 - kms_ccs@pipe-F-crc-sprite-planes-basic-4-tiled-mtl-rc-ccs 862 - kms_ccs@pipe-F-crc-sprite-planes-basic-4-tiled-mtl-mc-ccs 863 - kms_ccs@pipe-F-crc-sprite-planes-basic-4-tiled-mtl-rc-ccs-cc 864 - kms_ccs@pipe-G-bad-pixel-format-y-tiled-ccs 865 - kms_ccs@pipe-G-bad-pixel-format-yf-tiled-ccs 866 - kms_ccs@pipe-G-bad-pixel-format-y-tiled-gen12-rc-ccs 867 - kms_ccs@pipe-G-bad-pixel-format-y-tiled-gen12-rc-ccs-cc 868 - kms_ccs@pipe-G-bad-pixel-format-y-tiled-gen12-mc-ccs 869 - kms_ccs@pipe-G-bad-pixel-format-4-tiled-dg2-rc-ccs 870 - kms_ccs@pipe-G-bad-pixel-format-4-tiled-dg2-mc-ccs 871 - kms_ccs@pipe-G-bad-pixel-format-4-tiled-dg2-rc-ccs-cc 872 - kms_ccs@pipe-G-bad-pixel-format-4-tiled-mtl-rc-ccs 873 - kms_ccs@pipe-G-bad-pixel-format-4-tiled-mtl-mc-ccs 874 - kms_ccs@pipe-G-bad-pixel-format-4-tiled-mtl-rc-ccs-cc 875 - kms_ccs@pipe-G-bad-rotation-90-y-tiled-ccs 876 - kms_ccs@pipe-G-bad-rotation-90-yf-tiled-ccs 877 - kms_ccs@pipe-G-bad-rotation-90-y-tiled-gen12-rc-ccs 878 - kms_ccs@pipe-G-bad-rotation-90-y-tiled-gen12-rc-ccs-cc 879 - kms_ccs@pipe-G-bad-rotation-90-y-tiled-gen12-mc-ccs 880 - kms_ccs@pipe-G-bad-rotation-90-4-tiled-dg2-rc-ccs 881 - kms_ccs@pipe-G-bad-rotation-90-4-tiled-dg2-mc-ccs 882 - kms_ccs@pipe-G-bad-rotation-90-4-tiled-dg2-rc-ccs-cc 883 - kms_ccs@pipe-G-bad-rotation-90-4-tiled-mtl-rc-ccs 884 - kms_ccs@pipe-G-bad-rotation-90-4-tiled-mtl-mc-ccs 885 - kms_ccs@pipe-G-bad-rotation-90-4-tiled-mtl-rc-ccs-cc 886 - kms_ccs@pipe-G-crc-primary-basic-y-tiled-ccs 887 - kms_ccs@pipe-G-crc-primary-basic-yf-tiled-ccs 888 - kms_ccs@pipe-G-crc-primary-basic-y-tiled-gen12-rc-ccs 889 - kms_ccs@pipe-G-crc-primary-basic-y-tiled-gen12-rc-ccs-cc 890 - kms_ccs@pipe-G-crc-primary-basic-y-tiled-gen12-mc-ccs 891 - kms_ccs@pipe-G-crc-primary-basic-4-tiled-dg2-rc-ccs 892 - kms_ccs@pipe-G-crc-primary-basic-4-tiled-dg2-mc-ccs 893 - kms_ccs@pipe-G-crc-primary-basic-4-tiled-dg2-rc-ccs-cc 894 - kms_ccs@pipe-G-crc-primary-basic-4-tiled-mtl-rc-ccs 895 - kms_ccs@pipe-G-crc-primary-basic-4-tiled-mtl-mc-ccs 896 - kms_ccs@pipe-G-crc-primary-basic-4-tiled-mtl-rc-ccs-cc 897 - kms_ccs@pipe-G-crc-primary-rotation-180-y-tiled-ccs 898 - kms_ccs@pipe-G-crc-primary-rotation-180-yf-tiled-ccs 899 - kms_ccs@pipe-G-crc-primary-rotation-180-y-tiled-gen12-rc-ccs 900 - kms_ccs@pipe-G-crc-primary-rotation-180-y-tiled-gen12-rc-ccs-cc 901 - kms_ccs@pipe-G-crc-primary-rotation-180-y-tiled-gen12-mc-ccs 902 - kms_ccs@pipe-G-crc-primary-rotation-180-4-tiled-dg2-rc-ccs 903 - kms_ccs@pipe-G-crc-primary-rotation-180-4-tiled-dg2-mc-ccs 904 - kms_ccs@pipe-G-crc-primary-rotation-180-4-tiled-dg2-rc-ccs-cc 905 - kms_ccs@pipe-G-crc-primary-rotation-180-4-tiled-mtl-rc-ccs 906 - kms_ccs@pipe-G-crc-primary-rotation-180-4-tiled-mtl-mc-ccs 907 - kms_ccs@pipe-G-crc-primary-rotation-180-4-tiled-mtl-rc-ccs-cc 908 - kms_ccs@pipe-G-random-ccs-data-y-tiled-ccs 909 - kms_ccs@pipe-G-random-ccs-data-yf-tiled-ccs 910 - kms_ccs@pipe-G-random-ccs-data-y-tiled-gen12-rc-ccs 911 - kms_ccs@pipe-G-random-ccs-data-y-tiled-gen12-rc-ccs-cc 912 - kms_ccs@pipe-G-random-ccs-data-y-tiled-gen12-mc-ccs 913 - kms_ccs@pipe-G-random-ccs-data-4-tiled-dg2-rc-ccs 914 - kms_ccs@pipe-G-random-ccs-data-4-tiled-dg2-mc-ccs 915 - kms_ccs@pipe-G-random-ccs-data-4-tiled-dg2-rc-ccs-cc 916 - kms_ccs@pipe-G-random-ccs-data-4-tiled-mtl-rc-ccs 917 - kms_ccs@pipe-G-random-ccs-data-4-tiled-mtl-mc-ccs 918 - kms_ccs@pipe-G-random-ccs-data-4-tiled-mtl-rc-ccs-cc 919 - kms_ccs@pipe-G-missing-ccs-buffer-y-tiled-ccs 920 - kms_ccs@pipe-G-missing-ccs-buffer-yf-tiled-ccs 921 - kms_ccs@pipe-G-missing-ccs-buffer-y-tiled-gen12-rc-ccs 922 - kms_ccs@pipe-G-missing-ccs-buffer-y-tiled-gen12-rc-ccs-cc 923 - kms_ccs@pipe-G-missing-ccs-buffer-y-tiled-gen12-mc-ccs 924 - kms_ccs@pipe-G-missing-ccs-buffer-4-tiled-mtl-rc-ccs 925 - kms_ccs@pipe-G-missing-ccs-buffer-4-tiled-mtl-mc-ccs 926 - kms_ccs@pipe-G-missing-ccs-buffer-4-tiled-mtl-rc-ccs-cc 927 - kms_ccs@pipe-G-ccs-on-another-bo-y-tiled-ccs 928 - kms_ccs@pipe-G-ccs-on-another-bo-yf-tiled-ccs 929 - kms_ccs@pipe-G-ccs-on-another-bo-y-tiled-gen12-rc-ccs 930 - kms_ccs@pipe-G-ccs-on-another-bo-y-tiled-gen12-rc-ccs-cc 931 - kms_ccs@pipe-G-ccs-on-another-bo-y-tiled-gen12-mc-ccs 932 - kms_ccs@pipe-G-ccs-on-another-bo-4-tiled-mtl-rc-ccs 933 - kms_ccs@pipe-G-ccs-on-another-bo-4-tiled-mtl-mc-ccs 934 - kms_ccs@pipe-G-ccs-on-another-bo-4-tiled-mtl-rc-ccs-cc 935 - kms_ccs@pipe-G-bad-aux-stride-y-tiled-ccs 936 - kms_ccs@pipe-G-bad-aux-stride-yf-tiled-ccs 937 - kms_ccs@pipe-G-bad-aux-stride-y-tiled-gen12-rc-ccs 938 - kms_ccs@pipe-G-bad-aux-stride-y-tiled-gen12-rc-ccs-cc 939 - kms_ccs@pipe-G-bad-aux-stride-y-tiled-gen12-mc-ccs 940 - kms_ccs@pipe-G-bad-aux-stride-4-tiled-mtl-rc-ccs 941 - kms_ccs@pipe-G-bad-aux-stride-4-tiled-mtl-mc-ccs 942 - kms_ccs@pipe-G-bad-aux-stride-4-tiled-mtl-rc-ccs-cc 943 - kms_ccs@pipe-G-crc-sprite-planes-basic-y-tiled-ccs 944 - kms_ccs@pipe-G-crc-sprite-planes-basic-yf-tiled-ccs 945 - kms_ccs@pipe-G-crc-sprite-planes-basic-y-tiled-gen12-rc-ccs 946 - kms_ccs@pipe-G-crc-sprite-planes-basic-y-tiled-gen12-rc-ccs-cc 947 - kms_ccs@pipe-G-crc-sprite-planes-basic-y-tiled-gen12-mc-ccs 948 - kms_ccs@pipe-G-crc-sprite-planes-basic-4-tiled-dg2-rc-ccs 949 - kms_ccs@pipe-G-crc-sprite-planes-basic-4-tiled-dg2-mc-ccs 950 - kms_ccs@pipe-G-crc-sprite-planes-basic-4-tiled-dg2-rc-ccs-cc 951 - kms_ccs@pipe-G-crc-sprite-planes-basic-4-tiled-mtl-rc-ccs 952 - kms_ccs@pipe-G-crc-sprite-planes-basic-4-tiled-mtl-mc-ccs 953 - kms_ccs@pipe-G-crc-sprite-planes-basic-4-tiled-mtl-rc-ccs-cc 954 - kms_ccs@pipe-H-bad-pixel-format-y-tiled-ccs 955 - kms_ccs@pipe-H-bad-pixel-format-yf-tiled-ccs 956 - kms_ccs@pipe-H-bad-pixel-format-y-tiled-gen12-rc-ccs 957 - kms_ccs@pipe-H-bad-pixel-format-y-tiled-gen12-rc-ccs-cc 958 - kms_ccs@pipe-H-bad-pixel-format-y-tiled-gen12-mc-ccs 959 - kms_ccs@pipe-H-bad-pixel-format-4-tiled-dg2-rc-ccs 960 - kms_ccs@pipe-H-bad-pixel-format-4-tiled-dg2-mc-ccs 961 - kms_ccs@pipe-H-bad-pixel-format-4-tiled-dg2-rc-ccs-cc 962 - kms_ccs@pipe-H-bad-pixel-format-4-tiled-mtl-rc-ccs 963 - kms_ccs@pipe-H-bad-pixel-format-4-tiled-mtl-mc-ccs 964 - kms_ccs@pipe-H-bad-pixel-format-4-tiled-mtl-rc-ccs-cc 965 - kms_ccs@pipe-H-bad-rotation-90-y-tiled-ccs 966 - kms_ccs@pipe-H-bad-rotation-90-yf-tiled-ccs 967 - kms_ccs@pipe-H-bad-rotation-90-y-tiled-gen12-rc-ccs 968 - kms_ccs@pipe-H-bad-rotation-90-y-tiled-gen12-rc-ccs-cc 969 - kms_ccs@pipe-H-bad-rotation-90-y-tiled-gen12-mc-ccs 970 - kms_ccs@pipe-H-bad-rotation-90-4-tiled-dg2-rc-ccs 971 - kms_ccs@pipe-H-bad-rotation-90-4-tiled-dg2-mc-ccs 972 - kms_ccs@pipe-H-bad-rotation-90-4-tiled-dg2-rc-ccs-cc 973 - kms_ccs@pipe-H-bad-rotation-90-4-tiled-mtl-rc-ccs 974 - kms_ccs@pipe-H-bad-rotation-90-4-tiled-mtl-mc-ccs 975 - kms_ccs@pipe-H-bad-rotation-90-4-tiled-mtl-rc-ccs-cc 976 - kms_ccs@pipe-H-crc-primary-basic-y-tiled-ccs 977 - kms_ccs@pipe-H-crc-primary-basic-yf-tiled-ccs 978 - kms_ccs@pipe-H-crc-primary-basic-y-tiled-gen12-rc-ccs 979 - kms_ccs@pipe-H-crc-primary-basic-y-tiled-gen12-rc-ccs-cc 980 - kms_ccs@pipe-H-crc-primary-basic-y-tiled-gen12-mc-ccs 981 - kms_ccs@pipe-H-crc-primary-basic-4-tiled-dg2-rc-ccs 982 - kms_ccs@pipe-H-crc-primary-basic-4-tiled-dg2-mc-ccs 983 - kms_ccs@pipe-H-crc-primary-basic-4-tiled-dg2-rc-ccs-cc 984 - kms_ccs@pipe-H-crc-primary-basic-4-tiled-mtl-rc-ccs 985 - kms_ccs@pipe-H-crc-primary-basic-4-tiled-mtl-mc-ccs 986 - kms_ccs@pipe-H-crc-primary-basic-4-tiled-mtl-rc-ccs-cc 987 - kms_ccs@pipe-H-crc-primary-rotation-180-y-tiled-ccs 988 - kms_ccs@pipe-H-crc-primary-rotation-180-yf-tiled-ccs 989 - kms_ccs@pipe-H-crc-primary-rotation-180-y-tiled-gen12-rc-ccs 990 - kms_ccs@pipe-H-crc-primary-rotation-180-y-tiled-gen12-rc-ccs-cc 991 - kms_ccs@pipe-H-crc-primary-rotation-180-y-tiled-gen12-mc-ccs 992 - kms_ccs@pipe-H-crc-primary-rotation-180-4-tiled-dg2-rc-ccs 993 - kms_ccs@pipe-H-crc-primary-rotation-180-4-tiled-dg2-mc-ccs 994 - kms_ccs@pipe-H-crc-primary-rotation-180-4-tiled-dg2-rc-ccs-cc 995 - kms_ccs@pipe-H-crc-primary-rotation-180-4-tiled-mtl-rc-ccs 996 - kms_ccs@pipe-H-crc-primary-rotation-180-4-tiled-mtl-mc-ccs 997 - kms_ccs@pipe-H-crc-primary-rotation-180-4-tiled-mtl-rc-ccs-cc 998 - kms_ccs@pipe-H-random-ccs-data-y-tiled-ccs 999 - kms_ccs@pipe-H-random-ccs-data-yf-tiled-ccs 1000 - kms_ccs@pipe-H-random-ccs-data-y-tiled-gen12-rc-ccs 1001 - kms_ccs@pipe-H-random-ccs-data-y-tiled-gen12-rc-ccs-cc 1002 - kms_ccs@pipe-H-random-ccs-data-y-tiled-gen12-mc-ccs 1003 - kms_ccs@pipe-H-random-ccs-data-4-tiled-dg2-rc-ccs 1004 - kms_ccs@pipe-H-random-ccs-data-4-tiled-dg2-mc-ccs 1005 - kms_ccs@pipe-H-random-ccs-data-4-tiled-dg2-rc-ccs-cc 1006 - kms_ccs@pipe-H-random-ccs-data-4-tiled-mtl-rc-ccs 1007 - kms_ccs@pipe-H-random-ccs-data-4-tiled-mtl-mc-ccs 1008 - kms_ccs@pipe-H-random-ccs-data-4-tiled-mtl-rc-ccs-cc 1009 - kms_ccs@pipe-H-missing-ccs-buffer-y-tiled-ccs 1010 - kms_ccs@pipe-H-missing-ccs-buffer-yf-tiled-ccs 1011 - kms_ccs@pipe-H-missing-ccs-buffer-y-tiled-gen12-rc-ccs 1012 - kms_ccs@pipe-H-missing-ccs-buffer-y-tiled-gen12-rc-ccs-cc 1013 - kms_ccs@pipe-H-missing-ccs-buffer-y-tiled-gen12-mc-ccs 1014 - kms_ccs@pipe-H-missing-ccs-buffer-4-tiled-mtl-rc-ccs 1015 - kms_ccs@pipe-H-missing-ccs-buffer-4-tiled-mtl-mc-ccs 1016 - kms_ccs@pipe-H-missing-ccs-buffer-4-tiled-mtl-rc-ccs-cc 1017 - kms_ccs@pipe-H-ccs-on-another-bo-y-tiled-ccs 1018 - kms_ccs@pipe-H-ccs-on-another-bo-yf-tiled-ccs 1019 - kms_ccs@pipe-H-ccs-on-another-bo-y-tiled-gen12-rc-ccs 1020 - kms_ccs@pipe-H-ccs-on-another-bo-y-tiled-gen12-rc-ccs-cc 1021 - kms_ccs@pipe-H-ccs-on-another-bo-y-tiled-gen12-mc-ccs 1022 - kms_ccs@pipe-H-ccs-on-another-bo-4-tiled-mtl-rc-ccs 1023 - kms_ccs@pipe-H-ccs-on-another-bo-4-tiled-mtl-mc-ccs 1024 - kms_ccs@pipe-H-ccs-on-another-bo-4-tiled-mtl-rc-ccs-cc 1025 - kms_ccs@pipe-H-bad-aux-stride-y-tiled-ccs 1026 - kms_ccs@pipe-H-bad-aux-stride-yf-tiled-ccs 1027 - kms_ccs@pipe-H-bad-aux-stride-y-tiled-gen12-rc-ccs 1028 - kms_ccs@pipe-H-bad-aux-stride-y-tiled-gen12-rc-ccs-cc 1029 - kms_ccs@pipe-H-bad-aux-stride-y-tiled-gen12-mc-ccs 1030 - kms_ccs@pipe-H-bad-aux-stride-4-tiled-mtl-rc-ccs 1031 - kms_ccs@pipe-H-bad-aux-stride-4-tiled-mtl-mc-ccs 1032 - kms_ccs@pipe-H-bad-aux-stride-4-tiled-mtl-rc-ccs-cc 1033 - kms_ccs@pipe-H-crc-sprite-planes-basic-y-tiled-ccs 1034 - kms_ccs@pipe-H-crc-sprite-planes-basic-yf-tiled-ccs 1035 - kms_ccs@pipe-H-crc-sprite-planes-basic-y-tiled-gen12-rc-ccs 1036 - kms_ccs@pipe-H-crc-sprite-planes-basic-y-tiled-gen12-rc-ccs-cc 1037 - kms_ccs@pipe-H-crc-sprite-planes-basic-y-tiled-gen12-mc-ccs 1038 - kms_ccs@pipe-H-crc-sprite-planes-basic-4-tiled-dg2-rc-ccs 1039 - kms_ccs@pipe-H-crc-sprite-planes-basic-4-tiled-dg2-mc-ccs 1040 - kms_ccs@pipe-H-crc-sprite-planes-basic-4-tiled-dg2-rc-ccs-cc 1041 - kms_ccs@pipe-H-crc-sprite-planes-basic-4-tiled-mtl-rc-ccs 1042 - kms_ccs@pipe-H-crc-sprite-planes-basic-4-tiled-mtl-mc-ccs 1043 - kms_ccs@pipe-H-crc-sprite-planes-basic-4-tiled-mtl-rc-ccs-cc 1044 - kms_cdclk@plane-scaling 1045 - kms_cdclk@mode-transition 1046 - kms_cdclk@mode-transition-all-outputs 1047 - kms_color@degamma 1048 - kms_color@gamma 1049 - kms_color@legacy-gamma 1050 - kms_color@legacy-gamma-reset 1051 - kms_color@ctm-red-to-blue 1052 - kms_color@ctm-green-to-red 1053 - kms_color@ctm-blue-to-red 1054 - kms_color@ctm-max 1055 - kms_color@ctm-negative 1056 - kms_color@ctm-0-25 1057 - kms_color@ctm-0-50 1058 - kms_color@ctm-0-75 1059 - kms_color@ctm-signed 1060 - kms_color@deep-color 1061 - kms_color@invalid-gamma-lut-sizes 1062 - kms_color@invalid-degamma-lut-sizes 1063 - kms_color@invalid-ctm-matrix-sizes 1064 - kms_concurrent@multi-plane-atomic-lowres 1065 - kms_content_protection@legacy 1066 - kms_content_protection@atomic 1067 - kms_content_protection@atomic-dpms 1068 - kms_content_protection@lic 1069 - kms_content_protection@type1 1070 - kms_content_protection@mei-interface 1071 - kms_content_protection@content-type-change 1072 - kms_content_protection@uevent 1073 - kms_content_protection@srm 1074 - kms_content_protection@dp-mst-type-0 1075 - kms_content_protection@dp-mst-lic-type-0 1076 - kms_content_protection@dp-mst-type-1 1077 - kms_content_protection@dp-mst-lic-type-1 1078 - kms_cursor_crc@cursor-size-change 1079 - kms_cursor_crc@cursor-alpha-opaque 1080 - kms_cursor_crc@cursor-alpha-transparent 1081 - kms_cursor_crc@cursor-dpms 1082 - kms_cursor_crc@cursor-suspend 1083 - kms_cursor_crc@cursor-onscreen-32x32 1084 - kms_cursor_crc@cursor-offscreen-32x32 1085 - kms_cursor_crc@cursor-sliding-32x32 1086 - kms_cursor_crc@cursor-random-32x32 1087 - kms_cursor_crc@cursor-rapid-movement-32x32 1088 - kms_cursor_crc@cursor-onscreen-32x10 1089 - kms_cursor_crc@cursor-offscreen-32x10 1090 - kms_cursor_crc@cursor-sliding-32x10 1091 - kms_cursor_crc@cursor-random-32x10 1092 - kms_cursor_crc@cursor-rapid-movement-32x10 1093 - kms_cursor_crc@cursor-onscreen-64x64 1094 - kms_cursor_crc@cursor-offscreen-64x64 1095 - kms_cursor_crc@cursor-sliding-64x64 1096 - kms_cursor_crc@cursor-random-64x64 1097 - kms_cursor_crc@cursor-rapid-movement-64x64 1098 - kms_cursor_crc@cursor-onscreen-64x21 1099 - kms_cursor_crc@cursor-offscreen-64x21 1100 - kms_cursor_crc@cursor-sliding-64x21 1101 - kms_cursor_crc@cursor-random-64x21 1102 - kms_cursor_crc@cursor-rapid-movement-64x21 1103 - kms_cursor_crc@cursor-onscreen-128x128 1104 - kms_cursor_crc@cursor-offscreen-128x128 1105 - kms_cursor_crc@cursor-sliding-128x128 1106 - kms_cursor_crc@cursor-random-128x128 1107 - kms_cursor_crc@cursor-rapid-movement-128x128 1108 - kms_cursor_crc@cursor-onscreen-128x42 1109 - kms_cursor_crc@cursor-offscreen-128x42 1110 - kms_cursor_crc@cursor-sliding-128x42 1111 - kms_cursor_crc@cursor-random-128x42 1112 - kms_cursor_crc@cursor-rapid-movement-128x42 1113 - kms_cursor_crc@cursor-onscreen-256x256 1114 - kms_cursor_crc@cursor-offscreen-256x256 1115 - kms_cursor_crc@cursor-sliding-256x256 1116 - kms_cursor_crc@cursor-random-256x256 1117 - kms_cursor_crc@cursor-rapid-movement-256x256 1118 - kms_cursor_crc@cursor-onscreen-256x85 1119 - kms_cursor_crc@cursor-offscreen-256x85 1120 - kms_cursor_crc@cursor-sliding-256x85 1121 - kms_cursor_crc@cursor-random-256x85 1122 - kms_cursor_crc@cursor-rapid-movement-256x85 1123 - kms_cursor_crc@cursor-onscreen-512x512 1124 - kms_cursor_crc@cursor-offscreen-512x512 1125 - kms_cursor_crc@cursor-sliding-512x512 1126 - kms_cursor_crc@cursor-random-512x512 1127 - kms_cursor_crc@cursor-rapid-movement-512x512 1128 - kms_cursor_crc@cursor-onscreen-512x170 1129 - kms_cursor_crc@cursor-offscreen-512x170 1130 - kms_cursor_crc@cursor-sliding-512x170 1131 - kms_cursor_crc@cursor-random-512x170 1132 - kms_cursor_crc@cursor-rapid-movement-512x170 1133 - kms_cursor_crc@cursor-onscreen-max-size 1134 - kms_cursor_crc@cursor-offscreen-max-size 1135 - kms_cursor_crc@cursor-sliding-max-size 1136 - kms_cursor_crc@cursor-random-max-size 1137 - kms_cursor_crc@cursor-rapid-movement-max-size 1138 - kms_cursor_legacy@single-bo 1139 - kms_cursor_legacy@single-move 1140 - kms_cursor_legacy@forked-bo 1141 - kms_cursor_legacy@forked-move 1142 - kms_cursor_legacy@torture-bo 1143 - kms_cursor_legacy@torture-move 1144 - kms_cursor_legacy@nonblocking-modeset-vs-cursor-atomic 1145 - kms_cursor_legacy@long-nonblocking-modeset-vs-cursor-atomic 1146 - kms_cursor_legacy@2x-flip-vs-cursor-legacy 1147 - kms_cursor_legacy@2x-flip-vs-cursor-atomic 1148 - kms_cursor_legacy@2x-long-flip-vs-cursor-legacy 1149 - kms_cursor_legacy@2x-long-flip-vs-cursor-atomic 1150 - kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic 1151 - kms_cursor_legacy@2x-long-nonblocking-modeset-vs-cursor-atomic 1152 - kms_cursor_legacy@2x-cursor-vs-flip-legacy 1153 - kms_cursor_legacy@2x-long-cursor-vs-flip-legacy 1154 - kms_cursor_legacy@2x-cursor-vs-flip-atomic 1155 - kms_cursor_legacy@2x-long-cursor-vs-flip-atomic 1156 - kms_cursor_legacy@flip-vs-cursor-crc-legacy 1157 - kms_cursor_legacy@flip-vs-cursor-crc-atomic 1158 - kms_cursor_legacy@flip-vs-cursor-busy-crc-legacy 1159 - kms_cursor_legacy@flip-vs-cursor-busy-crc-atomic 1160 - kms_cursor_legacy@basic-flip-before-cursor-legacy 1161 - kms_cursor_legacy@basic-busy-flip-before-cursor-legacy 1162 - kms_cursor_legacy@basic-flip-after-cursor-legacy 1163 - kms_cursor_legacy@basic-flip-before-cursor-varying-size 1164 - kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size 1165 - kms_cursor_legacy@basic-flip-after-cursor-varying-size 1166 - kms_cursor_legacy@short-flip-before-cursor-toggle 1167 - kms_cursor_legacy@short-busy-flip-before-cursor-toggle 1168 - kms_cursor_legacy@short-flip-after-cursor-toggle 1169 - kms_cursor_legacy@basic-flip-before-cursor-atomic 1170 - kms_cursor_legacy@basic-busy-flip-before-cursor-atomic 1171 - kms_cursor_legacy@basic-flip-after-cursor-atomic 1172 - kms_cursor_legacy@short-flip-before-cursor-atomic-transitions 1173 - kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions 1174 - kms_cursor_legacy@short-flip-after-cursor-atomic-transitions 1175 - kms_cursor_legacy@short-flip-before-cursor-atomic-transitions-varying-size 1176 - kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions-varying-size 1177 - kms_cursor_legacy@short-flip-after-cursor-atomic-transitions-varying-size 1178 - kms_cursor_legacy@cursor-vs-flip-legacy 1179 - kms_cursor_legacy@flip-vs-cursor-legacy 1180 - kms_cursor_legacy@cursorA-vs-flipA-legacy 1181 - kms_cursor_legacy@cursorA-vs-flipB-legacy 1182 - kms_cursor_legacy@cursorB-vs-flipA-legacy 1183 - kms_cursor_legacy@cursorB-vs-flipB-legacy 1184 - kms_cursor_legacy@cursor-vs-flip-varying-size 1185 - kms_cursor_legacy@flip-vs-cursor-varying-size 1186 - kms_cursor_legacy@cursorA-vs-flipA-varying-size 1187 - kms_cursor_legacy@cursorA-vs-flipB-varying-size 1188 - kms_cursor_legacy@cursorB-vs-flipA-varying-size 1189 - kms_cursor_legacy@cursorB-vs-flipB-varying-size 1190 - kms_cursor_legacy@cursor-vs-flip-toggle 1191 - kms_cursor_legacy@flip-vs-cursor-toggle 1192 - kms_cursor_legacy@cursorA-vs-flipA-toggle 1193 - kms_cursor_legacy@cursorA-vs-flipB-toggle 1194 - kms_cursor_legacy@cursorB-vs-flipA-toggle 1195 - kms_cursor_legacy@cursorB-vs-flipB-toggle 1196 - kms_cursor_legacy@cursor-vs-flip-atomic 1197 - kms_cursor_legacy@flip-vs-cursor-atomic 1198 - kms_cursor_legacy@cursorA-vs-flipA-atomic 1199 - kms_cursor_legacy@cursorA-vs-flipB-atomic 1200 - kms_cursor_legacy@cursorB-vs-flipA-atomic 1201 - kms_cursor_legacy@cursorB-vs-flipB-atomic 1202 - kms_cursor_legacy@cursor-vs-flip-atomic-transitions 1203 - kms_cursor_legacy@flip-vs-cursor-atomic-transitions 1204 - kms_cursor_legacy@cursorA-vs-flipA-atomic-transitions 1205 - kms_cursor_legacy@cursorA-vs-flipB-atomic-transitions 1206 - kms_cursor_legacy@cursorB-vs-flipA-atomic-transitions 1207 - kms_cursor_legacy@cursorB-vs-flipB-atomic-transitions 1208 - kms_cursor_legacy@cursor-vs-flip-atomic-transitions-varying-size 1209 - kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size 1210 - kms_cursor_legacy@cursorA-vs-flipA-atomic-transitions-varying-size 1211 - kms_cursor_legacy@cursorA-vs-flipB-atomic-transitions-varying-size 1212 - kms_cursor_legacy@cursorB-vs-flipA-atomic-transitions-varying-size 1213 - kms_cursor_legacy@cursorB-vs-flipB-atomic-transitions-varying-size 1214 - kms_dither@fb-8bpc-vs-panel-6bpc 1215 - kms_dither@fb-8bpc-vs-panel-8bpc 1216 - kms_dp_aux_dev 1217 - kms_tiled_display@basic-test-pattern 1218 - kms_tiled_display@basic-test-pattern-with-chamelium 1219 - kms_draw_crc@draw-method-mmap-cpu 1220 - kms_draw_crc@draw-method-mmap-gtt 1221 - kms_draw_crc@draw-method-mmap-wc 1222 - kms_draw_crc@draw-method-pwrite 1223 - kms_draw_crc@draw-method-blt 1224 - kms_draw_crc@draw-method-render 1225 - kms_draw_crc@fill-fb 1226 - kms_dsc@dsc-basic 1227 - kms_dsc@dsc-with-formats 1228 - kms_dsc@dsc-with-bpc 1229 - kms_dsc@dsc-with-bpc-formats 1230 - kms_dsc@dsc-with-output-formats 1231 - kms_fbcon_fbt@fbc 1232 - kms_fbcon_fbt@psr 1233 - kms_fbcon_fbt@fbc-suspend 1234 - kms_fbcon_fbt@psr-suspend 1235 - kms_fence_pin_leak 1236 - kms_flip@nonblocking-read 1237 - kms_flip@wf_vblank-ts-check 1238 - kms_flip@2x-wf_vblank-ts-check 1239 - kms_flip@blocking-wf_vblank 1240 - kms_flip@2x-blocking-wf_vblank 1241 - kms_flip@absolute-wf_vblank 1242 - kms_flip@2x-absolute-wf_vblank 1243 - kms_flip@blocking-absolute-wf_vblank 1244 - kms_flip@2x-blocking-absolute-wf_vblank 1245 - kms_flip@basic-plain-flip 1246 - kms_flip@2x-plain-flip 1247 - kms_flip@busy-flip 1248 - kms_flip@2x-busy-flip 1249 - kms_flip@flip-vs-fences 1250 - kms_flip@2x-flip-vs-fences 1251 - kms_flip@plain-flip-ts-check 1252 - kms_flip@2x-plain-flip-ts-check 1253 - kms_flip@plain-flip-fb-recreate 1254 - kms_flip@2x-plain-flip-fb-recreate 1255 - kms_flip@flip-vs-rmfb 1256 - kms_flip@2x-flip-vs-rmfb 1257 - kms_flip@basic-flip-vs-dpms 1258 - kms_flip@2x-flip-vs-dpms 1259 - kms_flip@flip-vs-panning 1260 - kms_flip@2x-flip-vs-panning 1261 - kms_flip@basic-flip-vs-modeset 1262 - kms_flip@2x-flip-vs-modeset 1263 - kms_flip@flip-vs-expired-vblank 1264 - kms_flip@2x-flip-vs-expired-vblank 1265 - kms_flip@flip-vs-absolute-wf_vblank 1266 - kms_flip@2x-flip-vs-absolute-wf_vblank 1267 - kms_flip@basic-flip-vs-wf_vblank 1268 - kms_flip@2x-flip-vs-wf_vblank 1269 - kms_flip@flip-vs-blocking-wf-vblank 1270 - kms_flip@2x-flip-vs-blocking-wf-vblank 1271 - kms_flip@flip-vs-modeset-vs-hang 1272 - kms_flip@2x-flip-vs-modeset-vs-hang 1273 - kms_flip@flip-vs-panning-vs-hang 1274 - kms_flip@2x-flip-vs-panning-vs-hang 1275 - kms_flip@flip-vs-dpms-off-vs-modeset 1276 - kms_flip@2x-flip-vs-dpms-off-vs-modeset 1277 - kms_flip@single-buffer-flip-vs-dpms-off-vs-modeset 1278 - kms_flip@2x-single-buffer-flip-vs-dpms-off-vs-modeset 1279 - kms_flip@dpms-off-confusion 1280 - kms_flip@nonexisting-fb 1281 - kms_flip@2x-nonexisting-fb 1282 - kms_flip@dpms-vs-vblank-race 1283 - kms_flip@2x-dpms-vs-vblank-race 1284 - kms_flip@modeset-vs-vblank-race 1285 - kms_flip@2x-modeset-vs-vblank-race 1286 - kms_flip@bo-too-big 1287 - kms_flip@flip-vs-suspend 1288 - kms_flip@2x-flip-vs-suspend 1289 - kms_flip@wf_vblank-ts-check-interruptible 1290 - kms_flip@2x-wf_vblank-ts-check-interruptible 1291 - kms_flip@absolute-wf_vblank-interruptible 1292 - kms_flip@2x-absolute-wf_vblank-interruptible 1293 - kms_flip@blocking-absolute-wf_vblank-interruptible 1294 - kms_flip@2x-blocking-absolute-wf_vblank-interruptible 1295 - kms_flip@plain-flip-interruptible 1296 - kms_flip@2x-plain-flip-interruptible 1297 - kms_flip@flip-vs-fences-interruptible 1298 - kms_flip@2x-flip-vs-fences-interruptible 1299 - kms_flip@plain-flip-ts-check-interruptible 1300 - kms_flip@2x-plain-flip-ts-check-interruptible 1301 - kms_flip@plain-flip-fb-recreate-interruptible 1302 - kms_flip@2x-plain-flip-fb-recreate-interruptible 1303 - kms_flip@flip-vs-rmfb-interruptible 1304 - kms_flip@2x-flip-vs-rmfb-interruptible 1305 - kms_flip@flip-vs-panning-interruptible 1306 - kms_flip@2x-flip-vs-panning-interruptible 1307 - kms_flip@flip-vs-expired-vblank-interruptible 1308 - kms_flip@2x-flip-vs-expired-vblank-interruptible 1309 - kms_flip@flip-vs-absolute-wf_vblank-interruptible 1310 - kms_flip@2x-flip-vs-absolute-wf_vblank-interruptible 1311 - kms_flip@flip-vs-wf_vblank-interruptible 1312 - kms_flip@2x-flip-vs-wf_vblank-interruptible 1313 - kms_flip@flip-vs-dpms-off-vs-modeset-interruptible 1314 - kms_flip@2x-flip-vs-dpms-off-vs-modeset-interruptible 1315 - kms_flip@single-buffer-flip-vs-dpms-off-vs-modeset-interruptible 1316 - kms_flip@2x-single-buffer-flip-vs-dpms-off-vs-modeset-interruptible 1317 - kms_flip@dpms-off-confusion-interruptible 1318 - kms_flip@nonexisting-fb-interruptible 1319 - kms_flip@2x-nonexisting-fb-interruptible 1320 - kms_flip@dpms-vs-vblank-race-interruptible 1321 - kms_flip@2x-dpms-vs-vblank-race-interruptible 1322 - kms_flip@modeset-vs-vblank-race-interruptible 1323 - kms_flip@2x-modeset-vs-vblank-race-interruptible 1324 - kms_flip@bo-too-big-interruptible 1325 - kms_flip@flip-vs-suspend-interruptible 1326 - kms_flip@2x-flip-vs-suspend-interruptible 1327 - kms_flip_event_leak@basic 1328 - kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling 1329 - kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-downscaling 1330 - kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling 1331 - kms_flip_scaled_crc@flip-32bpp-4tile-to-64bpp-4tile-downscaling 1332 - kms_flip_scaled_crc@flip-32bpp-linear-to-64bpp-linear-downscaling 1333 - kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-downscaling 1334 - kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling 1335 - kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-downscaling 1336 - kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tile-downscaling 1337 - kms_flip_scaled_crc@flip-64bpp-linear-to-32bpp-linear-downscaling 1338 - kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling 1339 - kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-downscaling 1340 - kms_flip_scaled_crc@flip-64bpp-xtile-to-16bpp-xtile-downscaling 1341 - kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-downscaling 1342 - kms_flip_scaled_crc@flip-64bpp-linear-to-16bpp-linear-downscaling 1343 - kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling 1344 - kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling 1345 - kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs-downscaling 1346 - kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling 1347 - kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-downscaling 1348 - kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-downscaling 1349 - kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs-downscaling 1350 - kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling 1351 - kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-upscaling 1352 - kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-upscaling 1353 - kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-upscaling 1354 - kms_flip_scaled_crc@flip-32bpp-4tile-to-64bpp-4tile-upscaling 1355 - kms_flip_scaled_crc@flip-32bpp-linear-to-64bpp-linear-upscaling 1356 - kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-upscaling 1357 - kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-upscaling 1358 - kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-upscaling 1359 - kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tile-upscaling 1360 - kms_flip_scaled_crc@flip-64bpp-linear-to-32bpp-linear-upscaling 1361 - kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-upscaling 1362 - kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-upscaling 1363 - kms_flip_scaled_crc@flip-64bpp-xtile-to-16bpp-xtile-upscaling 1364 - kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-upscaling 1365 - kms_flip_scaled_crc@flip-64bpp-linear-to-16bpp-linear-upscaling 1366 - kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-upscaling 1367 - kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling 1368 - kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling 1369 - kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling 1370 - kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling 1371 - kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-upscaling 1372 - kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling 1373 - kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling 1374 - kms_force_connector_basic@force-load-detect 1375 - kms_force_connector_basic@force-connector-state 1376 - kms_force_connector_basic@force-edid 1377 - kms_force_connector_basic@prune-stale-modes 1378 - kms_frontbuffer_tracking@fbc-1p-rte 1379 - kms_frontbuffer_tracking@fbc-2p-rte 1380 - kms_frontbuffer_tracking@psr-1p-rte 1381 - kms_frontbuffer_tracking@psr-2p-rte 1382 - kms_frontbuffer_tracking@fbcpsr-1p-rte 1383 - kms_frontbuffer_tracking@fbcpsr-2p-rte 1384 - kms_frontbuffer_tracking@drrs-1p-rte 1385 - kms_frontbuffer_tracking@drrs-2p-rte 1386 - kms_frontbuffer_tracking@fbcdrrs-1p-rte 1387 - kms_frontbuffer_tracking@fbcdrrs-2p-rte 1388 - kms_frontbuffer_tracking@psrdrrs-1p-rte 1389 - kms_frontbuffer_tracking@psrdrrs-2p-rte 1390 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-rte 1391 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-rte 1392 - kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-mmap-cpu 1393 - kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-mmap-gtt 1394 - kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-mmap-wc 1395 - kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-pwrite 1396 - kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-blt 1397 - kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-render 1398 - kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-mmap-cpu 1399 - kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-mmap-gtt 1400 - kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-mmap-wc 1401 - kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-pwrite 1402 - kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-blt 1403 - kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-render 1404 - kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-mmap-cpu 1405 - kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-mmap-gtt 1406 - kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-mmap-wc 1407 - kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite 1408 - kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt 1409 - kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-render 1410 - kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-cpu 1411 - kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-gtt 1412 - kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-wc 1413 - kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-pwrite 1414 - kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-blt 1415 - kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-render 1416 - kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-mmap-cpu 1417 - kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-mmap-gtt 1418 - kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-mmap-wc 1419 - kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-pwrite 1420 - kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-blt 1421 - kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-render 1422 - kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-mmap-cpu 1423 - kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-mmap-gtt 1424 - kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-mmap-wc 1425 - kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-pwrite 1426 - kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-blt 1427 - kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-render 1428 - kms_frontbuffer_tracking@fbc-2p-primscrn-pri-indfb-draw-mmap-cpu 1429 - kms_frontbuffer_tracking@fbc-2p-primscrn-pri-indfb-draw-mmap-gtt 1430 - kms_frontbuffer_tracking@fbc-2p-primscrn-pri-indfb-draw-mmap-wc 1431 - kms_frontbuffer_tracking@fbc-2p-primscrn-pri-indfb-draw-pwrite 1432 - kms_frontbuffer_tracking@fbc-2p-primscrn-pri-indfb-draw-blt 1433 - kms_frontbuffer_tracking@fbc-2p-primscrn-pri-indfb-draw-render 1434 - kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-cpu 1435 - kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-gtt 1436 - kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-wc 1437 - kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-pwrite 1438 - kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-blt 1439 - kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-render 1440 - kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-mmap-cpu 1441 - kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-mmap-gtt 1442 - kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-mmap-wc 1443 - kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-pwrite 1444 - kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-blt 1445 - kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-render 1446 - kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-mmap-cpu 1447 - kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-mmap-gtt 1448 - kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-mmap-wc 1449 - kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-pwrite 1450 - kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-blt 1451 - kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-render 1452 - kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-mmap-cpu 1453 - kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-mmap-gtt 1454 - kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-mmap-wc 1455 - kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-pwrite 1456 - kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-blt 1457 - kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-render 1458 - kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-mmap-cpu 1459 - kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-mmap-gtt 1460 - kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-mmap-wc 1461 - kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-pwrite 1462 - kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-blt 1463 - kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-render 1464 - kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-mmap-cpu 1465 - kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-mmap-gtt 1466 - kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-mmap-wc 1467 - kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-pwrite 1468 - kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-blt 1469 - kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-render 1470 - kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-cpu 1471 - kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-gtt 1472 - kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-wc 1473 - kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-pwrite 1474 - kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-blt 1475 - kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-render 1476 - kms_frontbuffer_tracking@psr-1p-primscrn-pri-indfb-draw-mmap-cpu 1477 - kms_frontbuffer_tracking@psr-1p-primscrn-pri-indfb-draw-mmap-gtt 1478 - kms_frontbuffer_tracking@psr-1p-primscrn-pri-indfb-draw-mmap-wc 1479 - kms_frontbuffer_tracking@psr-1p-primscrn-pri-indfb-draw-pwrite 1480 - kms_frontbuffer_tracking@psr-1p-primscrn-pri-indfb-draw-blt 1481 - kms_frontbuffer_tracking@psr-1p-primscrn-pri-indfb-draw-render 1482 - kms_frontbuffer_tracking@psr-1p-primscrn-pri-shrfb-draw-mmap-cpu 1483 - kms_frontbuffer_tracking@psr-1p-primscrn-pri-shrfb-draw-mmap-gtt 1484 - kms_frontbuffer_tracking@psr-1p-primscrn-pri-shrfb-draw-mmap-wc 1485 - kms_frontbuffer_tracking@psr-1p-primscrn-pri-shrfb-draw-pwrite 1486 - kms_frontbuffer_tracking@psr-1p-primscrn-pri-shrfb-draw-blt 1487 - kms_frontbuffer_tracking@psr-1p-primscrn-pri-shrfb-draw-render 1488 - kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-mmap-cpu 1489 - kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-mmap-gtt 1490 - kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-mmap-wc 1491 - kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-pwrite 1492 - kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-blt 1493 - kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-render 1494 - kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-draw-mmap-cpu 1495 - kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-draw-mmap-gtt 1496 - kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-draw-mmap-wc 1497 - kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-draw-pwrite 1498 - kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-draw-blt 1499 - kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-draw-render 1500 - kms_frontbuffer_tracking@psr-1p-offscren-pri-indfb-draw-mmap-cpu 1501 - kms_frontbuffer_tracking@psr-1p-offscren-pri-indfb-draw-mmap-gtt 1502 - kms_frontbuffer_tracking@psr-1p-offscren-pri-indfb-draw-mmap-wc 1503 - kms_frontbuffer_tracking@psr-1p-offscren-pri-indfb-draw-pwrite 1504 - kms_frontbuffer_tracking@psr-1p-offscren-pri-indfb-draw-blt 1505 - kms_frontbuffer_tracking@psr-1p-offscren-pri-indfb-draw-render 1506 - kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-mmap-cpu 1507 - kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-mmap-gtt 1508 - kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-mmap-wc 1509 - kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-pwrite 1510 - kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-blt 1511 - kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-render 1512 - kms_frontbuffer_tracking@psr-2p-primscrn-pri-indfb-draw-mmap-cpu 1513 - kms_frontbuffer_tracking@psr-2p-primscrn-pri-indfb-draw-mmap-gtt 1514 - kms_frontbuffer_tracking@psr-2p-primscrn-pri-indfb-draw-mmap-wc 1515 - kms_frontbuffer_tracking@psr-2p-primscrn-pri-indfb-draw-pwrite 1516 - kms_frontbuffer_tracking@psr-2p-primscrn-pri-indfb-draw-blt 1517 - kms_frontbuffer_tracking@psr-2p-primscrn-pri-indfb-draw-render 1518 - kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-mmap-cpu 1519 - kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-mmap-gtt 1520 - kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-mmap-wc 1521 - kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-pwrite 1522 - kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-blt 1523 - kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-render 1524 - kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-draw-mmap-cpu 1525 - kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-draw-mmap-gtt 1526 - kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-draw-mmap-wc 1527 - kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-draw-pwrite 1528 - kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-draw-blt 1529 - kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-draw-render 1530 - kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-draw-mmap-cpu 1531 - kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-draw-mmap-gtt 1532 - kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-draw-mmap-wc 1533 - kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-draw-pwrite 1534 - kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-draw-blt 1535 - kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-draw-render 1536 - kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-mmap-cpu 1537 - kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-mmap-gtt 1538 - kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-mmap-wc 1539 - kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-pwrite 1540 - kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-blt 1541 - kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-render 1542 - kms_frontbuffer_tracking@psr-2p-scndscrn-pri-shrfb-draw-mmap-cpu 1543 - kms_frontbuffer_tracking@psr-2p-scndscrn-pri-shrfb-draw-mmap-gtt 1544 - kms_frontbuffer_tracking@psr-2p-scndscrn-pri-shrfb-draw-mmap-wc 1545 - kms_frontbuffer_tracking@psr-2p-scndscrn-pri-shrfb-draw-pwrite 1546 - kms_frontbuffer_tracking@psr-2p-scndscrn-pri-shrfb-draw-blt 1547 - kms_frontbuffer_tracking@psr-2p-scndscrn-pri-shrfb-draw-render 1548 - kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-draw-mmap-cpu 1549 - kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-draw-mmap-gtt 1550 - kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-draw-mmap-wc 1551 - kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-draw-pwrite 1552 - kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-draw-blt 1553 - kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-draw-render 1554 - kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-draw-mmap-cpu 1555 - kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-draw-mmap-gtt 1556 - kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-draw-mmap-wc 1557 - kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-draw-pwrite 1558 - kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-draw-blt 1559 - kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-draw-render 1560 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-mmap-cpu 1561 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-mmap-gtt 1562 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-mmap-wc 1563 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-pwrite 1564 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-blt 1565 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-render 1566 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-mmap-cpu 1567 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-mmap-gtt 1568 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-mmap-wc 1569 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-pwrite 1570 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-blt 1571 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-render 1572 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-mmap-cpu 1573 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-mmap-gtt 1574 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-mmap-wc 1575 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-pwrite 1576 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-blt 1577 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-render 1578 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-mmap-cpu 1579 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-mmap-gtt 1580 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-mmap-wc 1581 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-pwrite 1582 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-blt 1583 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-render 1584 - kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-mmap-cpu 1585 - kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-mmap-gtt 1586 - kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-mmap-wc 1587 - kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-pwrite 1588 - kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-blt 1589 - kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-render 1590 - kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-shrfb-draw-mmap-cpu 1591 - kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-shrfb-draw-mmap-gtt 1592 - kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-shrfb-draw-mmap-wc 1593 - kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-shrfb-draw-pwrite 1594 - kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-shrfb-draw-blt 1595 - kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-shrfb-draw-render 1596 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-indfb-draw-mmap-cpu 1597 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-indfb-draw-mmap-gtt 1598 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-indfb-draw-mmap-wc 1599 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-indfb-draw-pwrite 1600 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-indfb-draw-blt 1601 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-indfb-draw-render 1602 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-shrfb-draw-mmap-cpu 1603 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-shrfb-draw-mmap-gtt 1604 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-shrfb-draw-mmap-wc 1605 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-shrfb-draw-pwrite 1606 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-shrfb-draw-blt 1607 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-shrfb-draw-render 1608 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-draw-mmap-cpu 1609 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-draw-mmap-gtt 1610 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-draw-mmap-wc 1611 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-draw-pwrite 1612 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-draw-blt 1613 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-draw-render 1614 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-mmap-cpu 1615 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-mmap-gtt 1616 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-mmap-wc 1617 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-pwrite 1618 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-blt 1619 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-render 1620 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-indfb-draw-mmap-cpu 1621 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-indfb-draw-mmap-gtt 1622 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-indfb-draw-mmap-wc 1623 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-indfb-draw-pwrite 1624 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-indfb-draw-blt 1625 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-indfb-draw-render 1626 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-shrfb-draw-mmap-cpu 1627 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-shrfb-draw-mmap-gtt 1628 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-shrfb-draw-mmap-wc 1629 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-shrfb-draw-pwrite 1630 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-shrfb-draw-blt 1631 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-shrfb-draw-render 1632 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-mmap-cpu 1633 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-mmap-gtt 1634 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-mmap-wc 1635 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-pwrite 1636 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-blt 1637 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-render 1638 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-mmap-cpu 1639 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-mmap-gtt 1640 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-mmap-wc 1641 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-pwrite 1642 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-blt 1643 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-render 1644 - kms_frontbuffer_tracking@drrs-1p-primscrn-pri-indfb-draw-mmap-cpu 1645 - kms_frontbuffer_tracking@drrs-1p-primscrn-pri-indfb-draw-mmap-gtt 1646 - kms_frontbuffer_tracking@drrs-1p-primscrn-pri-indfb-draw-mmap-wc 1647 - kms_frontbuffer_tracking@drrs-1p-primscrn-pri-indfb-draw-pwrite 1648 - kms_frontbuffer_tracking@drrs-1p-primscrn-pri-indfb-draw-blt 1649 - kms_frontbuffer_tracking@drrs-1p-primscrn-pri-indfb-draw-render 1650 - kms_frontbuffer_tracking@drrs-1p-primscrn-pri-shrfb-draw-mmap-cpu 1651 - kms_frontbuffer_tracking@drrs-1p-primscrn-pri-shrfb-draw-mmap-gtt 1652 - kms_frontbuffer_tracking@drrs-1p-primscrn-pri-shrfb-draw-mmap-wc 1653 - kms_frontbuffer_tracking@drrs-1p-primscrn-pri-shrfb-draw-pwrite 1654 - kms_frontbuffer_tracking@drrs-1p-primscrn-pri-shrfb-draw-blt 1655 - kms_frontbuffer_tracking@drrs-1p-primscrn-pri-shrfb-draw-render 1656 - kms_frontbuffer_tracking@drrs-1p-primscrn-cur-indfb-draw-mmap-cpu 1657 - kms_frontbuffer_tracking@drrs-1p-primscrn-cur-indfb-draw-mmap-gtt 1658 - kms_frontbuffer_tracking@drrs-1p-primscrn-cur-indfb-draw-mmap-wc 1659 - kms_frontbuffer_tracking@drrs-1p-primscrn-cur-indfb-draw-pwrite 1660 - kms_frontbuffer_tracking@drrs-1p-primscrn-cur-indfb-draw-blt 1661 - kms_frontbuffer_tracking@drrs-1p-primscrn-cur-indfb-draw-render 1662 - kms_frontbuffer_tracking@drrs-1p-primscrn-spr-indfb-draw-mmap-cpu 1663 - kms_frontbuffer_tracking@drrs-1p-primscrn-spr-indfb-draw-mmap-gtt 1664 - kms_frontbuffer_tracking@drrs-1p-primscrn-spr-indfb-draw-mmap-wc 1665 - kms_frontbuffer_tracking@drrs-1p-primscrn-spr-indfb-draw-pwrite 1666 - kms_frontbuffer_tracking@drrs-1p-primscrn-spr-indfb-draw-blt 1667 - kms_frontbuffer_tracking@drrs-1p-primscrn-spr-indfb-draw-render 1668 - kms_frontbuffer_tracking@drrs-1p-offscren-pri-indfb-draw-mmap-cpu 1669 - kms_frontbuffer_tracking@drrs-1p-offscren-pri-indfb-draw-mmap-gtt 1670 - kms_frontbuffer_tracking@drrs-1p-offscren-pri-indfb-draw-mmap-wc 1671 - kms_frontbuffer_tracking@drrs-1p-offscren-pri-indfb-draw-pwrite 1672 - kms_frontbuffer_tracking@drrs-1p-offscren-pri-indfb-draw-blt 1673 - kms_frontbuffer_tracking@drrs-1p-offscren-pri-indfb-draw-render 1674 - kms_frontbuffer_tracking@drrs-1p-offscren-pri-shrfb-draw-mmap-cpu 1675 - kms_frontbuffer_tracking@drrs-1p-offscren-pri-shrfb-draw-mmap-gtt 1676 - kms_frontbuffer_tracking@drrs-1p-offscren-pri-shrfb-draw-mmap-wc 1677 - kms_frontbuffer_tracking@drrs-1p-offscren-pri-shrfb-draw-pwrite 1678 - kms_frontbuffer_tracking@drrs-1p-offscren-pri-shrfb-draw-blt 1679 - kms_frontbuffer_tracking@drrs-1p-offscren-pri-shrfb-draw-render 1680 - kms_frontbuffer_tracking@drrs-2p-primscrn-pri-indfb-draw-mmap-cpu 1681 - kms_frontbuffer_tracking@drrs-2p-primscrn-pri-indfb-draw-mmap-gtt 1682 - kms_frontbuffer_tracking@drrs-2p-primscrn-pri-indfb-draw-mmap-wc 1683 - kms_frontbuffer_tracking@drrs-2p-primscrn-pri-indfb-draw-pwrite 1684 - kms_frontbuffer_tracking@drrs-2p-primscrn-pri-indfb-draw-blt 1685 - kms_frontbuffer_tracking@drrs-2p-primscrn-pri-indfb-draw-render 1686 - kms_frontbuffer_tracking@drrs-2p-primscrn-pri-shrfb-draw-mmap-cpu 1687 - kms_frontbuffer_tracking@drrs-2p-primscrn-pri-shrfb-draw-mmap-gtt 1688 - kms_frontbuffer_tracking@drrs-2p-primscrn-pri-shrfb-draw-mmap-wc 1689 - kms_frontbuffer_tracking@drrs-2p-primscrn-pri-shrfb-draw-pwrite 1690 - kms_frontbuffer_tracking@drrs-2p-primscrn-pri-shrfb-draw-blt 1691 - kms_frontbuffer_tracking@drrs-2p-primscrn-pri-shrfb-draw-render 1692 - kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-draw-mmap-cpu 1693 - kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-draw-mmap-gtt 1694 - kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-draw-mmap-wc 1695 - kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-draw-pwrite 1696 - kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-draw-blt 1697 - kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-draw-render 1698 - kms_frontbuffer_tracking@drrs-2p-primscrn-spr-indfb-draw-mmap-cpu 1699 - kms_frontbuffer_tracking@drrs-2p-primscrn-spr-indfb-draw-mmap-gtt 1700 - kms_frontbuffer_tracking@drrs-2p-primscrn-spr-indfb-draw-mmap-wc 1701 - kms_frontbuffer_tracking@drrs-2p-primscrn-spr-indfb-draw-pwrite 1702 - kms_frontbuffer_tracking@drrs-2p-primscrn-spr-indfb-draw-blt 1703 - kms_frontbuffer_tracking@drrs-2p-primscrn-spr-indfb-draw-render 1704 - kms_frontbuffer_tracking@drrs-2p-scndscrn-pri-indfb-draw-mmap-cpu 1705 - kms_frontbuffer_tracking@drrs-2p-scndscrn-pri-indfb-draw-mmap-gtt 1706 - kms_frontbuffer_tracking@drrs-2p-scndscrn-pri-indfb-draw-mmap-wc 1707 - kms_frontbuffer_tracking@drrs-2p-scndscrn-pri-indfb-draw-pwrite 1708 - kms_frontbuffer_tracking@drrs-2p-scndscrn-pri-indfb-draw-blt 1709 - kms_frontbuffer_tracking@drrs-2p-scndscrn-pri-indfb-draw-render 1710 - kms_frontbuffer_tracking@drrs-2p-scndscrn-pri-shrfb-draw-mmap-cpu 1711 - kms_frontbuffer_tracking@drrs-2p-scndscrn-pri-shrfb-draw-mmap-gtt 1712 - kms_frontbuffer_tracking@drrs-2p-scndscrn-pri-shrfb-draw-mmap-wc 1713 - kms_frontbuffer_tracking@drrs-2p-scndscrn-pri-shrfb-draw-pwrite 1714 - kms_frontbuffer_tracking@drrs-2p-scndscrn-pri-shrfb-draw-blt 1715 - kms_frontbuffer_tracking@drrs-2p-scndscrn-pri-shrfb-draw-render 1716 - kms_frontbuffer_tracking@drrs-2p-scndscrn-cur-indfb-draw-mmap-cpu 1717 - kms_frontbuffer_tracking@drrs-2p-scndscrn-cur-indfb-draw-mmap-gtt 1718 - kms_frontbuffer_tracking@drrs-2p-scndscrn-cur-indfb-draw-mmap-wc 1719 - kms_frontbuffer_tracking@drrs-2p-scndscrn-cur-indfb-draw-pwrite 1720 - kms_frontbuffer_tracking@drrs-2p-scndscrn-cur-indfb-draw-blt 1721 - kms_frontbuffer_tracking@drrs-2p-scndscrn-cur-indfb-draw-render 1722 - kms_frontbuffer_tracking@drrs-2p-scndscrn-spr-indfb-draw-mmap-cpu 1723 - kms_frontbuffer_tracking@drrs-2p-scndscrn-spr-indfb-draw-mmap-gtt 1724 - kms_frontbuffer_tracking@drrs-2p-scndscrn-spr-indfb-draw-mmap-wc 1725 - kms_frontbuffer_tracking@drrs-2p-scndscrn-spr-indfb-draw-pwrite 1726 - kms_frontbuffer_tracking@drrs-2p-scndscrn-spr-indfb-draw-blt 1727 - kms_frontbuffer_tracking@drrs-2p-scndscrn-spr-indfb-draw-render 1728 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-pri-indfb-draw-mmap-cpu 1729 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-pri-indfb-draw-mmap-gtt 1730 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-pri-indfb-draw-mmap-wc 1731 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-pri-indfb-draw-pwrite 1732 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-pri-indfb-draw-blt 1733 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-pri-indfb-draw-render 1734 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-pri-shrfb-draw-mmap-cpu 1735 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-pri-shrfb-draw-mmap-gtt 1736 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-pri-shrfb-draw-mmap-wc 1737 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-pri-shrfb-draw-pwrite 1738 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-pri-shrfb-draw-blt 1739 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-pri-shrfb-draw-render 1740 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-cur-indfb-draw-mmap-cpu 1741 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-cur-indfb-draw-mmap-gtt 1742 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-cur-indfb-draw-mmap-wc 1743 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-cur-indfb-draw-pwrite 1744 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-cur-indfb-draw-blt 1745 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-cur-indfb-draw-render 1746 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-spr-indfb-draw-mmap-cpu 1747 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-spr-indfb-draw-mmap-gtt 1748 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-spr-indfb-draw-mmap-wc 1749 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-spr-indfb-draw-pwrite 1750 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-spr-indfb-draw-blt 1751 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-spr-indfb-draw-render 1752 - kms_frontbuffer_tracking@fbcdrrs-1p-offscren-pri-indfb-draw-mmap-cpu 1753 - kms_frontbuffer_tracking@fbcdrrs-1p-offscren-pri-indfb-draw-mmap-gtt 1754 - kms_frontbuffer_tracking@fbcdrrs-1p-offscren-pri-indfb-draw-mmap-wc 1755 - kms_frontbuffer_tracking@fbcdrrs-1p-offscren-pri-indfb-draw-pwrite 1756 - kms_frontbuffer_tracking@fbcdrrs-1p-offscren-pri-indfb-draw-blt 1757 - kms_frontbuffer_tracking@fbcdrrs-1p-offscren-pri-indfb-draw-render 1758 - kms_frontbuffer_tracking@fbcdrrs-1p-offscren-pri-shrfb-draw-mmap-cpu 1759 - kms_frontbuffer_tracking@fbcdrrs-1p-offscren-pri-shrfb-draw-mmap-gtt 1760 - kms_frontbuffer_tracking@fbcdrrs-1p-offscren-pri-shrfb-draw-mmap-wc 1761 - kms_frontbuffer_tracking@fbcdrrs-1p-offscren-pri-shrfb-draw-pwrite 1762 - kms_frontbuffer_tracking@fbcdrrs-1p-offscren-pri-shrfb-draw-blt 1763 - kms_frontbuffer_tracking@fbcdrrs-1p-offscren-pri-shrfb-draw-render 1764 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-indfb-draw-mmap-cpu 1765 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-indfb-draw-mmap-gtt 1766 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-indfb-draw-mmap-wc 1767 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-indfb-draw-pwrite 1768 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-indfb-draw-blt 1769 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-indfb-draw-render 1770 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-shrfb-draw-mmap-cpu 1771 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-shrfb-draw-mmap-gtt 1772 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-shrfb-draw-mmap-wc 1773 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-shrfb-draw-pwrite 1774 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-shrfb-draw-blt 1775 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-shrfb-draw-render 1776 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-cur-indfb-draw-mmap-cpu 1777 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-cur-indfb-draw-mmap-gtt 1778 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-cur-indfb-draw-mmap-wc 1779 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-cur-indfb-draw-pwrite 1780 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-cur-indfb-draw-blt 1781 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-cur-indfb-draw-render 1782 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-spr-indfb-draw-mmap-cpu 1783 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-spr-indfb-draw-mmap-gtt 1784 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-spr-indfb-draw-mmap-wc 1785 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-spr-indfb-draw-pwrite 1786 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-spr-indfb-draw-blt 1787 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-spr-indfb-draw-render 1788 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-indfb-draw-mmap-cpu 1789 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-indfb-draw-mmap-gtt 1790 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-indfb-draw-mmap-wc 1791 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-indfb-draw-pwrite 1792 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-indfb-draw-blt 1793 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-indfb-draw-render 1794 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-mmap-cpu 1795 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-mmap-gtt 1796 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-mmap-wc 1797 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-pwrite 1798 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-blt 1799 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-render 1800 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-mmap-cpu 1801 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-mmap-gtt 1802 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-mmap-wc 1803 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-pwrite 1804 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-blt 1805 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-render 1806 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-spr-indfb-draw-mmap-cpu 1807 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-spr-indfb-draw-mmap-gtt 1808 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-spr-indfb-draw-mmap-wc 1809 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-spr-indfb-draw-pwrite 1810 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-spr-indfb-draw-blt 1811 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-spr-indfb-draw-render 1812 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-pri-indfb-draw-mmap-cpu 1813 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-pri-indfb-draw-mmap-gtt 1814 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-pri-indfb-draw-mmap-wc 1815 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-pri-indfb-draw-pwrite 1816 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-pri-indfb-draw-blt 1817 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-pri-indfb-draw-render 1818 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-pri-shrfb-draw-mmap-cpu 1819 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-pri-shrfb-draw-mmap-gtt 1820 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-pri-shrfb-draw-mmap-wc 1821 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-pri-shrfb-draw-pwrite 1822 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-pri-shrfb-draw-blt 1823 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-pri-shrfb-draw-render 1824 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-cur-indfb-draw-mmap-cpu 1825 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-cur-indfb-draw-mmap-gtt 1826 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-cur-indfb-draw-mmap-wc 1827 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-cur-indfb-draw-pwrite 1828 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-cur-indfb-draw-blt 1829 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-cur-indfb-draw-render 1830 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-spr-indfb-draw-mmap-cpu 1831 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-spr-indfb-draw-mmap-gtt 1832 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-spr-indfb-draw-mmap-wc 1833 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-spr-indfb-draw-pwrite 1834 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-spr-indfb-draw-blt 1835 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-spr-indfb-draw-render 1836 - kms_frontbuffer_tracking@psrdrrs-1p-offscren-pri-indfb-draw-mmap-cpu 1837 - kms_frontbuffer_tracking@psrdrrs-1p-offscren-pri-indfb-draw-mmap-gtt 1838 - kms_frontbuffer_tracking@psrdrrs-1p-offscren-pri-indfb-draw-mmap-wc 1839 - kms_frontbuffer_tracking@psrdrrs-1p-offscren-pri-indfb-draw-pwrite 1840 - kms_frontbuffer_tracking@psrdrrs-1p-offscren-pri-indfb-draw-blt 1841 - kms_frontbuffer_tracking@psrdrrs-1p-offscren-pri-indfb-draw-render 1842 - kms_frontbuffer_tracking@psrdrrs-1p-offscren-pri-shrfb-draw-mmap-cpu 1843 - kms_frontbuffer_tracking@psrdrrs-1p-offscren-pri-shrfb-draw-mmap-gtt 1844 - kms_frontbuffer_tracking@psrdrrs-1p-offscren-pri-shrfb-draw-mmap-wc 1845 - kms_frontbuffer_tracking@psrdrrs-1p-offscren-pri-shrfb-draw-pwrite 1846 - kms_frontbuffer_tracking@psrdrrs-1p-offscren-pri-shrfb-draw-blt 1847 - kms_frontbuffer_tracking@psrdrrs-1p-offscren-pri-shrfb-draw-render 1848 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-pri-indfb-draw-mmap-cpu 1849 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-pri-indfb-draw-mmap-gtt 1850 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-pri-indfb-draw-mmap-wc 1851 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-pri-indfb-draw-pwrite 1852 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-pri-indfb-draw-blt 1853 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-pri-indfb-draw-render 1854 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-pri-shrfb-draw-mmap-cpu 1855 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-pri-shrfb-draw-mmap-gtt 1856 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-pri-shrfb-draw-mmap-wc 1857 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-pri-shrfb-draw-pwrite 1858 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-pri-shrfb-draw-blt 1859 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-pri-shrfb-draw-render 1860 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-cur-indfb-draw-mmap-cpu 1861 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-cur-indfb-draw-mmap-gtt 1862 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-cur-indfb-draw-mmap-wc 1863 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-cur-indfb-draw-pwrite 1864 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-cur-indfb-draw-blt 1865 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-cur-indfb-draw-render 1866 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-spr-indfb-draw-mmap-cpu 1867 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-spr-indfb-draw-mmap-gtt 1868 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-spr-indfb-draw-mmap-wc 1869 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-spr-indfb-draw-pwrite 1870 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-spr-indfb-draw-blt 1871 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-spr-indfb-draw-render 1872 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-pri-indfb-draw-mmap-cpu 1873 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-pri-indfb-draw-mmap-gtt 1874 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-pri-indfb-draw-mmap-wc 1875 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-pri-indfb-draw-pwrite 1876 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-pri-indfb-draw-blt 1877 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-pri-indfb-draw-render 1878 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-pri-shrfb-draw-mmap-cpu 1879 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-pri-shrfb-draw-mmap-gtt 1880 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-pri-shrfb-draw-mmap-wc 1881 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-pri-shrfb-draw-pwrite 1882 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-pri-shrfb-draw-blt 1883 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-pri-shrfb-draw-render 1884 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-cur-indfb-draw-mmap-cpu 1885 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-cur-indfb-draw-mmap-gtt 1886 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-cur-indfb-draw-mmap-wc 1887 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-cur-indfb-draw-pwrite 1888 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-cur-indfb-draw-blt 1889 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-cur-indfb-draw-render 1890 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-spr-indfb-draw-mmap-cpu 1891 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-spr-indfb-draw-mmap-gtt 1892 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-spr-indfb-draw-mmap-wc 1893 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-spr-indfb-draw-pwrite 1894 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-spr-indfb-draw-blt 1895 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-spr-indfb-draw-render 1896 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-pri-indfb-draw-mmap-cpu 1897 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-pri-indfb-draw-mmap-gtt 1898 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-pri-indfb-draw-mmap-wc 1899 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-pri-indfb-draw-pwrite 1900 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-pri-indfb-draw-blt 1901 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-pri-indfb-draw-render 1902 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-pri-shrfb-draw-mmap-cpu 1903 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-pri-shrfb-draw-mmap-gtt 1904 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-pri-shrfb-draw-mmap-wc 1905 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-pri-shrfb-draw-pwrite 1906 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-pri-shrfb-draw-blt 1907 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-pri-shrfb-draw-render 1908 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-cur-indfb-draw-mmap-cpu 1909 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-cur-indfb-draw-mmap-gtt 1910 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-cur-indfb-draw-mmap-wc 1911 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-cur-indfb-draw-pwrite 1912 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-cur-indfb-draw-blt 1913 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-cur-indfb-draw-render 1914 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-spr-indfb-draw-mmap-cpu 1915 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-spr-indfb-draw-mmap-gtt 1916 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-spr-indfb-draw-mmap-wc 1917 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-spr-indfb-draw-pwrite 1918 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-spr-indfb-draw-blt 1919 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-spr-indfb-draw-render 1920 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-offscren-pri-indfb-draw-mmap-cpu 1921 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-offscren-pri-indfb-draw-mmap-gtt 1922 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-offscren-pri-indfb-draw-mmap-wc 1923 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-offscren-pri-indfb-draw-pwrite 1924 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-offscren-pri-indfb-draw-blt 1925 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-offscren-pri-indfb-draw-render 1926 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-offscren-pri-shrfb-draw-mmap-cpu 1927 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-offscren-pri-shrfb-draw-mmap-gtt 1928 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-offscren-pri-shrfb-draw-mmap-wc 1929 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-offscren-pri-shrfb-draw-pwrite 1930 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-offscren-pri-shrfb-draw-blt 1931 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-offscren-pri-shrfb-draw-render 1932 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-pri-indfb-draw-mmap-cpu 1933 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-pri-indfb-draw-mmap-gtt 1934 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-pri-indfb-draw-mmap-wc 1935 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-pri-indfb-draw-pwrite 1936 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-pri-indfb-draw-blt 1937 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-pri-indfb-draw-render 1938 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-pri-shrfb-draw-mmap-cpu 1939 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-pri-shrfb-draw-mmap-gtt 1940 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-pri-shrfb-draw-mmap-wc 1941 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-pri-shrfb-draw-pwrite 1942 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-pri-shrfb-draw-blt 1943 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-pri-shrfb-draw-render 1944 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-cur-indfb-draw-mmap-cpu 1945 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-cur-indfb-draw-mmap-gtt 1946 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-cur-indfb-draw-mmap-wc 1947 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-cur-indfb-draw-pwrite 1948 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-cur-indfb-draw-blt 1949 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-cur-indfb-draw-render 1950 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-spr-indfb-draw-mmap-cpu 1951 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-spr-indfb-draw-mmap-gtt 1952 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-spr-indfb-draw-mmap-wc 1953 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-spr-indfb-draw-pwrite 1954 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-spr-indfb-draw-blt 1955 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-spr-indfb-draw-render 1956 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-pri-indfb-draw-mmap-cpu 1957 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-pri-indfb-draw-mmap-gtt 1958 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-pri-indfb-draw-mmap-wc 1959 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-pri-indfb-draw-pwrite 1960 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-pri-indfb-draw-blt 1961 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-pri-indfb-draw-render 1962 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-pri-shrfb-draw-mmap-cpu 1963 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-pri-shrfb-draw-mmap-gtt 1964 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-pri-shrfb-draw-mmap-wc 1965 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-pri-shrfb-draw-pwrite 1966 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-pri-shrfb-draw-blt 1967 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-pri-shrfb-draw-render 1968 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-cur-indfb-draw-mmap-cpu 1969 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-cur-indfb-draw-mmap-gtt 1970 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-cur-indfb-draw-mmap-wc 1971 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-cur-indfb-draw-pwrite 1972 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-cur-indfb-draw-blt 1973 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-cur-indfb-draw-render 1974 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-spr-indfb-draw-mmap-cpu 1975 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-spr-indfb-draw-mmap-gtt 1976 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-spr-indfb-draw-mmap-wc 1977 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-spr-indfb-draw-pwrite 1978 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-spr-indfb-draw-blt 1979 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-spr-indfb-draw-render 1980 - kms_frontbuffer_tracking@fbc-1p-primscrn-indfb-pgflip-blt 1981 - kms_frontbuffer_tracking@fbc-1p-primscrn-indfb-msflip-blt 1982 - kms_frontbuffer_tracking@fbc-1p-primscrn-indfb-plflip-blt 1983 - kms_frontbuffer_tracking@fbc-1p-primscrn-shrfb-pgflip-blt 1984 - kms_frontbuffer_tracking@fbc-1p-primscrn-shrfb-msflip-blt 1985 - kms_frontbuffer_tracking@fbc-1p-primscrn-shrfb-plflip-blt 1986 - kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-pgflip-blt 1987 - kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-msflip-blt 1988 - kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-plflip-blt 1989 - kms_frontbuffer_tracking@fbc-2p-primscrn-shrfb-pgflip-blt 1990 - kms_frontbuffer_tracking@fbc-2p-primscrn-shrfb-msflip-blt 1991 - kms_frontbuffer_tracking@fbc-2p-primscrn-shrfb-plflip-blt 1992 - kms_frontbuffer_tracking@fbc-2p-scndscrn-indfb-pgflip-blt 1993 - kms_frontbuffer_tracking@fbc-2p-scndscrn-indfb-msflip-blt 1994 - kms_frontbuffer_tracking@fbc-2p-scndscrn-indfb-plflip-blt 1995 - kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-pgflip-blt 1996 - kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-msflip-blt 1997 - kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-plflip-blt 1998 - kms_frontbuffer_tracking@psr-1p-primscrn-indfb-pgflip-blt 1999 - kms_frontbuffer_tracking@psr-1p-primscrn-indfb-msflip-blt 2000 - kms_frontbuffer_tracking@psr-1p-primscrn-indfb-plflip-blt 2001 - kms_frontbuffer_tracking@psr-1p-primscrn-shrfb-pgflip-blt 2002 - kms_frontbuffer_tracking@psr-1p-primscrn-shrfb-msflip-blt 2003 - kms_frontbuffer_tracking@psr-1p-primscrn-shrfb-plflip-blt 2004 - kms_frontbuffer_tracking@psr-2p-primscrn-indfb-pgflip-blt 2005 - kms_frontbuffer_tracking@psr-2p-primscrn-indfb-msflip-blt 2006 - kms_frontbuffer_tracking@psr-2p-primscrn-indfb-plflip-blt 2007 - kms_frontbuffer_tracking@psr-2p-primscrn-shrfb-pgflip-blt 2008 - kms_frontbuffer_tracking@psr-2p-primscrn-shrfb-msflip-blt 2009 - kms_frontbuffer_tracking@psr-2p-primscrn-shrfb-plflip-blt 2010 - kms_frontbuffer_tracking@psr-2p-scndscrn-indfb-pgflip-blt 2011 - kms_frontbuffer_tracking@psr-2p-scndscrn-indfb-msflip-blt 2012 - kms_frontbuffer_tracking@psr-2p-scndscrn-indfb-plflip-blt 2013 - kms_frontbuffer_tracking@psr-2p-scndscrn-shrfb-pgflip-blt 2014 - kms_frontbuffer_tracking@psr-2p-scndscrn-shrfb-msflip-blt 2015 - kms_frontbuffer_tracking@psr-2p-scndscrn-shrfb-plflip-blt 2016 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-indfb-pgflip-blt 2017 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-indfb-msflip-blt 2018 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-indfb-plflip-blt 2019 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-pgflip-blt 2020 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-msflip-blt 2021 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-plflip-blt 2022 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-indfb-pgflip-blt 2023 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-indfb-msflip-blt 2024 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-indfb-plflip-blt 2025 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-shrfb-pgflip-blt 2026 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-shrfb-msflip-blt 2027 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-shrfb-plflip-blt 2028 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-indfb-pgflip-blt 2029 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-indfb-msflip-blt 2030 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-indfb-plflip-blt 2031 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-shrfb-pgflip-blt 2032 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-shrfb-msflip-blt 2033 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-shrfb-plflip-blt 2034 - kms_frontbuffer_tracking@drrs-1p-primscrn-indfb-pgflip-blt 2035 - kms_frontbuffer_tracking@drrs-1p-primscrn-indfb-msflip-blt 2036 - kms_frontbuffer_tracking@drrs-1p-primscrn-indfb-plflip-blt 2037 - kms_frontbuffer_tracking@drrs-1p-primscrn-shrfb-pgflip-blt 2038 - kms_frontbuffer_tracking@drrs-1p-primscrn-shrfb-msflip-blt 2039 - kms_frontbuffer_tracking@drrs-1p-primscrn-shrfb-plflip-blt 2040 - kms_frontbuffer_tracking@drrs-2p-primscrn-indfb-pgflip-blt 2041 - kms_frontbuffer_tracking@drrs-2p-primscrn-indfb-msflip-blt 2042 - kms_frontbuffer_tracking@drrs-2p-primscrn-indfb-plflip-blt 2043 - kms_frontbuffer_tracking@drrs-2p-primscrn-shrfb-pgflip-blt 2044 - kms_frontbuffer_tracking@drrs-2p-primscrn-shrfb-msflip-blt 2045 - kms_frontbuffer_tracking@drrs-2p-primscrn-shrfb-plflip-blt 2046 - kms_frontbuffer_tracking@drrs-2p-scndscrn-indfb-pgflip-blt 2047 - kms_frontbuffer_tracking@drrs-2p-scndscrn-indfb-msflip-blt 2048 - kms_frontbuffer_tracking@drrs-2p-scndscrn-indfb-plflip-blt 2049 - kms_frontbuffer_tracking@drrs-2p-scndscrn-shrfb-pgflip-blt 2050 - kms_frontbuffer_tracking@drrs-2p-scndscrn-shrfb-msflip-blt 2051 - kms_frontbuffer_tracking@drrs-2p-scndscrn-shrfb-plflip-blt 2052 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-indfb-pgflip-blt 2053 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-indfb-msflip-blt 2054 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-indfb-plflip-blt 2055 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-shrfb-pgflip-blt 2056 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-shrfb-msflip-blt 2057 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-shrfb-plflip-blt 2058 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-indfb-pgflip-blt 2059 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-indfb-msflip-blt 2060 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-indfb-plflip-blt 2061 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-shrfb-pgflip-blt 2062 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-shrfb-msflip-blt 2063 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-shrfb-plflip-blt 2064 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-indfb-pgflip-blt 2065 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-indfb-msflip-blt 2066 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-indfb-plflip-blt 2067 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-shrfb-pgflip-blt 2068 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-shrfb-msflip-blt 2069 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-shrfb-plflip-blt 2070 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-indfb-pgflip-blt 2071 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-indfb-msflip-blt 2072 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-indfb-plflip-blt 2073 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-shrfb-pgflip-blt 2074 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-shrfb-msflip-blt 2075 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-shrfb-plflip-blt 2076 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-indfb-pgflip-blt 2077 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-indfb-msflip-blt 2078 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-indfb-plflip-blt 2079 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-shrfb-pgflip-blt 2080 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-shrfb-msflip-blt 2081 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-shrfb-plflip-blt 2082 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-indfb-pgflip-blt 2083 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-indfb-msflip-blt 2084 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-indfb-plflip-blt 2085 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-shrfb-pgflip-blt 2086 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-shrfb-msflip-blt 2087 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-shrfb-plflip-blt 2088 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-indfb-pgflip-blt 2089 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-indfb-msflip-blt 2090 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-indfb-plflip-blt 2091 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-shrfb-pgflip-blt 2092 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-shrfb-msflip-blt 2093 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-shrfb-plflip-blt 2094 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-indfb-pgflip-blt 2095 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-indfb-msflip-blt 2096 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-indfb-plflip-blt 2097 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-shrfb-pgflip-blt 2098 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-shrfb-msflip-blt 2099 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-shrfb-plflip-blt 2100 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-indfb-pgflip-blt 2101 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-indfb-msflip-blt 2102 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-indfb-plflip-blt 2103 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-shrfb-pgflip-blt 2104 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-shrfb-msflip-blt 2105 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-shrfb-plflip-blt 2106 - kms_frontbuffer_tracking@fbc-1p-indfb-fliptrack-mmap-gtt 2107 - kms_frontbuffer_tracking@fbc-1p-shrfb-fliptrack-mmap-gtt 2108 - kms_frontbuffer_tracking@fbc-2p-indfb-fliptrack-mmap-gtt 2109 - kms_frontbuffer_tracking@fbc-2p-shrfb-fliptrack-mmap-gtt 2110 - kms_frontbuffer_tracking@fbcpsr-1p-indfb-fliptrack-mmap-gtt 2111 - kms_frontbuffer_tracking@fbcpsr-1p-shrfb-fliptrack-mmap-gtt 2112 - kms_frontbuffer_tracking@fbcpsr-2p-indfb-fliptrack-mmap-gtt 2113 - kms_frontbuffer_tracking@fbcpsr-2p-shrfb-fliptrack-mmap-gtt 2114 - kms_frontbuffer_tracking@fbcdrrs-1p-indfb-fliptrack-mmap-gtt 2115 - kms_frontbuffer_tracking@fbcdrrs-1p-shrfb-fliptrack-mmap-gtt 2116 - kms_frontbuffer_tracking@fbcdrrs-2p-indfb-fliptrack-mmap-gtt 2117 - kms_frontbuffer_tracking@fbcdrrs-2p-shrfb-fliptrack-mmap-gtt 2118 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-indfb-fliptrack-mmap-gtt 2119 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-shrfb-fliptrack-mmap-gtt 2120 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-indfb-fliptrack-mmap-gtt 2121 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-shrfb-fliptrack-mmap-gtt 2122 - kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-move 2123 - kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-onoff 2124 - kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-move 2125 - kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-onoff 2126 - kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-move 2127 - kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-onoff 2128 - kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-move 2129 - kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-onoff 2130 - kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-move 2131 - kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-onoff 2132 - kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-move 2133 - kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-onoff 2134 - kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-move 2135 - kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-onoff 2136 - kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-move 2137 - kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-onoff 2138 - kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-move 2139 - kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-onoff 2140 - kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-move 2141 - kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-onoff 2142 - kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-move 2143 - kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-onoff 2144 - kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-move 2145 - kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-onoff 2146 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-move 2147 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-onoff 2148 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-move 2149 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-onoff 2150 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-move 2151 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-onoff 2152 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-move 2153 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-onoff 2154 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-move 2155 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-onoff 2156 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-move 2157 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-onoff 2158 - kms_frontbuffer_tracking@drrs-1p-primscrn-cur-indfb-move 2159 - kms_frontbuffer_tracking@drrs-1p-primscrn-cur-indfb-onoff 2160 - kms_frontbuffer_tracking@drrs-1p-primscrn-spr-indfb-move 2161 - kms_frontbuffer_tracking@drrs-1p-primscrn-spr-indfb-onoff 2162 - kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-move 2163 - kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-onoff 2164 - kms_frontbuffer_tracking@drrs-2p-primscrn-spr-indfb-move 2165 - kms_frontbuffer_tracking@drrs-2p-primscrn-spr-indfb-onoff 2166 - kms_frontbuffer_tracking@drrs-2p-scndscrn-cur-indfb-move 2167 - kms_frontbuffer_tracking@drrs-2p-scndscrn-cur-indfb-onoff 2168 - kms_frontbuffer_tracking@drrs-2p-scndscrn-spr-indfb-move 2169 - kms_frontbuffer_tracking@drrs-2p-scndscrn-spr-indfb-onoff 2170 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-cur-indfb-move 2171 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-cur-indfb-onoff 2172 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-spr-indfb-move 2173 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-spr-indfb-onoff 2174 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-cur-indfb-move 2175 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-cur-indfb-onoff 2176 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-spr-indfb-move 2177 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-spr-indfb-onoff 2178 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-move 2179 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-onoff 2180 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-spr-indfb-move 2181 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-spr-indfb-onoff 2182 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-cur-indfb-move 2183 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-cur-indfb-onoff 2184 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-spr-indfb-move 2185 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-spr-indfb-onoff 2186 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-cur-indfb-move 2187 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-cur-indfb-onoff 2188 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-spr-indfb-move 2189 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-spr-indfb-onoff 2190 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-cur-indfb-move 2191 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-cur-indfb-onoff 2192 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-spr-indfb-move 2193 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-spr-indfb-onoff 2194 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-cur-indfb-move 2195 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-cur-indfb-onoff 2196 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-spr-indfb-move 2197 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-spr-indfb-onoff 2198 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-cur-indfb-move 2199 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-cur-indfb-onoff 2200 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-spr-indfb-move 2201 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-spr-indfb-onoff 2202 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-cur-indfb-move 2203 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-cur-indfb-onoff 2204 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-spr-indfb-move 2205 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-spr-indfb-onoff 2206 - kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-fullscreen 2207 - kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-fullscreen 2208 - kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-fullscreen 2209 - kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-fullscreen 2210 - kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-fullscreen 2211 - kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-fullscreen 2212 - kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-fullscreen 2213 - kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-fullscreen 2214 - kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-fullscreen 2215 - kms_frontbuffer_tracking@drrs-1p-primscrn-spr-indfb-fullscreen 2216 - kms_frontbuffer_tracking@drrs-2p-primscrn-spr-indfb-fullscreen 2217 - kms_frontbuffer_tracking@drrs-2p-scndscrn-spr-indfb-fullscreen 2218 - kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-spr-indfb-fullscreen 2219 - kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-spr-indfb-fullscreen 2220 - kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-spr-indfb-fullscreen 2221 - kms_frontbuffer_tracking@psrdrrs-1p-primscrn-spr-indfb-fullscreen 2222 - kms_frontbuffer_tracking@psrdrrs-2p-primscrn-spr-indfb-fullscreen 2223 - kms_frontbuffer_tracking@psrdrrs-2p-scndscrn-spr-indfb-fullscreen 2224 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-primscrn-spr-indfb-fullscreen 2225 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-primscrn-spr-indfb-fullscreen 2226 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-scndscrn-spr-indfb-fullscreen 2227 - kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw 2228 - kms_frontbuffer_tracking@fbc-2p-pri-indfb-multidraw 2229 - kms_frontbuffer_tracking@psr-1p-pri-indfb-multidraw 2230 - kms_frontbuffer_tracking@psr-2p-pri-indfb-multidraw 2231 - kms_frontbuffer_tracking@fbcpsr-1p-pri-indfb-multidraw 2232 - kms_frontbuffer_tracking@fbcpsr-2p-pri-indfb-multidraw 2233 - kms_frontbuffer_tracking@drrs-1p-pri-indfb-multidraw 2234 - kms_frontbuffer_tracking@drrs-2p-pri-indfb-multidraw 2235 - kms_frontbuffer_tracking@fbcdrrs-1p-pri-indfb-multidraw 2236 - kms_frontbuffer_tracking@fbcdrrs-2p-pri-indfb-multidraw 2237 - kms_frontbuffer_tracking@psrdrrs-1p-pri-indfb-multidraw 2238 - kms_frontbuffer_tracking@psrdrrs-2p-pri-indfb-multidraw 2239 - kms_frontbuffer_tracking@fbcpsrdrrs-1p-pri-indfb-multidraw 2240 - kms_frontbuffer_tracking@fbcpsrdrrs-2p-pri-indfb-multidraw 2241 - kms_frontbuffer_tracking@fbc-farfromfence-mmap-gtt 2242 - kms_frontbuffer_tracking@psr-farfromfence-mmap-gtt 2243 - kms_frontbuffer_tracking@fbcpsr-farfromfence-mmap-gtt 2244 - kms_frontbuffer_tracking@drrs-farfromfence-mmap-gtt 2245 - kms_frontbuffer_tracking@fbcdrrs-farfromfence-mmap-gtt 2246 - kms_frontbuffer_tracking@psrdrrs-farfromfence-mmap-gtt 2247 - kms_frontbuffer_tracking@fbcpsrdrrs-farfromfence-mmap-gtt 2248 - kms_frontbuffer_tracking@fbc-rgb565-draw-mmap-cpu 2249 - kms_frontbuffer_tracking@fbc-rgb101010-draw-mmap-cpu 2250 - kms_frontbuffer_tracking@fbc-rgb565-draw-mmap-gtt 2251 - kms_frontbuffer_tracking@fbc-rgb101010-draw-mmap-gtt 2252 - kms_frontbuffer_tracking@fbc-rgb565-draw-mmap-wc 2253 - kms_frontbuffer_tracking@fbc-rgb101010-draw-mmap-wc 2254 - kms_frontbuffer_tracking@fbc-rgb565-draw-pwrite 2255 - kms_frontbuffer_tracking@fbc-rgb101010-draw-pwrite 2256 - kms_frontbuffer_tracking@fbc-rgb565-draw-blt 2257 - kms_frontbuffer_tracking@fbc-rgb101010-draw-blt 2258 - kms_frontbuffer_tracking@fbc-rgb565-draw-render 2259 - kms_frontbuffer_tracking@fbc-rgb101010-draw-render 2260 - kms_frontbuffer_tracking@psr-rgb565-draw-mmap-cpu 2261 - kms_frontbuffer_tracking@psr-rgb101010-draw-mmap-cpu 2262 - kms_frontbuffer_tracking@psr-rgb565-draw-mmap-gtt 2263 - kms_frontbuffer_tracking@psr-rgb101010-draw-mmap-gtt 2264 - kms_frontbuffer_tracking@psr-rgb565-draw-mmap-wc 2265 - kms_frontbuffer_tracking@psr-rgb101010-draw-mmap-wc 2266 - kms_frontbuffer_tracking@psr-rgb565-draw-pwrite 2267 - kms_frontbuffer_tracking@psr-rgb101010-draw-pwrite 2268 - kms_frontbuffer_tracking@psr-rgb565-draw-blt 2269 - kms_frontbuffer_tracking@psr-rgb101010-draw-blt 2270 - kms_frontbuffer_tracking@psr-rgb565-draw-render 2271 - kms_frontbuffer_tracking@psr-rgb101010-draw-render 2272 - kms_frontbuffer_tracking@fbcpsr-rgb565-draw-mmap-cpu 2273 - kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-mmap-cpu 2274 - kms_frontbuffer_tracking@fbcpsr-rgb565-draw-mmap-gtt 2275 - kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-mmap-gtt 2276 - kms_frontbuffer_tracking@fbcpsr-rgb565-draw-mmap-wc 2277 - kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-mmap-wc 2278 - kms_frontbuffer_tracking@fbcpsr-rgb565-draw-pwrite 2279 - kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-pwrite 2280 - kms_frontbuffer_tracking@fbcpsr-rgb565-draw-blt 2281 - kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-blt 2282 - kms_frontbuffer_tracking@fbcpsr-rgb565-draw-render 2283 - kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-render 2284 - kms_frontbuffer_tracking@drrs-rgb565-draw-mmap-cpu 2285 - kms_frontbuffer_tracking@drrs-rgb101010-draw-mmap-cpu 2286 - kms_frontbuffer_tracking@drrs-rgb565-draw-mmap-gtt 2287 - kms_frontbuffer_tracking@drrs-rgb101010-draw-mmap-gtt 2288 - kms_frontbuffer_tracking@drrs-rgb565-draw-mmap-wc 2289 - kms_frontbuffer_tracking@drrs-rgb101010-draw-mmap-wc 2290 - kms_frontbuffer_tracking@drrs-rgb565-draw-pwrite 2291 - kms_frontbuffer_tracking@drrs-rgb101010-draw-pwrite 2292 - kms_frontbuffer_tracking@drrs-rgb565-draw-blt 2293 - kms_frontbuffer_tracking@drrs-rgb101010-draw-blt 2294 - kms_frontbuffer_tracking@drrs-rgb565-draw-render 2295 - kms_frontbuffer_tracking@drrs-rgb101010-draw-render 2296 - kms_frontbuffer_tracking@fbcdrrs-rgb565-draw-mmap-cpu 2297 - kms_frontbuffer_tracking@fbcdrrs-rgb101010-draw-mmap-cpu 2298 - kms_frontbuffer_tracking@fbcdrrs-rgb565-draw-mmap-gtt 2299 - kms_frontbuffer_tracking@fbcdrrs-rgb101010-draw-mmap-gtt 2300 - kms_frontbuffer_tracking@fbcdrrs-rgb565-draw-mmap-wc 2301 - kms_frontbuffer_tracking@fbcdrrs-rgb101010-draw-mmap-wc 2302 - kms_frontbuffer_tracking@fbcdrrs-rgb565-draw-pwrite 2303 - kms_frontbuffer_tracking@fbcdrrs-rgb101010-draw-pwrite 2304 - kms_frontbuffer_tracking@fbcdrrs-rgb565-draw-blt 2305 - kms_frontbuffer_tracking@fbcdrrs-rgb101010-draw-blt 2306 - kms_frontbuffer_tracking@fbcdrrs-rgb565-draw-render 2307 - kms_frontbuffer_tracking@fbcdrrs-rgb101010-draw-render 2308 - kms_frontbuffer_tracking@psrdrrs-rgb565-draw-mmap-cpu 2309 - kms_frontbuffer_tracking@psrdrrs-rgb101010-draw-mmap-cpu 2310 - kms_frontbuffer_tracking@psrdrrs-rgb565-draw-mmap-gtt 2311 - kms_frontbuffer_tracking@psrdrrs-rgb101010-draw-mmap-gtt 2312 - kms_frontbuffer_tracking@psrdrrs-rgb565-draw-mmap-wc 2313 - kms_frontbuffer_tracking@psrdrrs-rgb101010-draw-mmap-wc 2314 - kms_frontbuffer_tracking@psrdrrs-rgb565-draw-pwrite 2315 - kms_frontbuffer_tracking@psrdrrs-rgb101010-draw-pwrite 2316 - kms_frontbuffer_tracking@psrdrrs-rgb565-draw-blt 2317 - kms_frontbuffer_tracking@psrdrrs-rgb101010-draw-blt 2318 - kms_frontbuffer_tracking@psrdrrs-rgb565-draw-render 2319 - kms_frontbuffer_tracking@psrdrrs-rgb101010-draw-render 2320 - kms_frontbuffer_tracking@fbcpsrdrrs-rgb565-draw-mmap-cpu 2321 - kms_frontbuffer_tracking@fbcpsrdrrs-rgb101010-draw-mmap-cpu 2322 - kms_frontbuffer_tracking@fbcpsrdrrs-rgb565-draw-mmap-gtt 2323 - kms_frontbuffer_tracking@fbcpsrdrrs-rgb101010-draw-mmap-gtt 2324 - kms_frontbuffer_tracking@fbcpsrdrrs-rgb565-draw-mmap-wc 2325 - kms_frontbuffer_tracking@fbcpsrdrrs-rgb101010-draw-mmap-wc 2326 - kms_frontbuffer_tracking@fbcpsrdrrs-rgb565-draw-pwrite 2327 - kms_frontbuffer_tracking@fbcpsrdrrs-rgb101010-draw-pwrite 2328 - kms_frontbuffer_tracking@fbcpsrdrrs-rgb565-draw-blt 2329 - kms_frontbuffer_tracking@fbcpsrdrrs-rgb101010-draw-blt 2330 - kms_frontbuffer_tracking@fbcpsrdrrs-rgb565-draw-render 2331 - kms_frontbuffer_tracking@fbcpsrdrrs-rgb101010-draw-render 2332 - kms_frontbuffer_tracking@fbc-indfb-scaledprimary 2333 - kms_frontbuffer_tracking@fbc-shrfb-scaledprimary 2334 - kms_frontbuffer_tracking@psr-indfb-scaledprimary 2335 - kms_frontbuffer_tracking@psr-shrfb-scaledprimary 2336 - kms_frontbuffer_tracking@fbcpsr-indfb-scaledprimary 2337 - kms_frontbuffer_tracking@fbcpsr-shrfb-scaledprimary 2338 - kms_frontbuffer_tracking@drrs-indfb-scaledprimary 2339 - kms_frontbuffer_tracking@drrs-shrfb-scaledprimary 2340 - kms_frontbuffer_tracking@fbcdrrs-indfb-scaledprimary 2341 - kms_frontbuffer_tracking@fbcdrrs-shrfb-scaledprimary 2342 - kms_frontbuffer_tracking@psrdrrs-indfb-scaledprimary 2343 - kms_frontbuffer_tracking@psrdrrs-shrfb-scaledprimary 2344 - kms_frontbuffer_tracking@fbcpsrdrrs-indfb-scaledprimary 2345 - kms_frontbuffer_tracking@fbcpsrdrrs-shrfb-scaledprimary 2346 - kms_frontbuffer_tracking@fbc-modesetfrombusy 2347 - kms_frontbuffer_tracking@fbc-stridechange 2348 - kms_frontbuffer_tracking@fbc-tiling-linear 2349 - kms_frontbuffer_tracking@fbc-tiling-y 2350 - kms_frontbuffer_tracking@fbc-tiling-4 2351 - kms_frontbuffer_tracking@fbc-suspend 2352 - kms_frontbuffer_tracking@psr-modesetfrombusy 2353 - kms_frontbuffer_tracking@psr-slowdraw 2354 - kms_frontbuffer_tracking@psr-suspend 2355 - kms_frontbuffer_tracking@fbcpsr-modesetfrombusy 2356 - kms_frontbuffer_tracking@fbcpsr-stridechange 2357 - kms_frontbuffer_tracking@fbcpsr-tiling-linear 2358 - kms_frontbuffer_tracking@fbcpsr-tiling-y 2359 - kms_frontbuffer_tracking@fbcpsr-tiling-4 2360 - kms_frontbuffer_tracking@fbcpsr-slowdraw 2361 - kms_frontbuffer_tracking@fbcpsr-suspend 2362 - kms_frontbuffer_tracking@drrs-modesetfrombusy 2363 - kms_frontbuffer_tracking@drrs-slowdraw 2364 - kms_frontbuffer_tracking@drrs-suspend 2365 - kms_frontbuffer_tracking@fbcdrrs-modesetfrombusy 2366 - kms_frontbuffer_tracking@fbcdrrs-stridechange 2367 - kms_frontbuffer_tracking@fbcdrrs-tiling-linear 2368 - kms_frontbuffer_tracking@fbcdrrs-tiling-y 2369 - kms_frontbuffer_tracking@fbcdrrs-tiling-4 2370 - kms_frontbuffer_tracking@fbcdrrs-slowdraw 2371 - kms_frontbuffer_tracking@fbcdrrs-suspend 2372 - kms_frontbuffer_tracking@psrdrrs-modesetfrombusy 2373 - kms_frontbuffer_tracking@psrdrrs-slowdraw 2374 - kms_frontbuffer_tracking@psrdrrs-suspend 2375 - kms_frontbuffer_tracking@fbcpsrdrrs-modesetfrombusy 2376 - kms_frontbuffer_tracking@fbcpsrdrrs-stridechange 2377 - kms_frontbuffer_tracking@fbcpsrdrrs-tiling-linear 2378 - kms_frontbuffer_tracking@fbcpsrdrrs-tiling-y 2379 - kms_frontbuffer_tracking@fbcpsrdrrs-tiling-4 2380 - kms_frontbuffer_tracking@fbcpsrdrrs-slowdraw 2381 - kms_frontbuffer_tracking@fbcpsrdrrs-suspend 2382 - kms_frontbuffer_tracking@basic 2383 - kms_getfb@getfb-handle-zero 2384 - kms_getfb@getfb-handle-valid 2385 - kms_getfb@getfb-handle-closed 2386 - kms_getfb@getfb-handle-not-fb 2387 - kms_getfb@getfb-addfb-different-handles 2388 - kms_getfb@getfb-repeated-different-handles 2389 - kms_getfb@getfb-reject-ccs 2390 - kms_getfb@getfb2-handle-zero 2391 - kms_getfb@getfb2-handle-closed 2392 - kms_getfb@getfb2-handle-not-fb 2393 - kms_getfb@getfb2-accept-ccs 2394 - kms_getfb@getfb2-into-addfb2 2395 - kms_getfb@getfb-handle-protection 2396 - kms_getfb@getfb2-handle-protection 2397 - kms_hdmi_inject@inject-4k 2398 - kms_hdmi_inject@inject-audio 2399 - kms_hdr@bpc-switch 2400 - kms_hdr@bpc-switch-dpms 2401 - kms_hdr@bpc-switch-suspend 2402 - kms_hdr@static-toggle 2403 - kms_hdr@static-toggle-dpms 2404 - kms_hdr@static-toggle-suspend 2405 - kms_hdr@static-swap 2406 - kms_hdr@invalid-metadata-sizes 2407 - kms_hdr@invalid-hdr 2408 - kms_invalid_mode@clock-too-high 2409 - kms_invalid_mode@zero-clock 2410 - kms_invalid_mode@int-max-clock 2411 - kms_invalid_mode@uint-max-clock 2412 - kms_invalid_mode@zero-hdisplay 2413 - kms_invalid_mode@zero-vdisplay 2414 - kms_invalid_mode@bad-hsync-start 2415 - kms_invalid_mode@bad-vsync-start 2416 - kms_invalid_mode@bad-hsync-end 2417 - kms_invalid_mode@bad-vsync-end 2418 - kms_invalid_mode@bad-htotal 2419 - kms_invalid_mode@bad-vtotal 2420 - kms_legacy_colorkey@basic 2421 - kms_legacy_colorkey@invalid-plane 2422 - kms_multipipe_modeset@basic-max-pipe-crc-check 2423 - kms_panel_fitting@legacy 2424 - kms_panel_fitting@atomic-fastset 2425 - kms_pipe_b_c_ivb@pipe-B-dpms-off-modeset-pipe-C 2426 - kms_pipe_b_c_ivb@pipe-B-double-modeset-then-modeset-pipe-C 2427 - kms_pipe_b_c_ivb@disable-pipe-B-enable-pipe-C 2428 - kms_pipe_b_c_ivb@from-pipe-C-to-B-with-3-lanes 2429 - kms_pipe_b_c_ivb@enable-pipe-C-while-B-has-3-lanes 2430 - kms_pipe_crc_basic@bad-source 2431 - kms_pipe_crc_basic@read-crc 2432 - kms_pipe_crc_basic@read-crc-frame-sequence 2433 - kms_pipe_crc_basic@nonblocking-crc 2434 - kms_pipe_crc_basic@nonblocking-crc-frame-sequence 2435 - kms_pipe_crc_basic@suspend-read-crc 2436 - kms_pipe_crc_basic@hang-read-crc 2437 - kms_pipe_crc_basic@disable-crc-after-crtc 2438 - kms_pipe_crc_basic@compare-crc-sanitycheck-xr24 2439 - kms_pipe_crc_basic@compare-crc-sanitycheck-nv12 2440 - kms_plane@pixel-format 2441 - kms_plane@pixel-format-source-clamping 2442 - kms_plane@plane-position-covered 2443 - kms_plane@plane-position-hole 2444 - kms_plane@plane-position-hole-dpms 2445 - kms_plane@plane-panning-top-left 2446 - kms_plane@plane-panning-bottom-right 2447 - kms_plane@plane-panning-bottom-right-suspend 2448 - kms_plane@planar-pixel-format-settings 2449 - kms_plane_alpha_blend@alpha-basic 2450 - kms_plane_alpha_blend@alpha-7efc 2451 - kms_plane_alpha_blend@coverage-7efc 2452 - kms_plane_alpha_blend@coverage-vs-premult-vs-constant 2453 - kms_plane_alpha_blend@alpha-transparent-fb 2454 - kms_plane_alpha_blend@alpha-opaque-fb 2455 - kms_plane_alpha_blend@constant-alpha-min 2456 - kms_plane_alpha_blend@constant-alpha-mid 2457 - kms_plane_alpha_blend@constant-alpha-max 2458 - kms_plane_cursor@primary 2459 - kms_plane_cursor@overlay 2460 - kms_plane_cursor@viewport 2461 - kms_plane_lowres@tiling-none 2462 - kms_plane_lowres@tiling-x 2463 - kms_plane_lowres@tiling-y 2464 - kms_plane_lowres@tiling-yf 2465 - kms_plane_lowres@tiling-4 2466 - kms_plane_multiple@tiling-none 2467 - kms_plane_multiple@tiling-x 2468 - kms_plane_multiple@tiling-y 2469 - kms_plane_multiple@tiling-yf 2470 - kms_plane_multiple@tiling-4 2471 - kms_plane_scaling@plane-upscale-20x20-with-pixel-format 2472 - kms_plane_scaling@plane-upscale-factor-0-25-with-pixel-format 2473 - kms_plane_scaling@plane-downscale-factor-0-25-with-pixel-format 2474 - kms_plane_scaling@plane-downscale-factor-0-5-with-pixel-format 2475 - kms_plane_scaling@plane-downscale-factor-0-75-with-pixel-format 2476 - kms_plane_scaling@plane-scaler-unity-scaling-with-pixel-format 2477 - kms_plane_scaling@plane-upscale-20x20-with-rotation 2478 - kms_plane_scaling@plane-upscale-factor-0-25-with-rotation 2479 - kms_plane_scaling@plane-downscale-factor-0-25-with-rotation 2480 - kms_plane_scaling@plane-downscale-factor-0-5-with-rotation 2481 - kms_plane_scaling@plane-downscale-factor-0-75-with-rotation 2482 - kms_plane_scaling@plane-scaler-unity-scaling-with-rotation 2483 - kms_plane_scaling@plane-upscale-20x20-with-modifiers 2484 - kms_plane_scaling@plane-upscale-factor-0-25-with-modifiers 2485 - kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers 2486 - kms_plane_scaling@plane-downscale-factor-0-5-with-modifiers 2487 - kms_plane_scaling@plane-downscale-factor-0-75-with-modifiers 2488 - kms_plane_scaling@plane-scaler-unity-scaling-with-modifiers 2489 - kms_plane_scaling@plane-scaler-with-clipping-clamping-pixel-formats 2490 - kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation 2491 - kms_plane_scaling@plane-scaler-with-clipping-clamping-modifiers 2492 - kms_plane_scaling@planes-upscale-20x20 2493 - kms_plane_scaling@planes-upscale-factor-0-25 2494 - kms_plane_scaling@planes-scaler-unity-scaling 2495 - kms_plane_scaling@planes-downscale-factor-0-25 2496 - kms_plane_scaling@planes-downscale-factor-0-5 2497 - kms_plane_scaling@planes-downscale-factor-0-75 2498 - kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25 2499 - kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5 2500 - kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-75 2501 - kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-25 2502 - kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5 2503 - kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-75 2504 - kms_plane_scaling@planes-unity-scaling-downscale-factor-0-25 2505 - kms_plane_scaling@planes-unity-scaling-downscale-factor-0-5 2506 - kms_plane_scaling@planes-unity-scaling-downscale-factor-0-75 2507 - kms_plane_scaling@planes-downscale-factor-0-25-upscale-20x20 2508 - kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25 2509 - kms_plane_scaling@planes-downscale-factor-0-25-unity-scaling 2510 - kms_plane_scaling@planes-downscale-factor-0-5-upscale-20x20 2511 - kms_plane_scaling@planes-downscale-factor-0-5-upscale-factor-0-25 2512 - kms_plane_scaling@planes-downscale-factor-0-5-unity-scaling 2513 - kms_plane_scaling@planes-downscale-factor-0-75-upscale-20x20 2514 - kms_plane_scaling@planes-downscale-factor-0-75-upscale-factor-0-25 2515 - kms_plane_scaling@planes-downscale-factor-0-75-unity-scaling 2516 - kms_plane_scaling@intel-max-src-size 2517 - kms_plane_scaling@invalid-num-scalers 2518 - kms_plane_scaling@invalid-parameters 2519 - kms_plane_scaling@2x-scaler-multi-pipe 2520 - kms_prime@basic-crc-hybrid 2521 - kms_prime@basic-modeset-hybrid 2522 - kms_prime@D3hot 2523 - kms_prime@basic-crc-vgem 2524 - kms_prop_blob@basic 2525 - kms_prop_blob@blob-prop-core 2526 - kms_prop_blob@blob-prop-validate 2527 - kms_prop_blob@blob-prop-lifetime 2528 - kms_prop_blob@blob-multiple 2529 - kms_prop_blob@invalid-get-prop-any 2530 - kms_prop_blob@invalid-get-prop 2531 - kms_prop_blob@invalid-set-prop-any 2532 - kms_prop_blob@invalid-set-prop 2533 - kms_properties@plane-properties-legacy 2534 - kms_properties@plane-properties-atomic 2535 - kms_properties@crtc-properties-legacy 2536 - kms_properties@crtc-properties-atomic 2537 - kms_properties@connector-properties-legacy 2538 - kms_properties@connector-properties-atomic 2539 - kms_properties@invalid-properties-legacy 2540 - kms_properties@invalid-properties-atomic 2541 - kms_properties@get_properties-sanity-atomic 2542 - kms_properties@get_properties-sanity-non-atomic 2543 - kms_psr@pr-basic 2544 - kms_psr@pr-no-drrs 2545 - kms_psr@pr-primary-page-flip 2546 - kms_psr@pr-primary-mmap-gtt 2547 - kms_psr@pr-primary-mmap-cpu 2548 - kms_psr@pr-primary-blt 2549 - kms_psr@pr-primary-render 2550 - kms_psr@pr-sprite-mmap-gtt 2551 - kms_psr@pr-cursor-mmap-gtt 2552 - kms_psr@pr-sprite-mmap-cpu 2553 - kms_psr@pr-cursor-mmap-cpu 2554 - kms_psr@pr-sprite-blt 2555 - kms_psr@pr-cursor-blt 2556 - kms_psr@pr-sprite-render 2557 - kms_psr@pr-cursor-render 2558 - kms_psr@pr-sprite-plane-move 2559 - kms_psr@pr-cursor-plane-move 2560 - kms_psr@pr-sprite-plane-onoff 2561 - kms_psr@pr-cursor-plane-onoff 2562 - kms_psr@pr-dpms 2563 - kms_psr@pr-suspend 2564 - kms_psr@psr-basic 2565 - kms_psr@psr-no-drrs 2566 - kms_psr@psr-primary-page-flip 2567 - kms_psr@psr-primary-mmap-gtt 2568 - kms_psr@psr-primary-mmap-cpu 2569 - kms_psr@psr-primary-blt 2570 - kms_psr@psr-primary-render 2571 - kms_psr@psr-sprite-mmap-gtt 2572 - kms_psr@psr-cursor-mmap-gtt 2573 - kms_psr@psr-sprite-mmap-cpu 2574 - kms_psr@psr-cursor-mmap-cpu 2575 - kms_psr@psr-sprite-blt 2576 - kms_psr@psr-cursor-blt 2577 - kms_psr@psr-sprite-render 2578 - kms_psr@psr-cursor-render 2579 - kms_psr@psr-sprite-plane-move 2580 - kms_psr@psr-cursor-plane-move 2581 - kms_psr@psr-sprite-plane-onoff 2582 - kms_psr@psr-cursor-plane-onoff 2583 - kms_psr@psr-dpms 2584 - kms_psr@psr-suspend 2585 - kms_psr@psr2-basic 2586 - kms_psr@psr2-no-drrs 2587 - kms_psr@psr2-primary-page-flip 2588 - kms_psr@psr2-primary-mmap-gtt 2589 - kms_psr@psr2-primary-mmap-cpu 2590 - kms_psr@psr2-primary-blt 2591 - kms_psr@psr2-primary-render 2592 - kms_psr@psr2-sprite-mmap-gtt 2593 - kms_psr@psr2-cursor-mmap-gtt 2594 - kms_psr@psr2-sprite-mmap-cpu 2595 - kms_psr@psr2-cursor-mmap-cpu 2596 - kms_psr@psr2-sprite-blt 2597 - kms_psr@psr2-cursor-blt 2598 - kms_psr@psr2-sprite-render 2599 - kms_psr@psr2-cursor-render 2600 - kms_psr@psr2-sprite-plane-move 2601 - kms_psr@psr2-cursor-plane-move 2602 - kms_psr@psr2-sprite-plane-onoff 2603 - kms_psr@psr2-cursor-plane-onoff 2604 - kms_psr@psr2-dpms 2605 - kms_psr@psr2-suspend 2606 - kms_psr2_sf@primary-plane-update-sf-dmg-area 2607 - kms_psr2_sf@primary-plane-update-sf-dmg-area-big-fb 2608 - kms_psr2_sf@overlay-plane-update-sf-dmg-area 2609 - kms_psr2_sf@cursor-plane-update-sf 2610 - kms_psr2_sf@cursor-plane-move-continuous-sf 2611 - kms_psr2_sf@cursor-plane-move-continuous-exceed-sf 2612 - kms_psr2_sf@cursor-plane-move-continuous-exceed-fully-sf 2613 - kms_psr2_sf@plane-move-sf-dmg-area 2614 - kms_psr2_sf@overlay-plane-move-continuous-sf 2615 - kms_psr2_sf@overlay-plane-move-continuous-exceed-sf 2616 - kms_psr2_sf@overlay-plane-move-continuous-exceed-fully-sf 2617 - kms_psr2_sf@overlay-primary-update-sf-dmg-area 2618 - kms_psr2_sf@overlay-plane-update-continuous-sf 2619 - kms_psr2_su@page_flip-XRGB8888 2620 - kms_psr2_su@page_flip-NV12 2621 - kms_psr2_su@page_flip-P010 2622 - kms_psr2_su@frontbuffer-XRGB8888 2623 - kms_pwrite_crc 2624 - kms_rmfb@rmfb-ioctl 2625 - kms_rmfb@close-fd 2626 - kms_rotation_crc@primary-rotation-90 2627 - kms_rotation_crc@primary-rotation-180 2628 - kms_rotation_crc@primary-rotation-270 2629 - kms_rotation_crc@sprite-rotation-90 2630 - kms_rotation_crc@sprite-rotation-180 2631 - kms_rotation_crc@sprite-rotation-270 2632 - kms_rotation_crc@cursor-rotation-180 2633 - kms_rotation_crc@sprite-rotation-90-pos-100-0 2634 - kms_rotation_crc@bad-pixel-format 2635 - kms_rotation_crc@bad-tiling 2636 - kms_rotation_crc@primary-x-tiled-reflect-x-0 2637 - kms_rotation_crc@primary-x-tiled-reflect-x-180 2638 - kms_rotation_crc@primary-y-tiled-reflect-x-0 2639 - kms_rotation_crc@primary-y-tiled-reflect-x-90 2640 - kms_rotation_crc@primary-y-tiled-reflect-x-180 2641 - kms_rotation_crc@primary-y-tiled-reflect-x-270 2642 - kms_rotation_crc@primary-yf-tiled-reflect-x-0 2643 - kms_rotation_crc@primary-yf-tiled-reflect-x-90 2644 - kms_rotation_crc@primary-yf-tiled-reflect-x-180 2645 - kms_rotation_crc@primary-yf-tiled-reflect-x-270 2646 - kms_rotation_crc@primary-4-tiled-reflect-x-0 2647 - kms_rotation_crc@primary-4-tiled-reflect-x-180 2648 - kms_rotation_crc@multiplane-rotation 2649 - kms_rotation_crc@multiplane-rotation-cropping-top 2650 - kms_rotation_crc@multiplane-rotation-cropping-bottom 2651 - kms_rotation_crc@exhaust-fences 2652 - kms_scaling_modes@scaling-mode-full 2653 - kms_scaling_modes@scaling-mode-center 2654 - kms_scaling_modes@scaling-mode-full-aspect 2655 - kms_scaling_modes@scaling-mode-none 2656 - kms_selftest@drm_cmdline_parser 2657 - kms_selftest@drm_damage_helper 2658 - kms_selftest@drm_dp_mst_helper 2659 - kms_selftest@drm_format_helper 2660 - kms_selftest@drm_format 2661 - kms_selftest@drm_framebuffer 2662 - kms_selftest@drm_plane_helper 2663 - kms_setmode@basic 2664 - kms_setmode@basic-clone-single-crtc 2665 - kms_setmode@invalid-clone-single-crtc 2666 - kms_setmode@invalid-clone-exclusive-crtc 2667 - kms_setmode@clone-exclusive-crtc 2668 - kms_setmode@invalid-clone-single-crtc-stealing 2669 - kms_sysfs_edid_timing 2670 - kms_tv_load_detect@load-detect 2671 - kms_universal_plane@universal-plane-functional 2672 - kms_universal_plane@universal-plane-sanity 2673 - kms_universal_plane@disable-primary-vs-flip 2674 - kms_universal_plane@cursor-fb-leak 2675 - kms_universal_plane@universal-plane-pageflip-windowed 2676 - kms_vblank@invalid 2677 - kms_vblank@crtc-id 2678 - kms_vblank@accuracy-idle 2679 - kms_vblank@query-idle 2680 - kms_vblank@query-idle-hang 2681 - kms_vblank@query-forked 2682 - kms_vblank@query-forked-hang 2683 - kms_vblank@query-busy 2684 - kms_vblank@query-busy-hang 2685 - kms_vblank@query-forked-busy 2686 - kms_vblank@query-forked-busy-hang 2687 - kms_vblank@wait-idle 2688 - kms_vblank@wait-idle-hang 2689 - kms_vblank@wait-forked 2690 - kms_vblank@wait-forked-hang 2691 - kms_vblank@wait-busy 2692 - kms_vblank@wait-busy-hang 2693 - kms_vblank@wait-forked-busy 2694 - kms_vblank@wait-forked-busy-hang 2695 - kms_vblank@ts-continuation-idle 2696 - kms_vblank@ts-continuation-idle-hang 2697 - kms_vblank@ts-continuation-dpms-rpm 2698 - kms_vblank@ts-continuation-dpms-suspend 2699 - kms_vblank@ts-continuation-suspend 2700 - kms_vblank@ts-continuation-modeset 2701 - kms_vblank@ts-continuation-modeset-hang 2702 - kms_vblank@ts-continuation-modeset-rpm 2703 - kms_vrr@flip-basic 2704 - kms_vrr@flip-dpms 2705 - kms_vrr@flip-suspend 2706 - kms_vrr@flipline 2707 - kms_vrr@negative-basic 2708 - kms_writeback@writeback-pixel-formats 2709 - kms_writeback@writeback-invalid-parameters 2710 - kms_writeback@writeback-fb-id 2711 - kms_writeback@writeback-check-output 2712 - prime_mmap_kms@buffer-sharing 2713 - msm_shrink@copy-gpu-sanitycheck-8 2714 - msm_shrink@copy-gpu-sanitycheck-32 2715 - msm_shrink@copy-gpu-8 2716 - msm_shrink@copy-gpu-32 2717 - msm_shrink@copy-gpu-madvise-8 2718 - msm_shrink@copy-gpu-madvise-32 2719 - msm_shrink@copy-gpu-oom-8 2720 - msm_shrink@copy-gpu-oom-32 2721 - msm_shrink@copy-mmap-sanitycheck-8 2722 - msm_shrink@copy-mmap-sanitycheck-32 2723 - msm_shrink@copy-mmap-8 2724 - msm_shrink@copy-mmap-32 2725 - msm_shrink@copy-mmap-madvise-8 2726 - msm_shrink@copy-mmap-madvise-32 2727 - msm_shrink@copy-mmap-oom-8 2728 - msm_shrink@copy-mmap-oom-32 2729 - msm_shrink@copy-mmap-dmabuf-sanitycheck-8 2730 - msm_shrink@copy-mmap-dmabuf-sanitycheck-32 2731 - msm_shrink@copy-mmap-dmabuf-8 2732 - msm_shrink@copy-mmap-dmabuf-32 2733 - msm_shrink@copy-mmap-dmabuf-madvise-8 2734 - msm_shrink@copy-mmap-dmabuf-madvise-32 2735 - msm_shrink@copy-mmap-dmabuf-oom-8 2736 - msm_shrink@copy-mmap-dmabuf-oom-32 2737 - msm_mapping@ring 2738 - msm_mapping@sqefw 2739 - msm_mapping@shadow 2740 - msm_submitoverhead@submitbench-10-bos 2741 - msm_submitoverhead@submitbench-10-bos-no-implicit-sync 2742 - msm_submitoverhead@submitbench-100-bos 2743 - msm_submitoverhead@submitbench-100-bos-no-implicit-sync 2744 - msm_submitoverhead@submitbench-250-bos 2745 - msm_submitoverhead@submitbench-250-bos-no-implicit-sync 2746 - msm_submitoverhead@submitbench-500-bos 2747 - msm_submitoverhead@submitbench-500-bos-no-implicit-sync 2748 - msm_submitoverhead@submitbench-1000-bos 2749 - msm_submitoverhead@submitbench-1000-bos-no-implicit-sync 2750 - msm_recovery@hangcheck 2751 - msm_recovery@gpu-fault 2752 - msm_recovery@gpu-fault-parallel 2753 - msm_recovery@iova-fault 2754 - msm_submit@empty-submit 2755 - msm_submit@invalid-queue-submit 2756 - msm_submit@invalid-flags-submit 2757 - msm_submit@invalid-in-fence-submit 2758 - msm_submit@invalid-duplicate-bo-submit 2759 - msm_submit@invalid-cmd-idx-submit 2760 - msm_submit@invalid-cmd-type-submit 2761 - msm_submit@valid-submit
+27 -14
drivers/gpu/drm/ci/xfails/amdgpu-stoney-fails.txt
··· 1 + amdgpu/amd_abm@abm_enabled,Fail 2 + amdgpu/amd_abm@abm_gradual,Fail 3 + amdgpu/amd_abm@backlight_monotonic_abm,Fail 4 + amdgpu/amd_abm@backlight_monotonic_basic,Fail 5 + amdgpu/amd_assr@assr-links,Fail 6 + amdgpu/amd_assr@assr-links-dpms,Fail 7 + amdgpu/amd_mall@static-screen,Crash 8 + amdgpu/amd_mode_switch@mode-switch-first-last-pipe-2,Crash 9 + amdgpu/amd_plane@mpo-pan-nv12,Fail 10 + amdgpu/amd_plane@mpo-pan-p010,Fail 11 + amdgpu/amd_plane@mpo-pan-rgb,Crash 12 + amdgpu/amd_plane@mpo-scale-nv12,Fail 13 + amdgpu/amd_plane@mpo-scale-p010,Fail 14 + amdgpu/amd_plane@mpo-scale-rgb,Crash 15 + amdgpu/amd_plane@mpo-swizzle-toggle,Fail 16 + amdgpu/amd_uvd_dec@amdgpu_uvd_decode,Fail 17 + dumb_buffer@invalid-bpp,Fail 1 18 kms_addfb_basic@bad-pitch-65536,Fail 2 19 kms_addfb_basic@bo-too-small,Fail 3 20 kms_addfb_basic@too-high,Fail 4 - kms_async_flips@async-flip-with-page-flip-events,Fail 5 - kms_async_flips@crc,Fail 6 - kms_async_flips@invalid-async-flip,Fail 7 21 kms_atomic_transition@plane-all-modeset-transition-internal-panels,Fail 8 22 kms_atomic_transition@plane-all-transition,Fail 9 23 kms_atomic_transition@plane-all-transition-nonblocking,Fail 10 24 kms_atomic_transition@plane-toggle-modeset-transition,Fail 11 25 kms_atomic_transition@plane-use-after-nonblocking-unbind,Fail 12 - kms_bw@linear-tiling-1-displays-2560x1440p,Fail 13 - kms_bw@linear-tiling-1-displays-3840x2160p,Fail 14 - kms_bw@linear-tiling-2-displays-3840x2160p,Fail 15 - kms_bw@linear-tiling-3-displays-1920x1080p,Fail 16 - kms_color@degamma,Fail 26 + kms_cursor_crc@cursor-onscreen-64x21,Fail 27 + kms_cursor_crc@cursor-onscreen-64x64,Fail 28 + kms_cursor_crc@cursor-random-64x21,Fail 29 + kms_cursor_crc@cursor-random-64x64,Fail 17 30 kms_cursor_crc@cursor-size-change,Fail 18 - kms_cursor_crc@pipe-A-cursor-size-change,Fail 19 - kms_cursor_crc@pipe-B-cursor-size-change,Fail 31 + kms_cursor_crc@cursor-sliding-64x21,Fail 32 + kms_cursor_crc@cursor-sliding-64x64,Fail 20 33 kms_flip@flip-vs-modeset-vs-hang,Fail 21 34 kms_flip@flip-vs-panning-vs-hang,Fail 22 - kms_hdr@bpc-switch,Fail 23 - kms_hdr@bpc-switch-dpms,Fail 35 + kms_lease@lease-uevent,Fail 24 36 kms_plane@pixel-format,Fail 25 - kms_plane_multiple@atomic-pipe-A-tiling-none,Fail 26 - kms_rmfb@close-fd,Fail 37 + kms_plane_cursor@primary,Fail 27 38 kms_rotation_crc@primary-rotation-180,Fail 39 + perf@i915-ref-count,Fail 40 + tools_test@tools_test,Fail
+7
drivers/gpu/drm/ci/xfails/amdgpu-stoney-flakes.txt
··· 1 + # Board Name: hp-11A-G6-EE-grunt 2 + # Bug Report: https://lore.kernel.org/amd-gfx/3542730f-b8d7-404d-a947-b7a5e95d661c@collabora.com/T/#u 3 + # IGT Version: 1.28-g0df7b9b97 4 + # Linux Version: 6.9.0-rc7 5 + # Failure Rate: 50 1 6 kms_async_flips@async-flip-with-page-flip-events 7 + kms_async_flips@crc 8 + kms_plane@pixel-format-source-clamping
+31
drivers/gpu/drm/ci/xfails/amdgpu-stoney-skips.txt
··· 1 1 # Suspend to RAM seems to be broken on this machine 2 2 .*suspend.* 3 + 4 + # Skip driver specific tests 5 + msm_.* 6 + nouveau_.* 7 + panfrost_.* 8 + ^v3d.* 9 + ^vc4.* 10 + ^vmwgfx* 11 + 12 + # Skip intel specific tests 13 + gem_.* 14 + i915_.* 15 + xe_.* 16 + 17 + # Currently fails and causes coverage loss for other tests 18 + # since core_getversion also fails. 19 + amdgpu/amd_module_load@reload 20 + core_hotunplug.* 21 + 22 + # GPU reset seen and it hangs the machine 23 + amdgpu/amd_deadlock@amdgpu-deadlock-sdma 24 + amdgpu/amd_deadlock@amdgpu-gfx-illegal-reg-access 25 + amdgpu/amd_dispatch@amdgpu-reset-test-gfx-with-IP-GFX-and-COMPUTE 26 + 27 + # Hangs the machine and timeout occurs 28 + amdgpu/amd_pci_unplug@amdgpu_hotunplug_simple 29 + amdgpu/amd_pci_unplug@amdgpu_hotunplug_with_cs 30 + amdgpu/amd_pci_unplug@amdgpu_hotunplug_with_exported_bo 31 + amdgpu/amd_pci_unplug@amdgpu_hotunplug_with_exported_fence 32 + amdgpu/amd_vrr_range@freesync-parsing 33 + device_reset.*
+31
drivers/gpu/drm/ci/xfails/i915-amly-fails.txt
··· 1 + core_setmaster@master-drop-set-user,Fail 2 + core_setmaster_vs_auth,Fail 3 + i915_module_load@load,Fail 4 + i915_module_load@reload,Fail 5 + i915_module_load@reload-no-display,Fail 6 + i915_module_load@resize-bar,Fail 7 + i915_pm_rpm@gem-execbuf-stress,Timeout 8 + i915_pm_rpm@module-reload,Fail 9 + kms_async_flips@invalid-async-flip,Timeout 10 + kms_atomic_transition@modeset-transition-fencing,Timeout 11 + kms_ccs@crc-primary-rotation-180-yf-tiled-ccs,Timeout 12 + kms_fb_coherency@memset-crc,Crash 13 + kms_flip@flip-vs-dpms-off-vs-modeset,Timeout 1 14 kms_flip_scaled_crc@flip-32bpp-linear-to-64bpp-linear-downscaling,Fail 2 15 kms_flip_scaled_crc@flip-32bpp-linear-to-64bpp-linear-upscaling,Fail 3 16 kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling,Fail ··· 33 20 kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-upscaling,Fail 34 21 kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling,Fail 35 22 kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs-downscaling,Fail 23 + kms_lease@lease-uevent,Fail 36 24 kms_plane_alpha_blend@alpha-basic,Fail 37 25 kms_plane_alpha_blend@alpha-opaque-fb,Fail 38 26 kms_plane_alpha_blend@alpha-transparent-fb,Fail 39 27 kms_plane_alpha_blend@constant-alpha-max,Fail 28 + kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation,Timeout 29 + kms_pm_rpm@modeset-lpsp-stress,Timeout 30 + kms_pm_rpm@modeset-stress-extra-wait,Timeout 31 + kms_pm_rpm@universal-planes,Timeout 32 + kms_pm_rpm@universal-planes-dpms,Timeout 33 + perf@i915-ref-count,Fail 34 + perf_pmu@module-unload,Fail 35 + perf_pmu@rc6,Crash 36 + sysfs_heartbeat_interval@long,Timeout 37 + sysfs_heartbeat_interval@off,Timeout 38 + sysfs_preempt_timeout@off,Timeout 39 + sysfs_timeslice_duration@off,Timeout 40 + xe_module_load@force-load,Fail 41 + xe_module_load@load,Fail 42 + xe_module_load@many-reload,Fail 43 + xe_module_load@reload,Fail 44 + xe_module_load@reload-no-display,Fail
+9
drivers/gpu/drm/ci/xfails/i915-amly-flakes.txt
··· 1 + # Board Name: asus-C433TA-AJ0005-rammus 2 + # Bug Report: https://lore.kernel.org/intel-gfx/af4ca4df-a3ef-4943-bdbf-4c3af2c333af@collabora.com/T/#u 3 + # IGT Version: 1.28-g0df7b9b97 4 + # Linux Version: 6.9.0-rc7 5 + # Failure Rate: 50 6 + i915_hangman@engine-engine-error 7 + i915_hangman@gt-engine-hang 8 + kms_async_flips@crc 9 + kms_universal_plane@cursor-fb-leak
+20
drivers/gpu/drm/ci/xfails/i915-amly-skips.txt
··· 2 2 .*suspend.* 3 3 # This is generating kernel oops with divide error 4 4 kms_plane_scaling@invalid-parameters 5 + 6 + # Skip driver specific tests 7 + ^amdgpu.* 8 + msm_.* 9 + nouveau_.* 10 + panfrost_.* 11 + ^v3d.* 12 + ^vc4.* 13 + ^vmwgfx* 14 + 15 + # GEM tests takes ~1000 hours, so skip it 16 + gem_.* 17 + 18 + # Hangs the machine and timeout occurs 19 + i915_pm_rc6_residency.* 20 + i915_suspend.* 21 + kms_scaling_modes.* 22 + 23 + # Kernel panic 24 + drm_fdinfo.*
+26 -20
drivers/gpu/drm/ci/xfails/i915-apl-fails.txt
··· 1 - kms_3d,Timeout 2 - kms_bw@linear-tiling-2-displays-1920x1080p,Fail 3 - kms_bw@linear-tiling-2-displays-2560x1440p,Fail 4 - kms_bw@linear-tiling-2-displays-3840x2160p,Fail 5 - kms_bw@linear-tiling-3-displays-1920x1080p,Fail 6 - kms_bw@linear-tiling-3-displays-2560x1440p,Fail 7 - kms_bw@linear-tiling-3-displays-3840x2160p,Fail 8 - kms_bw@linear-tiling-4-displays-1920x1080p,Fail 9 - kms_bw@linear-tiling-4-displays-2560x1440p,Fail 10 - kms_bw@linear-tiling-4-displays-3840x2160p,Fail 1 + i915_module_load@load,Fail 2 + i915_module_load@reload,Fail 3 + i915_module_load@reload-no-display,Fail 4 + i915_module_load@resize-bar,Fail 11 5 kms_flip_scaled_crc@flip-32bpp-linear-to-64bpp-linear-downscaling,Fail 12 6 kms_flip_scaled_crc@flip-32bpp-linear-to-64bpp-linear-upscaling,Fail 13 7 kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling,Fail ··· 24 30 kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-upscaling,Fail 25 31 kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling,Fail 26 32 kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs-downscaling,Fail 27 - kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs-upscaling,Fail 33 + kms_lease@lease-uevent,Fail 28 34 kms_plane_alpha_blend@alpha-basic,Fail 29 35 kms_plane_alpha_blend@alpha-opaque-fb,Fail 30 36 kms_plane_alpha_blend@alpha-transparent-fb,Fail 31 37 kms_plane_alpha_blend@constant-alpha-max,Fail 32 - kms_plane_alpha_blend@pipe-A-alpha-opaque-fb,Fail 33 - kms_plane_alpha_blend@pipe-A-alpha-transparent-fb,Fail 34 - kms_plane_alpha_blend@pipe-A-constant-alpha-max,Fail 35 - kms_plane_alpha_blend@pipe-B-alpha-opaque-fb,Fail 36 - kms_plane_alpha_blend@pipe-B-alpha-transparent-fb,Fail 37 - kms_plane_alpha_blend@pipe-B-constant-alpha-max,Fail 38 - kms_plane_alpha_blend@pipe-C-alpha-opaque-fb,Fail 39 - kms_plane_alpha_blend@pipe-C-alpha-transparent-fb,Fail 40 - kms_plane_alpha_blend@pipe-C-constant-alpha-max,Fail 38 + kms_pm_backlight@basic-brightness,Fail 39 + kms_pm_backlight@fade,Fail 40 + kms_pm_backlight@fade-with-dpms,Fail 41 + kms_pm_rpm@legacy-planes,Timeout 42 + kms_pm_rpm@legacy-planes-dpms,Timeout 43 + kms_pm_rpm@modeset-stress-extra-wait,Timeout 44 + kms_pm_rpm@universal-planes,Timeout 45 + kms_pm_rpm@universal-planes-dpms,Timeout 41 46 kms_sysfs_edid_timing,Fail 47 + perf@i915-ref-count,Fail 48 + perf@non-zero-reason,Timeout 49 + perf_pmu@module-unload,Fail 50 + perf_pmu@rc6,Crash 51 + sysfs_heartbeat_interval@long,Timeout 52 + sysfs_heartbeat_interval@off,Timeout 53 + sysfs_preempt_timeout@off,Timeout 54 + sysfs_timeslice_duration@off,Timeout 55 + xe_module_load@force-load,Fail 56 + xe_module_load@load,Fail 57 + xe_module_load@many-reload,Fail 58 + xe_module_load@reload,Fail 59 + xe_module_load@reload-no-display,Fail
+6
drivers/gpu/drm/ci/xfails/i915-apl-flakes.txt
··· 1 + # Board Name: asus-C523NA-A20057-coral 2 + # Bug Report: https://lore.kernel.org/intel-gfx/af4ca4df-a3ef-4943-bdbf-4c3af2c333af@collabora.com/T/#u 3 + # IGT Version: 1.28-g0df7b9b97 4 + # Linux Version: 6.9.0-rc7 5 + # Failure Rate: 50 6 + kms_fb_coherency@memset-crc
+24
drivers/gpu/drm/ci/xfails/i915-apl-skips.txt
··· 4 4 kms_plane_scaling@invalid-parameters 5 5 # This is cascading issues 6 6 kms_3d 7 + 8 + # Skip driver specific tests 9 + ^amdgpu.* 10 + msm_.* 11 + nouveau_.* 12 + panfrost_.* 13 + ^v3d.* 14 + ^vc4.* 15 + ^vmwgfx* 16 + 17 + # GEM tests takes ~1000 hours, so skip it 18 + gem_.* 19 + 20 + # Hangs the machine and timeout occurs 21 + i915_pm_rc6_residency.* 22 + i915_suspend.* 23 + i915_pm_rpm.* 24 + device_reset.* 25 + api_intel_allocator.* 26 + kms_frontbuffer_tracking.* 27 + kms_ccs.* 28 + 29 + # Kernel panic 30 + drm_fdinfo.*
+38
drivers/gpu/drm/ci/xfails/i915-cml-fails.txt
··· 1 + core_setmaster@master-drop-set-user,Fail 2 + core_setmaster_vs_auth,Fail 3 + i915_module_load@load,Fail 4 + i915_module_load@reload,Fail 5 + i915_module_load@reload-no-display,Fail 6 + i915_module_load@resize-bar,Fail 7 + i915_pipe_stress@stress-xrgb8888-untiled,Fail 8 + i915_pipe_stress@stress-xrgb8888-ytiled,Fail 9 + i915_pm_rpm@gem-execbuf-stress,Timeout 10 + i915_pm_rpm@module-reload,Fail 11 + i915_pm_rpm@system-suspend-execbuf,Timeout 12 + kms_async_flips@invalid-async-flip,Timeout 13 + kms_atomic_transition@modeset-transition-fencing,Timeout 14 + kms_ccs@crc-primary-rotation-180-yf-tiled-ccs,Timeout 15 + kms_fb_coherency@memset-crc,Crash 16 + kms_flip@flip-vs-dpms-off-vs-modeset,Timeout 1 17 kms_flip_scaled_crc@flip-32bpp-linear-to-64bpp-linear-downscaling,Fail 2 18 kms_flip_scaled_crc@flip-32bpp-linear-to-64bpp-linear-upscaling,Fail 3 19 kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling,Fail ··· 36 20 kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-upscaling,Fail 37 21 kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling,Fail 38 22 kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs-downscaling,Fail 23 + kms_lease@lease-uevent,Fail 39 24 kms_plane_alpha_blend@alpha-basic,Fail 40 25 kms_plane_alpha_blend@alpha-opaque-fb,Fail 41 26 kms_plane_alpha_blend@alpha-transparent-fb,Fail 42 27 kms_plane_alpha_blend@constant-alpha-max,Fail 43 28 kms_plane_alpha_blend@constant-alpha-min,Fail 29 + kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation,Timeout 30 + kms_pm_rpm@modeset-stress-extra-wait,Timeout 31 + kms_pm_rpm@universal-planes,Timeout 32 + kms_pm_rpm@universal-planes-dpms,Timeout 33 + kms_psr2_sf@fbc-plane-move-sf-dmg-area,Timeout 34 + kms_psr2_sf@overlay-plane-update-continuous-sf,Fail 35 + kms_psr2_sf@overlay-plane-update-sf-dmg-area,Fail 36 + kms_psr2_sf@primary-plane-update-sf-dmg-area,Fail 37 + kms_psr2_sf@primary-plane-update-sf-dmg-area-big-fb,Fail 44 38 kms_psr2_su@page_flip-NV12,Fail 45 39 kms_psr2_su@page_flip-P010,Fail 40 + kms_psr@psr-sprite-render,Timeout 46 41 kms_setmode@basic,Fail 42 + perf@i915-ref-count,Fail 43 + perf_pmu@module-unload,Fail 44 + perf_pmu@rc6,Crash 45 + perf_pmu@rc6-suspend,Crash 46 + sysfs_heartbeat_interval@long,Timeout 47 + sysfs_heartbeat_interval@off,Timeout 48 + sysfs_preempt_timeout@off,Timeout 49 + sysfs_timeslice_duration@off,Timeout 50 + xe_module_load@force-load,Fail 51 + xe_module_load@load,Fail 52 + xe_module_load@many-reload,Fail
+6
drivers/gpu/drm/ci/xfails/i915-cml-flakes.txt
··· 1 + # Board Name: asus-C436FA-Flip-hatch 2 + # Bug Report: https://lore.kernel.org/intel-gfx/af4ca4df-a3ef-4943-bdbf-4c3af2c333af@collabora.com/T/#u 3 + # IGT Version: 1.28-g0df7b9b97 4 + # Linux Version: 6.9.0-rc7 5 + # Failure Rate: 50 6 + kms_plane_alpha_blend@constant-alpha-min
+23
drivers/gpu/drm/ci/xfails/i915-cml-skips.txt
··· 1 1 # This is generating kernel oops with divide error 2 2 kms_plane_scaling@invalid-parameters 3 + 4 + # Skip driver specific tests 5 + ^amdgpu.* 6 + msm_.* 7 + nouveau_.* 8 + panfrost_.* 9 + ^v3d.* 10 + ^vc4.* 11 + ^vmwgfx* 12 + 13 + # GEM tests takes ~1000 hours, so skip it 14 + gem_.* 15 + 16 + # Hangs the machine and timeout occurs 17 + i915_pm_rc6_residency.* 18 + i915_suspend.* 19 + xe_module_load.* 20 + api_intel_allocator.* 21 + kms_cursor_legacy.* 22 + 23 + # Kernel panic 24 + drm_fdinfo.* 25 + kms_frontbuffer_tracking.*
+34 -7
drivers/gpu/drm/ci/xfails/i915-glk-fails.txt
··· 1 - kms_fbcon_fbt@fbc,Fail 2 - kms_flip@blocking-wf_vblank,Fail 1 + core_setmaster@master-drop-set-user,Fail 2 + i915_module_load@load,Fail 3 + i915_module_load@reload,Fail 4 + i915_module_load@reload-no-display,Fail 5 + i915_module_load@resize-bar,Fail 6 + kms_async_flips@invalid-async-flip,Timeout 7 + kms_atomic_transition@modeset-transition-fencing,Timeout 8 + kms_big_fb@linear-16bpp-rotate-0,Fail 9 + kms_big_fb@linear-16bpp-rotate-180,Fail 10 + kms_big_fb@linear-32bpp-rotate-0,Fail 11 + kms_big_fb@linear-32bpp-rotate-180,Fail 12 + kms_big_fb@linear-8bpp-rotate-0,Fail 13 + kms_big_fb@linear-8bpp-rotate-180,Fail 14 + kms_big_fb@linear-max-hw-stride-32bpp-rotate-0,Fail 15 + kms_dirtyfb@default-dirtyfb-ioctl,Fail 16 + kms_draw_crc@draw-method-render,Fail 17 + kms_flip@flip-vs-dpms-off-vs-modeset,Timeout 3 18 kms_flip@wf_vblank-ts-check,Fail 4 19 kms_flip@wf_vblank-ts-check-interruptible,Fail 5 20 kms_flip_scaled_crc@flip-32bpp-linear-to-64bpp-linear-downscaling,Fail ··· 26 11 kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling,Fail 27 12 kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-upscaling,Fail 28 13 kms_flip_scaled_crc@flip-64bpp-linear-to-16bpp-linear-downscaling,Fail 29 - kms_flip_scaled_crc@flip-64bpp-linear-to-16bpp-linear-upscaling,Fail 30 14 kms_flip_scaled_crc@flip-64bpp-linear-to-32bpp-linear-downscaling,Fail 31 15 kms_flip_scaled_crc@flip-64bpp-linear-to-32bpp-linear-upscaling,Fail 32 16 kms_flip_scaled_crc@flip-64bpp-xtile-to-16bpp-xtile-downscaling,Fail ··· 40 26 kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs-downscaling,Fail 41 27 kms_frontbuffer_tracking@fbc-tiling-linear,Fail 42 28 kms_frontbuffer_tracking@fbcdrrs-tiling-linear,Fail 43 - kms_plane_alpha_blend@alpha-basic,Fail 29 + kms_lease@lease-uevent,Fail 44 30 kms_plane_alpha_blend@alpha-opaque-fb,Fail 45 - kms_plane_alpha_blend@alpha-transparent-fb,Fail 46 - kms_plane_alpha_blend@constant-alpha-max,Fail 31 + kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation,Timeout 32 + kms_pm_rpm@legacy-planes,Timeout 33 + kms_pm_rpm@legacy-planes-dpms,Timeout 34 + kms_pm_rpm@modeset-stress-extra-wait,Timeout 35 + kms_pm_rpm@universal-planes,Timeout 36 + kms_pm_rpm@universal-planes-dpms,Timeout 47 37 kms_rotation_crc@multiplane-rotation,Fail 48 38 kms_rotation_crc@multiplane-rotation-cropping-bottom,Fail 49 39 kms_rotation_crc@multiplane-rotation-cropping-top,Fail 50 - kms_setmode@basic,Fail 40 + perf@non-zero-reason,Timeout 41 + sysfs_heartbeat_interval@long,Timeout 42 + sysfs_heartbeat_interval@off,Timeout 43 + sysfs_preempt_timeout@off,Timeout 44 + sysfs_timeslice_duration@off,Timeout 45 + xe_module_load@force-load,Fail 46 + xe_module_load@load,Fail 47 + xe_module_load@many-reload,Fail 48 + xe_module_load@reload,Fail 49 + xe_module_load@reload-no-display,Fail
+7
drivers/gpu/drm/ci/xfails/i915-glk-flakes.txt
··· 1 + # Board Name: hp-x360-12b-ca0010nr-n4020-octopus 2 + # Bug Report: https://lore.kernel.org/intel-gfx/af4ca4df-a3ef-4943-bdbf-4c3af2c333af@collabora.com/T/#u 3 + # IGT Version: 1.28-g0df7b9b97 4 + # Linux Version: 6.9.0-rc7 5 + # Failure Rate: 50 6 + core_hotunplug@unplug-rescan 7 + kms_fb_coherency@memset-crc
+24
drivers/gpu/drm/ci/xfails/i915-glk-skips.txt
··· 3 3 4 4 # This is generating kernel oops with divide error 5 5 kms_plane_scaling@invalid-parameters 6 + 7 + # Skip driver specific tests 8 + ^amdgpu.* 9 + msm_.* 10 + nouveau_.* 11 + panfrost_.* 12 + ^v3d.* 13 + ^vc4.* 14 + ^vmwgfx* 15 + 16 + # GEM tests takes ~1000 hours, so skip it 17 + gem_.* 18 + 19 + # Hangs the machine and timeout occurs 20 + i915_pm_rc6_residency.* 21 + i915_suspend.* 22 + i915_pm_rpm.* 23 + kms_ccs.* 24 + kms_plane_multiple.* 25 + perf.* 26 + 27 + # Kernel panic 28 + drm_fdinfo.* 29 + kms_plane_alpha_blend.*
+19 -23
drivers/gpu/drm/ci/xfails/i915-kbl-fails.txt
··· 1 - kms_bw@linear-tiling-2-displays-2560x1440p,Fail 2 - kms_bw@linear-tiling-4-displays-2560x1440p,Fail 3 - kms_flip_scaled_crc@flip-32bpp-linear-to-64bpp-linear-downscaling,Fail 4 - kms_flip_scaled_crc@flip-32bpp-linear-to-64bpp-linear-upscaling,Fail 1 + i915_module_load@load,Fail 2 + i915_module_load@reload,Fail 3 + i915_module_load@reload-no-display,Fail 4 + i915_module_load@resize-bar,Fail 5 + i915_pm_rpm@gem-execbuf-stress,Timeout 5 6 kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling,Fail 6 - kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-upscaling,Fail 7 - kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling,Fail 8 7 kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-upscaling,Fail 9 - kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling,Fail 10 8 kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-upscaling,Fail 11 9 kms_flip_scaled_crc@flip-64bpp-linear-to-16bpp-linear-downscaling,Fail 12 - kms_flip_scaled_crc@flip-64bpp-linear-to-16bpp-linear-upscaling,Fail 13 - kms_flip_scaled_crc@flip-64bpp-linear-to-32bpp-linear-downscaling,Fail 14 10 kms_flip_scaled_crc@flip-64bpp-linear-to-32bpp-linear-upscaling,Fail 15 - kms_flip_scaled_crc@flip-64bpp-xtile-to-16bpp-xtile-downscaling,Fail 16 11 kms_flip_scaled_crc@flip-64bpp-xtile-to-16bpp-xtile-upscaling,Fail 17 - kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-downscaling,Fail 18 - kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-upscaling,Fail 19 - kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling,Fail 20 - kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-upscaling,Fail 21 12 kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-downscaling,Fail 22 - kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-upscaling,Fail 23 13 kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling,Fail 24 - kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs-downscaling,Fail 25 - kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs-upscaling,Fail 26 - kms_plane_alpha_blend@alpha-basic,Fail 27 - kms_plane_alpha_blend@alpha-opaque-fb,Fail 14 + kms_lease@lease-uevent,Fail 28 15 kms_plane_alpha_blend@alpha-transparent-fb,Fail 29 - kms_plane_alpha_blend@constant-alpha-max,Fail 30 - kms_plane_alpha_blend@pipe-A-constant-alpha-max,Fail 31 - kms_plane_alpha_blend@pipe-B-alpha-opaque-fb,Fail 32 - kms_plane_alpha_blend@pipe-C-constant-alpha-max,Fail 16 + perf@i915-ref-count,Fail 17 + perf_pmu@busy-accuracy-50,Fail 18 + perf_pmu@module-unload,Fail 19 + perf_pmu@rc6,Crash 20 + sysfs_heartbeat_interval@long,Timeout 21 + sysfs_heartbeat_interval@off,Timeout 22 + sysfs_preempt_timeout@off,Timeout 23 + sysfs_timeslice_duration@off,Timeout 24 + xe_module_load@force-load,Fail 25 + xe_module_load@load,Fail 26 + xe_module_load@many-reload,Fail 27 + xe_module_load@reload,Fail 28 + xe_module_load@reload-no-display,Fail
+6 -1
drivers/gpu/drm/ci/xfails/i915-kbl-flakes.txt
··· 1 - kms_async_flips@crc 1 + # Board Name: hp-x360-14-G1-sona 2 + # Bug Report: https://lore.kernel.org/intel-gfx/af4ca4df-a3ef-4943-bdbf-4c3af2c333af@collabora.com/T/#u 3 + # IGT Version: 1.28-g0df7b9b97 4 + # Linux Version: 6.9.0-rc7 5 + # Failure Rate: 50 6 + prime_busy@hang
+34
drivers/gpu/drm/ci/xfails/i915-kbl-skips.txt
··· 3 3 4 4 # This is generating kernel oops with divide error 5 5 kms_plane_scaling@invalid-parameters 6 + 7 + # Skip driver specific tests 8 + ^amdgpu.* 9 + msm_.* 10 + nouveau_.* 11 + panfrost_.* 12 + ^v3d.* 13 + ^vc4.* 14 + ^vmwgfx* 15 + 16 + # GEM tests takes ~1000 hours, so skip it 17 + gem_.* 18 + 19 + # Hangs the machine and timeout occurs 20 + i915_.* 21 + api_intel_bb.* 22 + 23 + # Kernel panic 24 + drm_fdinfo.* 25 + kms_.* 26 + prime_mmap_coherency.* 27 + perf.* 28 + drm_read.* 29 + api_intel_allocator.* 30 + sysfs_preempt_timeout.* 31 + dumb_buffer.* 32 + gen9_exec_parse.* 33 + debugfs_test.* 34 + core_hotunplug.* 35 + tools_test.* 36 + 37 + # GPU hang 38 + sysfs_timeslice_.* 39 + sysfs_heartbeat_.*
+42 -35
drivers/gpu/drm/ci/xfails/i915-tgl-fails.txt
··· 1 - kms_bw@linear-tiling-2-displays-3840x2160p,Fail 2 - kms_bw@linear-tiling-3-displays-1920x1080p,Fail 3 - kms_bw@linear-tiling-3-displays-2560x1440p,Fail 4 - kms_bw@linear-tiling-3-displays-3840x2160p,Fail 5 - kms_bw@linear-tiling-4-displays-1920x1080p,Fail 6 - kms_bw@linear-tiling-4-displays-2560x1440p,Fail 7 - kms_bw@linear-tiling-4-displays-3840x2160p,Fail 8 - kms_bw@linear-tiling-5-displays-1920x1080p,Fail 9 - kms_bw@linear-tiling-5-displays-2560x1440p,Fail 10 - kms_bw@linear-tiling-5-displays-3840x2160p,Fail 11 - kms_flip@flip-vs-panning-vs-hang,Timeout 12 - kms_flip_scaled_crc@flip-32bpp-linear-to-64bpp-linear-downscaling,Fail 13 - kms_flip_scaled_crc@flip-32bpp-linear-to-64bpp-linear-upscaling,Fail 14 - kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling,Fail 15 - kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-upscaling,Fail 16 - kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling,Fail 17 - kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-upscaling,Fail 18 - kms_flip_scaled_crc@flip-64bpp-linear-to-16bpp-linear-downscaling,Fail 19 - kms_flip_scaled_crc@flip-64bpp-linear-to-16bpp-linear-upscaling,Fail 20 - kms_flip_scaled_crc@flip-64bpp-linear-to-32bpp-linear-downscaling,Fail 21 - kms_flip_scaled_crc@flip-64bpp-linear-to-32bpp-linear-upscaling,Fail 22 - kms_flip_scaled_crc@flip-64bpp-xtile-to-16bpp-xtile-downscaling,Fail 23 - kms_flip_scaled_crc@flip-64bpp-xtile-to-16bpp-xtile-upscaling,Fail 24 - kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-downscaling,Fail 25 - kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-upscaling,Fail 26 - kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling,Fail 27 - kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-upscaling,Fail 28 - kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-downscaling,Fail 29 - kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-upscaling,Fail 30 - kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling,Fail 31 - kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs-downscaling,Fail 32 - kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs-upscaling,Fail 33 - kms_rotation_crc@bad-pixel-format,Fail 1 + api_intel_bb@blit-noreloc-keep-cache,Timeout 2 + api_intel_bb@offset-control,Timeout 3 + api_intel_bb@render-ccs,Timeout 4 + core_getclient,Timeout 5 + core_hotunplug@hotreplug-lateclose,Timeout 6 + drm_read@short-buffer-block,Timeout 7 + drm_read@short-buffer-nonblock,Timeout 8 + dumb_buffer@map-uaf,Timeout 9 + gen3_render_tiledx_blits,Timeout 10 + gen7_exec_parse@basic-allocation,Timeout 11 + gen7_exec_parse@batch-without-end,Timeout 12 + gen9_exec_parse@batch-invalid-length,Timeout 13 + gen9_exec_parse@bb-secure,Timeout 14 + i915_module_load@load,Fail 15 + i915_module_load@reload,Fail 16 + i915_module_load@reload-no-display,Fail 17 + i915_module_load@resize-bar,Fail 18 + i915_pciid,Timeout 19 + i915_query@engine-info,Timeout 20 + kms_lease@lease-uevent,Fail 34 21 kms_rotation_crc@multiplane-rotation,Fail 35 - kms_rotation_crc@multiplane-rotation-cropping-bottom,Fail 36 - kms_rotation_crc@multiplane-rotation-cropping-top,Fail 22 + perf@i915-ref-count,Fail 23 + perf_pmu@busy,Timeout 24 + perf_pmu@enable-race,Timeout 25 + perf_pmu@event-wait,Timeout 26 + perf_pmu@gt-awake,Timeout 27 + perf_pmu@module-unload,Fail 28 + perf_pmu@rc6,Crash 29 + prime_mmap@test_map_unmap,Timeout 30 + prime_self_import@basic-with_one_bo,Timeout 31 + syncobj_basic@bad-destroy,Timeout 32 + syncobj_eventfd@invalid-bad-pad,Timeout 33 + syncobj_wait@invalid-multi-wait-unsubmitted-signaled,Timeout 34 + syncobj_wait@invalid-signal-illegal-handle,Timeout 35 + syncobj_wait@invalid-single-wait-all-unsubmitted,Timeout 36 + syncobj_wait@multi-wait-all-submitted,Timeout 37 + syncobj_wait@multi-wait-for-submit-submitted-signaled,Timeout 38 + syncobj_wait@wait-any-complex,Timeout 39 + syncobj_wait@wait-delayed-signal,Timeout 40 + xe_module_load@force-load,Fail 41 + xe_module_load@load,Fail 42 + xe_module_load@reload,Fail 43 + xe_module_load@reload-no-display,Fail
+26
drivers/gpu/drm/ci/xfails/i915-tgl-skips.txt
··· 9 9 10 10 # This is generating kernel oops with divide error 11 11 kms_plane_scaling@invalid-parameters 12 + 13 + # Skip driver specific tests 14 + ^amdgpu.* 15 + msm_.* 16 + nouveau_.* 17 + panfrost_.* 18 + ^v3d.* 19 + ^vc4.* 20 + ^vmwgfx* 21 + 22 + # GEM tests takes ~1000 hours, so skip it 23 + gem_.* 24 + 25 + # Kernel panic 26 + drm_fdinfo.* 27 + 28 + # Hangs the machine and timeout occurs 29 + i915_pm_rc6_residency.* 30 + i915_suspend.* 31 + sysfs_heartbeat_interval.* 32 + syncobj_timeline.* 33 + sysfs_timeslice_duration.* 34 + syncobj_wait.* 35 + 36 + # Kernel panic and test hangs with multiple kms tests 37 + kms_.*
+40 -23
drivers/gpu/drm/ci/xfails/i915-whl-fails.txt
··· 1 - kms_bw@linear-tiling-2-displays-1920x1080p,Fail 2 - kms_bw@linear-tiling-2-displays-2560x1440p,Fail 3 - kms_bw@linear-tiling-2-displays-3840x2160p,Fail 4 - kms_bw@linear-tiling-3-displays-1920x1080p,Fail 5 - kms_bw@linear-tiling-3-displays-2560x1440p,Fail 6 - kms_bw@linear-tiling-3-displays-3840x2160p,Fail 7 - kms_bw@linear-tiling-4-displays-1920x1080p,Fail 8 - kms_bw@linear-tiling-4-displays-2560x1440p,Fail 9 - kms_bw@linear-tiling-4-displays-3840x2160p,Fail 10 - kms_fbcon_fbt@fbc,Fail 11 - kms_fbcon_fbt@fbc-suspend,Fail 1 + core_setmaster@master-drop-set-user,Fail 2 + core_setmaster_vs_auth,Fail 3 + i915_module_load@load,Fail 4 + i915_module_load@reload,Fail 5 + i915_module_load@reload-no-display,Fail 6 + i915_module_load@resize-bar,Fail 7 + i915_pm_rpm@gem-execbuf-stress,Timeout 8 + i915_pm_rpm@module-reload,Fail 9 + i915_pm_rpm@system-suspend-execbuf,Timeout 10 + kms_async_flips@invalid-async-flip,Timeout 11 + kms_atomic_transition@modeset-transition-fencing,Timeout 12 + kms_big_fb@linear-16bpp-rotate-0,Fail 13 + kms_big_fb@linear-16bpp-rotate-180,Fail 14 + kms_big_fb@linear-32bpp-rotate-0,Fail 15 + kms_big_fb@linear-32bpp-rotate-180,Fail 16 + kms_big_fb@linear-8bpp-rotate-0,Fail 17 + kms_big_fb@linear-8bpp-rotate-180,Fail 18 + kms_big_fb@linear-max-hw-stride-32bpp-rotate-0,Fail 19 + kms_ccs@crc-primary-rotation-180-yf-tiled-ccs,Timeout 20 + kms_dirtyfb@default-dirtyfb-ioctl,Fail 21 + kms_draw_crc@draw-method-render,Fail 22 + kms_fb_coherency@memset-crc,Crash 12 23 kms_flip_scaled_crc@flip-32bpp-linear-to-64bpp-linear-downscaling,Fail 13 24 kms_flip_scaled_crc@flip-32bpp-linear-to-64bpp-linear-upscaling,Fail 14 25 kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling,Fail ··· 29 18 kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling,Fail 30 19 kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-upscaling,Fail 31 20 kms_flip_scaled_crc@flip-64bpp-linear-to-16bpp-linear-downscaling,Fail 32 - kms_flip_scaled_crc@flip-64bpp-linear-to-16bpp-linear-upscaling,Fail 33 - kms_flip_scaled_crc@flip-64bpp-linear-to-32bpp-linear-downscaling,Fail 34 21 kms_flip_scaled_crc@flip-64bpp-linear-to-32bpp-linear-upscaling,Fail 35 22 kms_flip_scaled_crc@flip-64bpp-xtile-to-16bpp-xtile-downscaling,Fail 36 23 kms_flip_scaled_crc@flip-64bpp-xtile-to-16bpp-xtile-upscaling,Fail ··· 40 31 kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-upscaling,Fail 41 32 kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling,Fail 42 33 kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs-downscaling,Fail 43 - kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs-upscaling,Fail 44 34 kms_frontbuffer_tracking@fbc-tiling-linear,Fail 35 + kms_lease@lease-uevent,Fail 45 36 kms_plane_alpha_blend@alpha-basic,Fail 46 37 kms_plane_alpha_blend@alpha-opaque-fb,Fail 47 38 kms_plane_alpha_blend@alpha-transparent-fb,Fail 48 39 kms_plane_alpha_blend@constant-alpha-max,Fail 49 - kms_plane_alpha_blend@pipe-A-alpha-opaque-fb,Fail 50 - kms_plane_alpha_blend@pipe-A-alpha-transparent-fb,Fail 51 - kms_plane_alpha_blend@pipe-A-constant-alpha-max,Fail 52 - kms_plane_alpha_blend@pipe-B-alpha-opaque-fb,Fail 53 - kms_plane_alpha_blend@pipe-B-alpha-transparent-fb,Fail 54 - kms_plane_alpha_blend@pipe-B-constant-alpha-max,Fail 55 - kms_plane_alpha_blend@pipe-C-alpha-opaque-fb,Fail 56 - kms_plane_alpha_blend@pipe-C-alpha-transparent-fb,Fail 57 - kms_plane_alpha_blend@pipe-C-constant-alpha-max,Fail 40 + kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation,Timeout 41 + kms_pm_rpm@modeset-stress-extra-wait,Timeout 42 + kms_pm_rpm@universal-planes,Timeout 43 + kms_pm_rpm@universal-planes-dpms,Timeout 44 + perf@i915-ref-count,Fail 45 + perf_pmu@module-unload,Fail 46 + perf_pmu@rc6,Crash 47 + perf_pmu@rc6-suspend,Crash 48 + sysfs_heartbeat_interval@long,Timeout 49 + sysfs_heartbeat_interval@off,Timeout 50 + sysfs_preempt_timeout@off,Timeout 51 + sysfs_timeslice_duration@off,Timeout 52 + xe_module_load@force-load,Fail 53 + xe_module_load@load,Fail 54 + xe_module_load@many-reload,Fail 55 + xe_module_load@reload,Fail 56 + xe_module_load@reload-no-display,Fail
+6
drivers/gpu/drm/ci/xfails/i915-whl-flakes.txt
··· 1 + # Board Name: dell-latitude-5400-8665U-sarien 2 + # Bug Report: https://lore.kernel.org/intel-gfx/af4ca4df-a3ef-4943-bdbf-4c3af2c333af@collabora.com/T/#u 3 + # IGT Version: 1.28-g0df7b9b97 4 + # Linux Version: 6.9.0-rc7 5 + # Failure Rate: 50 6 + kms_pm_rpm@modeset-lpsp-stress
+20
drivers/gpu/drm/ci/xfails/i915-whl-skips.txt
··· 1 1 # This is generating kernel oops with divide error 2 2 kms_plane_scaling@invalid-parameters 3 + 4 + # Skip driver specific tests 5 + ^amdgpu.* 6 + msm_.* 7 + nouveau_.* 8 + panfrost_.* 9 + ^v3d.* 10 + ^vc4.* 11 + ^vmwgfx* 12 + 13 + # GEM tests takes ~1000 hours, so skip it 14 + gem_.* 15 + 16 + # Hangs the machine and timeout occurs 17 + i915_pm_rc6_residency.* 18 + i915_suspend.* 19 + kms_flip.* 20 + 21 + # Kernel panic 22 + drm_fdinfo.*
+12 -18
drivers/gpu/drm/ci/xfails/mediatek-mt8173-fails.txt
··· 1 + device_reset@cold-reset-bound,Fail 2 + device_reset@reset-bound,Fail 3 + device_reset@unbind-cold-reset-rebind,Fail 4 + device_reset@unbind-reset-rebind,Fail 5 + dumb_buffer@invalid-bpp,Fail 6 + fbdev@eof,Fail 7 + fbdev@read,Fail 8 + fbdev@unaligned-write,Fail 1 9 kms_3d,Fail 2 10 kms_bw@linear-tiling-1-displays-1920x1080p,Fail 11 + kms_bw@linear-tiling-1-displays-2160x1440p,Fail 3 12 kms_bw@linear-tiling-1-displays-2560x1440p,Fail 4 13 kms_bw@linear-tiling-1-displays-3840x2160p,Fail 5 14 kms_bw@linear-tiling-2-displays-1920x1080p,Fail 15 + kms_bw@linear-tiling-2-displays-2160x1440p,Fail 6 16 kms_bw@linear-tiling-2-displays-2560x1440p,Fail 7 17 kms_bw@linear-tiling-2-displays-3840x2160p,Fail 8 - kms_bw@linear-tiling-3-displays-1920x1080p,Fail 9 - kms_bw@linear-tiling-3-displays-2560x1440p,Fail 10 - kms_bw@linear-tiling-3-displays-3840x2160p,Fail 11 18 kms_color@invalid-gamma-lut-sizes,Fail 12 - kms_color@pipe-A-invalid-gamma-lut-sizes,Fail 13 - kms_color@pipe-B-invalid-gamma-lut-sizes,Fail 14 19 kms_cursor_legacy@cursor-vs-flip-atomic,Fail 15 20 kms_cursor_legacy@cursor-vs-flip-legacy,Fail 16 21 kms_flip@flip-vs-modeset-vs-hang,Fail 17 22 kms_flip@flip-vs-panning-vs-hang,Fail 18 23 kms_flip@flip-vs-suspend,Fail 19 24 kms_flip@flip-vs-suspend-interruptible,Fail 20 - kms_force_connector_basic@force-edid,Fail 21 - kms_force_connector_basic@force-load-detect,Fail 22 - kms_force_connector_basic@prune-stale-modes,Fail 23 - kms_hdmi_inject@inject-4k,Fail 24 - kms_plane_scaling@planes-upscale-20x20,Fail 25 - kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25,Fail 26 - kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5,Fail 27 - kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-75,Fail 28 - kms_plane_scaling@upscale-with-modifier-20x20,Fail 29 - kms_plane_scaling@upscale-with-pixel-format-20x20,Fail 30 - kms_plane_scaling@upscale-with-rotation-20x20,Fail 25 + kms_lease@lease-uevent,Fail 31 26 kms_properties@get_properties-sanity-atomic,Fail 32 27 kms_properties@plane-properties-atomic,Fail 33 28 kms_properties@plane-properties-legacy,Fail 34 29 kms_rmfb@close-fd,Fail 35 - kms_selftest@drm_format,Timeout 36 - kms_selftest@drm_format_helper,Timeout 30 + tools_test@tools_test,Fail
+11
drivers/gpu/drm/ci/xfails/mediatek-mt8173-flakes.txt
··· 1 + # Board Name: mt8173-elm-hana 2 + # Bug Report: https://lore.kernel.org/linux-mediatek/0b2a1899-15dd-42fa-8f63-ea0ca28dbb17@collabora.com/T/#u 3 + # IGT Version: 1.28-g0df7b9b97 4 + # Linux Version: 6.9.0-rc7 5 + # Failure Rate: 50 6 + core_setmaster_vs_auth 7 + dumb_buffer@create-clear 8 + fbdev@unaligned-write 9 + fbdev@write 10 + kms_cursor_legacy@cursor-vs-flip-atomic-transitions 11 + kms_prop_blob@invalid-set-prop
+16
drivers/gpu/drm/ci/xfails/mediatek-mt8173-skips.txt
··· 1 + # Skip driver specific tests 2 + ^amdgpu.* 3 + msm_.* 4 + nouveau_.* 5 + panfrost_.* 6 + ^v3d.* 7 + ^vc4.* 8 + ^vmwgfx* 9 + 10 + # Skip intel specific tests 11 + gem_.* 12 + i915_.* 13 + 14 + # Currently fails and causes coverage loss for other tests 15 + # since core_getversion also fails. 16 + core_hotunplug.*
+8 -13
drivers/gpu/drm/ci/xfails/mediatek-mt8183-fails.txt
··· 1 - kms_addfb_basic@addfb25-bad-modifier,Fail 2 - kms_bw@linear-tiling-1-displays-2560x1440p,Fail 3 - kms_bw@linear-tiling-2-displays-1920x1080p,Fail 4 - kms_bw@linear-tiling-2-displays-2560x1440p,Fail 5 - kms_bw@linear-tiling-2-displays-3840x2160p,Fail 6 - kms_bw@linear-tiling-3-displays-2560x1440p,Fail 7 - kms_bw@linear-tiling-3-displays-3840x2160p,Fail 8 - kms_color@pipe-A-invalid-gamma-lut-sizes,Fail 9 - kms_plane_cursor@overlay,Fail 10 - kms_plane_cursor@primary,Fail 11 - kms_plane_cursor@viewport,Fail 12 - kms_plane_scaling@upscale-with-rotation-20x20,Fail 13 - kms_rmfb@close-fd,Fail 1 + dumb_buffer@create-clear,Fail 2 + dumb_buffer@create-valid-dumb,Fail 3 + dumb_buffer@invalid-bpp,Fail 4 + dumb_buffer@map-invalid-size,Fail 5 + dumb_buffer@map-uaf,Fail 6 + dumb_buffer@map-valid,Fail 7 + panfrost_prime@gem-prime-import,Fail 8 + tools_test@tools_test,Fail
+18
drivers/gpu/drm/ci/xfails/mediatek-mt8183-skips.txt
··· 1 + # Skip driver specific tests 2 + ^amdgpu.* 3 + msm_.* 4 + nouveau_.* 5 + ^v3d.* 6 + ^vc4.* 7 + ^vmwgfx* 8 + 9 + # Skip intel specific tests 10 + gem_.* 11 + i915_.* 12 + 13 + # Panfrost is not a KMS driver, so skip the KMS tests 14 + kms_.* 15 + 16 + # Currently fails and causes coverage loss for other tests 17 + # since core_getversion also fails. 18 + core_hotunplug.*
+8 -16
drivers/gpu/drm/ci/xfails/meson-g12b-fails.txt
··· 1 - kms_3d,Fail 2 - kms_cursor_legacy@forked-bo,Fail 3 - kms_cursor_legacy@forked-move,Fail 4 - kms_cursor_legacy@single-bo,Fail 5 - kms_cursor_legacy@single-move,Fail 6 - kms_cursor_legacy@torture-bo,Fail 7 - kms_cursor_legacy@torture-move,Fail 8 - kms_force_connector_basic@force-edid,Fail 9 - kms_hdmi_inject@inject-4k,Fail 10 - kms_plane_cursor@overlay,Fail 11 - kms_plane_cursor@primary,Fail 12 - kms_plane_cursor@viewport,Fail 13 - kms_properties@connector-properties-atomic,Fail 14 - kms_properties@connector-properties-legacy,Fail 15 - kms_properties@get_properties-sanity-atomic,Fail 16 - kms_properties@get_properties-sanity-non-atomic,Fail 1 + dumb_buffer@create-clear,Fail 2 + dumb_buffer@create-valid-dumb,Fail 3 + dumb_buffer@invalid-bpp,Fail 4 + dumb_buffer@map-invalid-size,Fail 5 + dumb_buffer@map-uaf,Fail 6 + dumb_buffer@map-valid,Fail 7 + panfrost_prime@gem-prime-import,Fail 8 + tools_test@tools_test,Fail
+18
drivers/gpu/drm/ci/xfails/meson-g12b-skips.txt
··· 1 + # Skip driver specific tests 2 + ^amdgpu.* 3 + msm_.* 4 + nouveau_.* 5 + ^v3d.* 6 + ^vc4.* 7 + ^vmwgfx* 8 + 9 + # Skip intel specific tests 10 + gem_.* 11 + i915_.* 12 + 13 + # Panfrost is not a KMS driver, so skip the KMS tests 14 + kms_.* 15 + 16 + # Currently fails and causes coverage loss for other tests 17 + # since core_getversion also fails. 18 + core_hotunplug.*
+10 -2
drivers/gpu/drm/ci/xfails/msm-apq8016-fails.txt
··· 1 + device_reset@cold-reset-bound,Fail 2 + device_reset@reset-bound,Fail 3 + device_reset@unbind-cold-reset-rebind,Fail 4 + device_reset@unbind-reset-rebind,Fail 5 + dumb_buffer@invalid-bpp,Fail 1 6 kms_3d,Fail 2 7 kms_addfb_basic@addfb25-bad-modifier,Fail 8 + kms_cursor_legacy@forked-move,Fail 9 + kms_cursor_legacy@single-bo,Fail 3 10 kms_cursor_legacy@torture-bo,Fail 11 + kms_cursor_legacy@torture-move,Fail 4 12 kms_force_connector_basic@force-edid,Fail 5 13 kms_hdmi_inject@inject-4k,Fail 6 - kms_selftest@drm_format,Timeout 7 - kms_selftest@drm_format_helper,Timeout 14 + kms_lease@lease-uevent,Fail 8 15 msm_mapping@ring,Fail 16 + tools_test@tools_test,Fail
+15
drivers/gpu/drm/ci/xfails/msm-apq8016-skips.txt
··· 1 + # Skip driver specific tests 2 + ^amdgpu.* 3 + nouveau_.* 4 + panfrost_.* 5 + ^v3d.* 6 + ^vc4.* 7 + ^vmwgfx* 8 + 9 + # Skip intel specific tests 10 + gem_.* 11 + i915_.* 12 + 13 + # Currently fails and causes coverage loss for other tests 14 + # since core_getversion also fails. 15 + core_hotunplug.*
+7
drivers/gpu/drm/ci/xfails/msm-apq8096-fails.txt
··· 1 + device_reset@cold-reset-bound,Fail 2 + device_reset@reset-bound,Fail 3 + device_reset@unbind-cold-reset-rebind,Fail 4 + device_reset@unbind-reset-rebind,Fail 5 + dumb_buffer@invalid-bpp,Fail 1 6 kms_3d,Fail 2 7 kms_addfb_basic@addfb25-bad-modifier,Fail 8 + kms_lease@lease-uevent,Fail 9 + tools_test@tools_test,Fail
+6
drivers/gpu/drm/ci/xfails/msm-apq8096-flakes.txt
··· 1 + # Board Name: apq8096-db820c 2 + # Bug Report: https://lore.kernel.org/linux-arm-msm/661483c8-ad82-400d-bcd8-e94986d20d7d@collabora.com/T/#u 3 + # IGT Version: 1.28-g0df7b9b97 4 + # Linux Version: 6.9.0-rc7 5 + # Failure Rate: 50 6 + dumb_buffer@create-clear
+24
drivers/gpu/drm/ci/xfails/msm-apq8096-skips.txt
··· 1 1 # Whole machine hangs 2 2 kms_cursor_legacy@all-pipes-torture-move 3 + 4 + # Skip driver specific tests 5 + ^amdgpu.* 6 + nouveau_.* 7 + panfrost_.* 8 + ^v3d.* 9 + ^vc4.* 10 + ^vmwgfx* 11 + 12 + # Skip intel specific tests 13 + gem_.* 14 + i915_.* 15 + 16 + # Currently fails and causes coverage loss for other tests 17 + # since core_getversion also fails. 18 + core_hotunplug.* 19 + 20 + # gpu fault 21 + # [IGT] msm_mapping: executing 22 + # [IGT] msm_mapping: starting subtest shadow 23 + # *** gpu fault: ttbr0=00000001030ea000 iova=0000000001074000 dir=WRITE type=PERMISSION source=1f030000 (0,0,0,0) 24 + # msm_mdp 901000.display-controller: RBBM | ME master split | status=0x701000B0 25 + # watchdog: BUG: soft lockup - CPU#0 stuck for 26s! [kworker/u16:3:46] 26 + msm_mapping@shadow
+174 -1
drivers/gpu/drm/ci/xfails/msm-sc7180-trogdor-kingoftown-fails.txt
··· 1 + device_reset@cold-reset-bound,Fail 2 + device_reset@reset-bound,Fail 3 + device_reset@unbind-cold-reset-rebind,Fail 4 + device_reset@unbind-reset-rebind,Fail 5 + dumb_buffer@invalid-bpp,Fail 6 + kms_atomic_transition@plane-primary-toggle-with-vblank-wait,Fail 1 7 kms_color@ctm-0-25,Fail 2 8 kms_color@ctm-0-50,Fail 3 9 kms_color@ctm-0-75,Fail 4 10 kms_color@ctm-blue-to-red,Fail 5 11 kms_color@ctm-green-to-red,Fail 12 + kms_color@ctm-max,Fail 6 13 kms_color@ctm-negative,Fail 7 14 kms_color@ctm-red-to-blue,Fail 8 15 kms_color@ctm-signed,Fail 16 + kms_content_protection@atomic,Crash 17 + kms_content_protection@atomic-dpms,Crash 18 + kms_content_protection@content-type-change,Crash 19 + kms_content_protection@lic-type-0,Crash 20 + kms_content_protection@lic-type-1,Crash 21 + kms_content_protection@srm,Crash 22 + kms_content_protection@type1,Crash 23 + kms_content_protection@uevent,Crash 24 + kms_cursor_crc@cursor-alpha-opaque,Fail 25 + kms_cursor_crc@cursor-alpha-transparent,Fail 26 + kms_cursor_crc@cursor-dpms,Fail 27 + kms_cursor_crc@cursor-offscreen-128x128,Fail 28 + kms_cursor_crc@cursor-offscreen-128x42,Fail 29 + kms_cursor_crc@cursor-offscreen-256x256,Fail 30 + kms_cursor_crc@cursor-offscreen-256x85,Fail 31 + kms_cursor_crc@cursor-offscreen-32x10,Fail 32 + kms_cursor_crc@cursor-offscreen-32x32,Fail 33 + kms_cursor_crc@cursor-offscreen-512x170,Fail 34 + kms_cursor_crc@cursor-offscreen-512x512,Fail 35 + kms_cursor_crc@cursor-offscreen-64x21,Fail 36 + kms_cursor_crc@cursor-offscreen-64x64,Fail 37 + kms_cursor_crc@cursor-onscreen-128x128,Fail 38 + kms_cursor_crc@cursor-onscreen-128x42,Fail 39 + kms_cursor_crc@cursor-onscreen-256x256,Fail 40 + kms_cursor_crc@cursor-onscreen-256x85,Fail 41 + kms_cursor_crc@cursor-onscreen-32x10,Fail 42 + kms_cursor_crc@cursor-onscreen-32x32,Fail 43 + kms_cursor_crc@cursor-onscreen-512x170,Fail 44 + kms_cursor_crc@cursor-onscreen-512x512,Fail 45 + kms_cursor_crc@cursor-onscreen-64x21,Fail 46 + kms_cursor_crc@cursor-onscreen-64x64,Fail 47 + kms_cursor_crc@cursor-random-128x128,Fail 48 + kms_cursor_crc@cursor-random-128x42,Fail 49 + kms_cursor_crc@cursor-random-256x256,Fail 50 + kms_cursor_crc@cursor-random-256x85,Fail 51 + kms_cursor_crc@cursor-random-32x10,Fail 52 + kms_cursor_crc@cursor-random-32x32,Fail 53 + kms_cursor_crc@cursor-random-512x170,Fail 54 + kms_cursor_crc@cursor-random-512x512,Fail 55 + kms_cursor_crc@cursor-random-64x21,Fail 56 + kms_cursor_crc@cursor-random-64x64,Fail 57 + kms_cursor_crc@cursor-rapid-movement-128x128,Fail 58 + kms_cursor_crc@cursor-rapid-movement-128x42,Fail 59 + kms_cursor_crc@cursor-rapid-movement-256x256,Fail 60 + kms_cursor_crc@cursor-rapid-movement-256x85,Fail 61 + kms_cursor_crc@cursor-rapid-movement-32x10,Fail 62 + kms_cursor_crc@cursor-rapid-movement-32x32,Fail 63 + kms_cursor_crc@cursor-rapid-movement-512x170,Fail 64 + kms_cursor_crc@cursor-rapid-movement-512x512,Fail 65 + kms_cursor_crc@cursor-rapid-movement-64x21,Fail 66 + kms_cursor_crc@cursor-rapid-movement-64x64,Fail 67 + kms_cursor_crc@cursor-size-change,Fail 68 + kms_cursor_crc@cursor-sliding-128x128,Fail 69 + kms_cursor_crc@cursor-sliding-128x42,Fail 70 + kms_cursor_crc@cursor-sliding-256x256,Fail 71 + kms_cursor_crc@cursor-sliding-256x85,Fail 72 + kms_cursor_crc@cursor-sliding-32x10,Fail 73 + kms_cursor_crc@cursor-sliding-32x32,Fail 74 + kms_cursor_crc@cursor-sliding-512x170,Fail 75 + kms_cursor_crc@cursor-sliding-512x512,Fail 76 + kms_cursor_crc@cursor-sliding-64x21,Fail 77 + kms_cursor_crc@cursor-sliding-64x64,Fail 78 + kms_cursor_edge_walk@128x128-left-edge,Fail 79 + kms_cursor_edge_walk@128x128-right-edge,Fail 80 + kms_cursor_edge_walk@128x128-top-bottom,Fail 81 + kms_cursor_edge_walk@128x128-top-edge,Fail 82 + kms_cursor_edge_walk@256x256-left-edge,Fail 83 + kms_cursor_edge_walk@256x256-right-edge,Fail 84 + kms_cursor_edge_walk@256x256-top-bottom,Fail 85 + kms_cursor_edge_walk@256x256-top-edge,Fail 86 + kms_cursor_edge_walk@64x64-left-edge,Fail 87 + kms_cursor_edge_walk@64x64-right-edge,Fail 88 + kms_cursor_edge_walk@64x64-top-bottom,Fail 89 + kms_cursor_edge_walk@64x64-top-edge,Fail 90 + kms_cursor_legacy@2x-cursor-vs-flip-atomic,Fail 91 + kms_cursor_legacy@2x-cursor-vs-flip-legacy,Fail 92 + kms_cursor_legacy@2x-flip-vs-cursor-atomic,Fail 93 + kms_cursor_legacy@2x-flip-vs-cursor-legacy,Fail 94 + kms_cursor_legacy@2x-long-cursor-vs-flip-atomic,Fail 95 + kms_cursor_legacy@2x-long-cursor-vs-flip-legacy,Fail 96 + kms_cursor_legacy@2x-long-flip-vs-cursor-atomic,Fail 97 + kms_cursor_legacy@2x-long-flip-vs-cursor-legacy,Fail 9 98 kms_cursor_legacy@cursor-vs-flip-toggle,Fail 10 99 kms_cursor_legacy@cursor-vs-flip-varying-size,Fail 100 + kms_display_modes@extended-mode-basic,Fail 101 + kms_flip@2x-flip-vs-modeset-vs-hang,Fail 102 + kms_flip@2x-flip-vs-panning-vs-hang,Fail 103 + kms_flip@absolute-wf_vblank,Fail 104 + kms_flip@absolute-wf_vblank-interruptible,Fail 105 + kms_flip@basic-flip-vs-wf_vblank,Fail 106 + kms_flip@basic-plain-flip,Fail 107 + kms_flip@blocking-absolute-wf_vblank,Fail 108 + kms_flip@blocking-absolute-wf_vblank-interruptible,Fail 109 + kms_flip@blocking-wf_vblank,Fail 110 + kms_flip@busy-flip,Fail 111 + kms_flip@dpms-off-confusion,Fail 112 + kms_flip@dpms-off-confusion-interruptible,Fail 113 + kms_flip@dpms-vs-vblank-race,Fail 114 + kms_flip@dpms-vs-vblank-race-interruptible,Fail 115 + kms_flip@flip-vs-absolute-wf_vblank,Fail 116 + kms_flip@flip-vs-absolute-wf_vblank-interruptible,Fail 117 + kms_flip@flip-vs-blocking-wf-vblank,Fail 118 + kms_flip@flip-vs-expired-vblank,Fail 119 + kms_flip@flip-vs-expired-vblank-interruptible,Fail 11 120 kms_flip@flip-vs-modeset-vs-hang,Fail 121 + kms_flip@flip-vs-panning,Fail 122 + kms_flip@flip-vs-panning-interruptible,Fail 12 123 kms_flip@flip-vs-panning-vs-hang,Fail 124 + kms_flip@flip-vs-rmfb,Fail 125 + kms_flip@flip-vs-rmfb-interruptible,Fail 126 + kms_flip@flip-vs-wf_vblank-interruptible,Fail 127 + kms_flip@modeset-vs-vblank-race,Fail 128 + kms_flip@modeset-vs-vblank-race-interruptible,Fail 129 + kms_flip@plain-flip-fb-recreate,Fail 130 + kms_flip@plain-flip-fb-recreate-interruptible,Fail 131 + kms_flip@plain-flip-interruptible,Fail 132 + kms_flip@plain-flip-ts-check,Fail 133 + kms_flip@plain-flip-ts-check-interruptible,Fail 134 + kms_flip@wf_vblank-ts-check,Fail 135 + kms_flip@wf_vblank-ts-check-interruptible,Fail 136 + kms_lease@cursor-implicit-plane,Fail 137 + kms_lease@lease-uevent,Fail 138 + kms_lease@page-flip-implicit-plane,Fail 139 + kms_lease@setcrtc-implicit-plane,Fail 140 + kms_lease@simple-lease,Fail 141 + kms_multipipe_modeset@basic-max-pipe-crc-check,Fail 13 142 kms_pipe_crc_basic@compare-crc-sanitycheck-nv12,Fail 143 + kms_pipe_crc_basic@compare-crc-sanitycheck-xr24,Fail 144 + kms_pipe_crc_basic@disable-crc-after-crtc,Fail 145 + kms_pipe_crc_basic@nonblocking-crc,Fail 146 + kms_pipe_crc_basic@nonblocking-crc-frame-sequence,Fail 147 + kms_pipe_crc_basic@read-crc,Fail 148 + kms_pipe_crc_basic@read-crc-frame-sequence,Fail 149 + kms_plane@pixel-format,Fail 150 + kms_plane@pixel-format-source-clamping,Fail 151 + kms_plane@plane-panning-bottom-right,Fail 152 + kms_plane@plane-panning-top-left,Fail 153 + kms_plane@plane-position-covered,Fail 154 + kms_plane@plane-position-hole,Fail 155 + kms_plane@plane-position-hole-dpms,Fail 14 156 kms_plane_alpha_blend@alpha-7efc,Fail 157 + kms_plane_alpha_blend@alpha-basic,Fail 158 + kms_plane_alpha_blend@alpha-opaque-fb,Fail 159 + kms_plane_alpha_blend@alpha-transparent-fb,Fail 160 + kms_plane_alpha_blend@constant-alpha-max,Fail 161 + kms_plane_alpha_blend@constant-alpha-mid,Fail 162 + kms_plane_alpha_blend@constant-alpha-min,Fail 15 163 kms_plane_alpha_blend@coverage-7efc,Fail 16 164 kms_plane_alpha_blend@coverage-vs-premult-vs-constant,Fail 165 + kms_plane_cursor@primary,Fail 166 + kms_plane_lowres@tiling-none,Fail 167 + kms_plane_multiple@tiling-none,Fail 17 168 kms_rmfb@close-fd,Fail 18 - kms_universal_plane@universal-plane-sanity,Fail 169 + kms_rotation_crc@cursor-rotation-180,Fail 170 + kms_rotation_crc@primary-rotation-180,Fail 171 + kms_sequence@get-busy,Fail 172 + kms_sequence@get-forked,Fail 173 + kms_sequence@get-forked-busy,Fail 174 + kms_sequence@get-idle,Fail 175 + kms_sequence@queue-busy,Fail 176 + kms_sequence@queue-idle,Fail 177 + kms_vblank@accuracy-idle,Fail 178 + kms_vblank@crtc-id,Fail 179 + kms_vblank@query-busy,Fail 180 + kms_vblank@query-forked,Fail 181 + kms_vblank@query-forked-busy,Fail 182 + kms_vblank@query-idle,Fail 183 + kms_vblank@ts-continuation-dpms-rpm,Fail 184 + kms_vblank@ts-continuation-idle,Fail 185 + kms_vblank@ts-continuation-modeset,Fail 186 + kms_vblank@ts-continuation-modeset-rpm,Fail 187 + kms_vblank@wait-busy,Fail 188 + kms_vblank@wait-forked,Fail 189 + kms_vblank@wait-forked-busy,Fail 190 + kms_vblank@wait-idle,Fail 191 + tools_test@tools_test,Fail
+8
drivers/gpu/drm/ci/xfails/msm-sc7180-trogdor-kingoftown-flakes.txt
··· 1 + # Board Name: sc7180-trogdor-kingoftown 2 + # Bug Report: https://lore.kernel.org/linux-arm-msm/661483c8-ad82-400d-bcd8-e94986d20d7d@collabora.com/T/#u 3 + # IGT Version: 1.28-g0df7b9b97 4 + # Linux Version: 6.9.0-rc7 5 + # Failure Rate: 50 6 + msm_mapping@shadow 7 + msm_shrink@copy-gpu-oom-32 8 + msm_shrink@copy-gpu-oom-8
+19
drivers/gpu/drm/ci/xfails/msm-sc7180-trogdor-kingoftown-skips.txt
··· 1 1 # Suspend to RAM seems to be broken on this machine 2 2 .*suspend.* 3 + 4 + # Skip driver specific tests 5 + ^amdgpu.* 6 + nouveau_.* 7 + panfrost_.* 8 + ^v3d.* 9 + ^vc4.* 10 + ^vmwgfx* 11 + 12 + # Skip intel specific tests 13 + gem_.* 14 + i915_.* 15 + 16 + # Currently fails and causes coverage loss for other tests 17 + # since core_getversion also fails. 18 + core_hotunplug.* 19 + 20 + # Timeout occurs 21 + kms_flip@2x-wf_vblank-ts-check
+174 -1
drivers/gpu/drm/ci/xfails/msm-sc7180-trogdor-lazor-limozeen-fails.txt
··· 1 + device_reset@cold-reset-bound,Fail 2 + device_reset@reset-bound,Fail 3 + device_reset@unbind-cold-reset-rebind,Fail 4 + device_reset@unbind-reset-rebind,Fail 5 + dumb_buffer@invalid-bpp,Fail 6 + kms_atomic_transition@plane-primary-toggle-with-vblank-wait,Fail 1 7 kms_color@ctm-0-25,Fail 2 8 kms_color@ctm-0-50,Fail 3 9 kms_color@ctm-0-75,Fail 4 10 kms_color@ctm-blue-to-red,Fail 5 11 kms_color@ctm-green-to-red,Fail 12 + kms_color@ctm-max,Fail 6 13 kms_color@ctm-negative,Fail 7 14 kms_color@ctm-red-to-blue,Fail 8 15 kms_color@ctm-signed,Fail 16 + kms_content_protection@atomic,Crash 17 + kms_content_protection@atomic-dpms,Crash 18 + kms_content_protection@content-type-change,Crash 19 + kms_content_protection@lic-type-0,Crash 20 + kms_content_protection@lic-type-1,Crash 21 + kms_content_protection@srm,Crash 22 + kms_content_protection@type1,Crash 23 + kms_content_protection@uevent,Crash 24 + kms_cursor_crc@cursor-alpha-opaque,Fail 25 + kms_cursor_crc@cursor-alpha-transparent,Fail 26 + kms_cursor_crc@cursor-dpms,Fail 27 + kms_cursor_crc@cursor-offscreen-128x128,Fail 28 + kms_cursor_crc@cursor-offscreen-128x42,Fail 29 + kms_cursor_crc@cursor-offscreen-256x256,Fail 30 + kms_cursor_crc@cursor-offscreen-256x85,Fail 31 + kms_cursor_crc@cursor-offscreen-32x10,Fail 32 + kms_cursor_crc@cursor-offscreen-32x32,Fail 33 + kms_cursor_crc@cursor-offscreen-512x170,Fail 34 + kms_cursor_crc@cursor-offscreen-512x512,Fail 35 + kms_cursor_crc@cursor-offscreen-64x21,Fail 36 + kms_cursor_crc@cursor-offscreen-64x64,Fail 37 + kms_cursor_crc@cursor-onscreen-128x128,Fail 38 + kms_cursor_crc@cursor-onscreen-128x42,Fail 39 + kms_cursor_crc@cursor-onscreen-256x256,Fail 40 + kms_cursor_crc@cursor-onscreen-256x85,Fail 41 + kms_cursor_crc@cursor-onscreen-32x10,Fail 42 + kms_cursor_crc@cursor-onscreen-32x32,Fail 43 + kms_cursor_crc@cursor-onscreen-512x170,Fail 44 + kms_cursor_crc@cursor-onscreen-512x512,Fail 45 + kms_cursor_crc@cursor-onscreen-64x21,Fail 46 + kms_cursor_crc@cursor-onscreen-64x64,Fail 47 + kms_cursor_crc@cursor-random-128x128,Fail 48 + kms_cursor_crc@cursor-random-128x42,Fail 49 + kms_cursor_crc@cursor-random-256x256,Fail 50 + kms_cursor_crc@cursor-random-256x85,Fail 51 + kms_cursor_crc@cursor-random-32x10,Fail 52 + kms_cursor_crc@cursor-random-32x32,Fail 53 + kms_cursor_crc@cursor-random-512x170,Fail 54 + kms_cursor_crc@cursor-random-512x512,Fail 55 + kms_cursor_crc@cursor-random-64x21,Fail 56 + kms_cursor_crc@cursor-random-64x64,Fail 57 + kms_cursor_crc@cursor-rapid-movement-128x128,Fail 58 + kms_cursor_crc@cursor-rapid-movement-128x42,Fail 59 + kms_cursor_crc@cursor-rapid-movement-256x256,Fail 60 + kms_cursor_crc@cursor-rapid-movement-256x85,Fail 61 + kms_cursor_crc@cursor-rapid-movement-32x10,Fail 62 + kms_cursor_crc@cursor-rapid-movement-32x32,Fail 63 + kms_cursor_crc@cursor-rapid-movement-512x170,Fail 64 + kms_cursor_crc@cursor-rapid-movement-512x512,Fail 65 + kms_cursor_crc@cursor-rapid-movement-64x21,Fail 66 + kms_cursor_crc@cursor-rapid-movement-64x64,Fail 67 + kms_cursor_crc@cursor-size-change,Fail 68 + kms_cursor_crc@cursor-sliding-128x128,Fail 69 + kms_cursor_crc@cursor-sliding-128x42,Fail 70 + kms_cursor_crc@cursor-sliding-256x256,Fail 71 + kms_cursor_crc@cursor-sliding-256x85,Fail 72 + kms_cursor_crc@cursor-sliding-32x10,Fail 73 + kms_cursor_crc@cursor-sliding-32x32,Fail 74 + kms_cursor_crc@cursor-sliding-512x170,Fail 75 + kms_cursor_crc@cursor-sliding-512x512,Fail 76 + kms_cursor_crc@cursor-sliding-64x21,Fail 77 + kms_cursor_crc@cursor-sliding-64x64,Fail 78 + kms_cursor_edge_walk@128x128-left-edge,Fail 79 + kms_cursor_edge_walk@128x128-right-edge,Fail 80 + kms_cursor_edge_walk@128x128-top-bottom,Fail 81 + kms_cursor_edge_walk@128x128-top-edge,Fail 82 + kms_cursor_edge_walk@256x256-left-edge,Fail 83 + kms_cursor_edge_walk@256x256-right-edge,Fail 84 + kms_cursor_edge_walk@256x256-top-bottom,Fail 85 + kms_cursor_edge_walk@256x256-top-edge,Fail 86 + kms_cursor_edge_walk@64x64-left-edge,Fail 87 + kms_cursor_edge_walk@64x64-right-edge,Fail 88 + kms_cursor_edge_walk@64x64-top-bottom,Fail 89 + kms_cursor_edge_walk@64x64-top-edge,Fail 90 + kms_cursor_legacy@2x-cursor-vs-flip-atomic,Fail 91 + kms_cursor_legacy@2x-cursor-vs-flip-legacy,Fail 92 + kms_cursor_legacy@2x-flip-vs-cursor-atomic,Fail 93 + kms_cursor_legacy@2x-flip-vs-cursor-legacy,Fail 94 + kms_cursor_legacy@2x-long-cursor-vs-flip-atomic,Fail 95 + kms_cursor_legacy@2x-long-cursor-vs-flip-legacy,Fail 96 + kms_cursor_legacy@2x-long-flip-vs-cursor-atomic,Fail 97 + kms_cursor_legacy@2x-long-flip-vs-cursor-legacy,Fail 9 98 kms_cursor_legacy@cursor-vs-flip-toggle,Fail 10 99 kms_cursor_legacy@cursor-vs-flip-varying-size,Fail 100 + kms_display_modes@extended-mode-basic,Fail 101 + kms_flip@2x-flip-vs-modeset-vs-hang,Fail 102 + kms_flip@2x-flip-vs-panning-vs-hang,Fail 103 + kms_flip@absolute-wf_vblank,Fail 104 + kms_flip@absolute-wf_vblank-interruptible,Fail 105 + kms_flip@basic-flip-vs-wf_vblank,Fail 106 + kms_flip@basic-plain-flip,Fail 107 + kms_flip@blocking-absolute-wf_vblank,Fail 108 + kms_flip@blocking-absolute-wf_vblank-interruptible,Fail 109 + kms_flip@blocking-wf_vblank,Fail 110 + kms_flip@busy-flip,Fail 111 + kms_flip@dpms-off-confusion,Fail 112 + kms_flip@dpms-off-confusion-interruptible,Fail 113 + kms_flip@dpms-vs-vblank-race,Fail 114 + kms_flip@dpms-vs-vblank-race-interruptible,Fail 115 + kms_flip@flip-vs-absolute-wf_vblank,Fail 116 + kms_flip@flip-vs-absolute-wf_vblank-interruptible,Fail 117 + kms_flip@flip-vs-blocking-wf-vblank,Fail 118 + kms_flip@flip-vs-expired-vblank,Fail 119 + kms_flip@flip-vs-expired-vblank-interruptible,Fail 11 120 kms_flip@flip-vs-modeset-vs-hang,Fail 121 + kms_flip@flip-vs-panning,Fail 122 + kms_flip@flip-vs-panning-interruptible,Fail 12 123 kms_flip@flip-vs-panning-vs-hang,Fail 124 + kms_flip@flip-vs-rmfb,Fail 125 + kms_flip@flip-vs-rmfb-interruptible,Fail 126 + kms_flip@flip-vs-wf_vblank-interruptible,Fail 127 + kms_flip@modeset-vs-vblank-race,Fail 128 + kms_flip@modeset-vs-vblank-race-interruptible,Fail 129 + kms_flip@plain-flip-fb-recreate,Fail 130 + kms_flip@plain-flip-fb-recreate-interruptible,Fail 131 + kms_flip@plain-flip-interruptible,Fail 132 + kms_flip@plain-flip-ts-check,Fail 133 + kms_flip@plain-flip-ts-check-interruptible,Fail 134 + kms_flip@wf_vblank-ts-check,Fail 135 + kms_flip@wf_vblank-ts-check-interruptible,Fail 136 + kms_lease@cursor-implicit-plane,Fail 137 + kms_lease@lease-uevent,Fail 138 + kms_lease@page-flip-implicit-plane,Fail 139 + kms_lease@setcrtc-implicit-plane,Fail 140 + kms_lease@simple-lease,Fail 141 + kms_multipipe_modeset@basic-max-pipe-crc-check,Fail 13 142 kms_pipe_crc_basic@compare-crc-sanitycheck-nv12,Fail 143 + kms_pipe_crc_basic@compare-crc-sanitycheck-xr24,Fail 144 + kms_pipe_crc_basic@disable-crc-after-crtc,Fail 145 + kms_pipe_crc_basic@nonblocking-crc,Fail 146 + kms_pipe_crc_basic@nonblocking-crc-frame-sequence,Fail 147 + kms_pipe_crc_basic@read-crc,Fail 148 + kms_pipe_crc_basic@read-crc-frame-sequence,Fail 149 + kms_plane@pixel-format,Fail 150 + kms_plane@pixel-format-source-clamping,Fail 151 + kms_plane@plane-panning-bottom-right,Fail 152 + kms_plane@plane-panning-top-left,Fail 153 + kms_plane@plane-position-covered,Fail 154 + kms_plane@plane-position-hole,Fail 155 + kms_plane@plane-position-hole-dpms,Fail 14 156 kms_plane_alpha_blend@alpha-7efc,Fail 157 + kms_plane_alpha_blend@alpha-basic,Fail 158 + kms_plane_alpha_blend@alpha-opaque-fb,Fail 159 + kms_plane_alpha_blend@alpha-transparent-fb,Fail 160 + kms_plane_alpha_blend@constant-alpha-max,Fail 161 + kms_plane_alpha_blend@constant-alpha-mid,Fail 162 + kms_plane_alpha_blend@constant-alpha-min,Fail 15 163 kms_plane_alpha_blend@coverage-7efc,Fail 16 164 kms_plane_alpha_blend@coverage-vs-premult-vs-constant,Fail 165 + kms_plane_cursor@primary,Fail 166 + kms_plane_lowres@tiling-none,Fail 167 + kms_plane_multiple@tiling-none,Fail 17 168 kms_rmfb@close-fd,Fail 18 - kms_universal_plane@universal-plane-sanity,Fail 169 + kms_rotation_crc@cursor-rotation-180,Fail 170 + kms_rotation_crc@primary-rotation-180,Fail 171 + kms_sequence@get-busy,Fail 172 + kms_sequence@get-forked,Fail 173 + kms_sequence@get-forked-busy,Fail 174 + kms_sequence@get-idle,Fail 175 + kms_sequence@queue-busy,Fail 176 + kms_sequence@queue-idle,Fail 177 + kms_vblank@accuracy-idle,Fail 178 + kms_vblank@crtc-id,Fail 179 + kms_vblank@query-busy,Fail 180 + kms_vblank@query-forked,Fail 181 + kms_vblank@query-forked-busy,Fail 182 + kms_vblank@query-idle,Fail 183 + kms_vblank@ts-continuation-dpms-rpm,Fail 184 + kms_vblank@ts-continuation-idle,Fail 185 + kms_vblank@ts-continuation-modeset,Fail 186 + kms_vblank@ts-continuation-modeset-rpm,Fail 187 + kms_vblank@wait-busy,Fail 188 + kms_vblank@wait-forked,Fail 189 + kms_vblank@wait-forked-busy,Fail 190 + kms_vblank@wait-idle,Fail 191 + tools_test@tools_test,Fail
+6
drivers/gpu/drm/ci/xfails/msm-sc7180-trogdor-lazor-limozeen-flakes.txt
··· 1 + # Board Name: sc7180-trogdor-lazor-limozeen-nots-r5 2 + # Bug Report: https://lore.kernel.org/linux-arm-msm/661483c8-ad82-400d-bcd8-e94986d20d7d@collabora.com/T/#u 3 + # IGT Version: 1.28-g0df7b9b97 4 + # Linux Version: 6.9.0-rc7 5 + # Failure Rate: 50 6 + msm_mapping@shadow
+16
drivers/gpu/drm/ci/xfails/msm-sc7180-trogdor-lazor-limozeen-skips.txt
··· 1 1 # Suspend to RAM seems to be broken on this machine 2 2 .*suspend.* 3 + 4 + # Skip driver specific tests 5 + ^amdgpu.* 6 + nouveau_.* 7 + panfrost_.* 8 + ^v3d.* 9 + ^vc4.* 10 + ^vmwgfx* 11 + 12 + # Skip intel specific tests 13 + gem_.* 14 + i915_.* 15 + 16 + # Currently fails and causes coverage loss for other tests 17 + # since core_getversion also fails. 18 + core_hotunplug.*
+7 -31
drivers/gpu/drm/ci/xfails/msm-sdm845-fails.txt
··· 1 + device_reset@cold-reset-bound,Fail 2 + device_reset@reset-bound,Fail 3 + device_reset@unbind-cold-reset-rebind,Fail 4 + device_reset@unbind-reset-rebind,Fail 5 + dumb_buffer@invalid-bpp,Fail 1 6 kms_color@ctm-0-25,Fail 2 7 kms_color@ctm-0-50,Fail 3 8 kms_color@ctm-0-75,Fail ··· 11 6 kms_color@ctm-negative,Fail 12 7 kms_color@ctm-red-to-blue,Fail 13 8 kms_color@ctm-signed,Fail 14 - kms_color@pipe-A-ctm-0-25,Fail 15 - kms_color@pipe-A-ctm-0-5,Fail 16 - kms_color@pipe-A-ctm-0-75,Fail 17 - kms_color@pipe-A-ctm-blue-to-red,Fail 18 - kms_color@pipe-A-ctm-green-to-red,Fail 19 - kms_color@pipe-A-ctm-max,Fail 20 - kms_color@pipe-A-ctm-negative,Fail 21 - kms_color@pipe-A-ctm-red-to-blue,Fail 22 - kms_color@pipe-A-legacy-gamma,Fail 23 - kms_cursor_legacy@basic-flip-after-cursor-atomic,Fail 24 - kms_cursor_legacy@basic-flip-after-cursor-varying-size,Fail 25 9 kms_cursor_legacy@basic-flip-before-cursor-atomic,Fail 26 10 kms_cursor_legacy@basic-flip-before-cursor-legacy,Fail 27 11 kms_cursor_legacy@cursor-vs-flip-atomic,Fail ··· 25 31 kms_cursor_legacy@flip-vs-cursor-legacy,Fail 26 32 kms_flip@flip-vs-modeset-vs-hang,Fail 27 33 kms_flip@flip-vs-panning-vs-hang,Fail 34 + kms_lease@lease-uevent,Fail 28 35 kms_pipe_crc_basic@compare-crc-sanitycheck-nv12,Fail 29 36 kms_plane_alpha_blend@alpha-7efc,Fail 30 37 kms_plane_alpha_blend@coverage-7efc,Fail 31 38 kms_plane_alpha_blend@coverage-vs-premult-vs-constant,Fail 32 - kms_plane_alpha_blend@pipe-A-alpha-7efc,Fail 33 - kms_plane_alpha_blend@pipe-A-coverage-7efc,Fail 34 - kms_plane_alpha_blend@pipe-A-coverage-vs-premult-vs-constant,Fail 35 39 kms_plane_cursor@overlay,Fail 36 - kms_plane_cursor@pipe-A-overlay-size-128,Fail 37 - kms_plane_cursor@pipe-A-overlay-size-256,Fail 38 - kms_plane_cursor@pipe-A-overlay-size-64,Fail 39 - kms_plane_cursor@pipe-A-viewport-size-128,Fail 40 - kms_plane_cursor@pipe-A-viewport-size-256,Fail 41 - kms_plane_cursor@pipe-A-viewport-size-64,Fail 42 40 kms_plane_cursor@viewport,Fail 43 - kms_plane_scaling@downscale-with-pixel-format-factor-0-25,Timeout 44 - kms_plane_scaling@downscale-with-pixel-format-factor-0-5,Timeout 45 - kms_plane_scaling@downscale-with-pixel-format-factor-0-75,Timeout 46 - kms_plane_scaling@plane-downscale-with-pixel-format-factor-0-25,Timeout 47 - kms_plane_scaling@plane-downscale-with-pixel-format-factor-0-5,Timeout 48 - kms_plane_scaling@plane-downscale-with-pixel-format-factor-0-75,Timeout 49 - kms_plane_scaling@plane-scaler-with-clipping-clamping-pixel-formats,Timeout 50 - kms_plane_scaling@plane-scaler-with-pixel-format-unity-scaling,Timeout 51 - kms_plane_scaling@planes-downscale-factor-0-25,Fail 52 - kms_plane_scaling@scaler-with-clipping-clamping,Timeout 53 - kms_plane_scaling@scaler-with-pixel-format-unity-scaling,Timeout 54 41 kms_rmfb@close-fd,Fail 42 + tools_test@tools_test,Fail
+11 -14
drivers/gpu/drm/ci/xfails/msm-sdm845-flakes.txt
··· 1 - # Board Name: msm:sdm845 2 - # Bug Report: https://lore.kernel.org/dri-devel/46287831-edfa-78e8-6055-d7a08831c445@collabora.com/T/#u 1 + # Board Name: sdm845-cheza-r3 2 + # Bug Report: https://lore.kernel.org/linux-arm-msm/661483c8-ad82-400d-bcd8-e94986d20d7d@collabora.com/T/#u 3 + # IGT Version: 1.28-g0df7b9b97 4 + # Linux Version: 6.9.0-rc7 3 5 # Failure Rate: 50 4 - # IGT Version: 1.28-gd2af13d9f 5 - # Linux Version: 6.7.0-rc3 6 - 7 - # Reported by deqp-runner 6 + kms_cursor_legacy@basic-flip-after-cursor-atomic 8 7 kms_cursor_legacy@basic-flip-after-cursor-legacy 9 - kms_cursor_legacy@flip-vs-cursor-toggle 8 + kms_cursor_legacy@basic-flip-after-cursor-varying-size 9 + kms_cursor_legacy@basic-flip-before-cursor-varying-size 10 + kms_cursor_legacy@flip-vs-cursor-atomic-transitions 11 + kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size 10 12 kms_cursor_legacy@flip-vs-cursor-varying-size 13 + kms_cursor_legacy@short-flip-after-cursor-atomic-transitions 14 + kms_cursor_legacy@short-flip-after-cursor-atomic-transitions-varying-size 11 15 kms_cursor_legacy@short-flip-after-cursor-toggle 12 16 kms_cursor_legacy@short-flip-before-cursor-atomic-transitions 13 17 kms_cursor_legacy@short-flip-before-cursor-atomic-transitions-varying-size 14 18 msm_shrink@copy-gpu-32 15 19 msm_shrink@copy-gpu-oom-32 16 - 17 - # The below test shows inconsistency across multiple runs, giving 18 - # results of Pass and Fail alternately. 19 - kms_cursor_legacy@basic-flip-before-cursor-varying-size 20 - kms_cursor_legacy@flip-vs-cursor-atomic-transitions 21 - kms_cursor_legacy@short-flip-after-cursor-atomic-transitions 22 - kms_cursor_legacy@short-flip-after-cursor-atomic-transitions-varying-size
+19
drivers/gpu/drm/ci/xfails/msm-sdm845-skips.txt
··· 5 5 # https://gitlab.freedesktop.org/gfx-ci/linux/-/commit/4b49f902ec6f2bb382cbbf489870573f4b43371e 6 6 # https://gitlab.freedesktop.org/gfx-ci/linux/-/commit/38cdf4c5559771e2474ae0fecef8469f65147bc1 7 7 msm_mapping@* 8 + 9 + # Skip driver specific tests 10 + ^amdgpu.* 11 + nouveau_.* 12 + panfrost_.* 13 + ^v3d.* 14 + ^vc4.* 15 + ^vmwgfx* 16 + 17 + # Skip intel specific tests 18 + gem_.* 19 + i915_.* 20 + 21 + # Currently fails and causes coverage loss for other tests 22 + # since core_getversion also fails. 23 + core_hotunplug.* 24 + 25 + # Whole machine hangs 26 + kms_cursor_crc.*
+8 -54
drivers/gpu/drm/ci/xfails/rockchip-rk3288-fails.txt
··· 1 - kms_3d,Crash 2 - kms_bw@linear-tiling-2-displays-1920x1080p,Fail 3 - kms_bw@linear-tiling-2-displays-2560x1440p,Fail 4 - kms_bw@linear-tiling-2-displays-3840x2160p,Fail 5 - kms_bw@linear-tiling-3-displays-1920x1080p,Fail 6 - kms_bw@linear-tiling-3-displays-2560x1440p,Fail 7 - kms_bw@linear-tiling-3-displays-3840x2160p,Fail 8 - kms_flip@flip-vs-modeset-vs-hang,Crash 9 - kms_flip@flip-vs-panning-vs-hang,Crash 10 - kms_force_connector_basic@force-load-detect,Fail 11 - kms_invalid_mode@int-max-clock,Crash 12 - kms_pipe_crc_basic@compare-crc-sanitycheck-nv12,Crash 13 - kms_pipe_crc_basic@nonblocking-crc-frame-sequence,Crash 14 - kms_pipe_crc_basic@read-crc-frame-sequence,Crash 15 - kms_plane@pixel-format,Crash 16 - kms_plane@pixel-format-source-clamping,Crash 17 - kms_plane@plane-position-hole,Crash 18 - kms_plane@plane-position-hole-dpms,Crash 19 - kms_plane_cursor@overlay,Crash 20 - kms_plane_cursor@pipe-A-overlay-size-128,Fail 21 - kms_plane_cursor@pipe-A-overlay-size-256,Fail 22 - kms_plane_cursor@pipe-A-overlay-size-64,Fail 23 - kms_plane_cursor@pipe-A-primary-size-128,Fail 24 - kms_plane_cursor@pipe-A-primary-size-256,Fail 25 - kms_plane_cursor@pipe-A-primary-size-64,Fail 26 - kms_plane_cursor@pipe-A-viewport-size-128,Fail 27 - kms_plane_cursor@pipe-A-viewport-size-256,Fail 28 - kms_plane_cursor@pipe-A-viewport-size-64,Fail 29 - kms_plane_cursor@pipe-B-overlay-size-128,Fail 30 - kms_plane_cursor@pipe-B-overlay-size-256,Fail 31 - kms_plane_cursor@pipe-B-overlay-size-64,Fail 32 - kms_plane_cursor@pipe-B-primary-size-128,Fail 33 - kms_plane_cursor@pipe-B-primary-size-256,Fail 34 - kms_plane_cursor@pipe-B-primary-size-64,Fail 35 - kms_plane_cursor@pipe-B-viewport-size-128,Fail 36 - kms_plane_cursor@pipe-B-viewport-size-256,Fail 37 - kms_plane_cursor@pipe-B-viewport-size-64,Fail 38 - kms_plane_cursor@primary,Crash 39 - kms_plane_cursor@viewport,Crash 40 - kms_plane_lowres@tiling-none,Fail 41 - kms_plane_scaling@downscale-with-modifier-factor-0-25,Fail 42 - kms_plane_scaling@downscale-with-rotation-factor-0-25,Fail 43 - kms_plane_scaling@upscale-with-modifier-20x20,Fail 44 - kms_plane_scaling@upscale-with-modifier-factor-0-25,Fail 45 - kms_plane_scaling@upscale-with-pixel-format-20x20,Fail 46 - kms_plane_scaling@upscale-with-pixel-format-factor-0-25,Fail 47 - kms_plane_scaling@upscale-with-rotation-20x20,Fail 48 - kms_prime@basic-crc,Fail 49 - kms_properties@connector-properties-atomic,Crash 50 - kms_properties@connector-properties-legacy,Crash 51 - kms_properties@get_properties-sanity-atomic,Crash 52 - kms_properties@get_properties-sanity-non-atomic,Crash 53 - kms_rmfb@close-fd,Crash 54 - kms_setmode@invalid-clone-single-crtc,Crash 1 + dumb_buffer@create-clear,Crash 2 + dumb_buffer@create-valid-dumb,Crash 3 + dumb_buffer@invalid-bpp,Crash 4 + dumb_buffer@map-invalid-size,Crash 5 + dumb_buffer@map-uaf,Crash 6 + dumb_buffer@map-valid,Crash 7 + panfrost_prime@gem-prime-import,Crash 8 + tools_test@tools_test,Crash
+19
drivers/gpu/drm/ci/xfails/rockchip-rk3288-skips.txt
··· 50 50 51 51 # Machine is hanging in this test, so skip it 52 52 kms_pipe_crc_basic@disable-crc-after-crtc 53 + 54 + # Skip driver specific tests 55 + ^amdgpu.* 56 + msm_.* 57 + nouveau_.* 58 + ^v3d.* 59 + ^vc4.* 60 + ^vmwgfx* 61 + 62 + # Skip intel specific tests 63 + gem_.* 64 + i915_.* 65 + 66 + # Panfrost is not a KMS driver, so skip the KMS tests 67 + kms_.* 68 + 69 + # Currently fails and causes coverage loss for other tests 70 + # since core_getversion also fails. 71 + core_hotunplug.*
+8 -75
drivers/gpu/drm/ci/xfails/rockchip-rk3399-fails.txt
··· 1 - kms_color@gamma,Fail 2 - kms_color@legacy-gamma,Fail 3 - kms_color@pipe-A-legacy-gamma,Fail 4 - kms_color@pipe-B-legacy-gamma,Fail 5 - kms_cursor_crc@cursor-alpha-opaque,Fail 6 - kms_cursor_crc@cursor-alpha-transparent,Fail 7 - kms_cursor_crc@cursor-dpms,Fail 8 - kms_cursor_crc@cursor-offscreen-32x10,Fail 9 - kms_cursor_crc@cursor-offscreen-32x32,Fail 10 - kms_cursor_crc@cursor-offscreen-64x64,Fail 11 - kms_cursor_crc@cursor-onscreen-32x10,Fail 12 - kms_cursor_crc@cursor-onscreen-32x32,Fail 13 - kms_cursor_crc@cursor-onscreen-64x21,Fail 14 - kms_cursor_crc@cursor-onscreen-64x64,Fail 15 - kms_cursor_crc@cursor-random-32x10,Fail 16 - kms_cursor_crc@cursor-random-32x32,Fail 17 - kms_cursor_crc@cursor-random-64x21,Fail 18 - kms_cursor_crc@cursor-random-64x64,Fail 19 - kms_cursor_crc@cursor-rapid-movement-32x32,Fail 20 - kms_cursor_crc@cursor-rapid-movement-64x21,Fail 21 - kms_cursor_crc@cursor-rapid-movement-64x64,Fail 22 - kms_cursor_crc@cursor-size-change,Fail 23 - kms_cursor_crc@cursor-sliding-32x10,Fail 24 - kms_cursor_crc@cursor-sliding-32x32,Fail 25 - kms_cursor_crc@cursor-sliding-64x21,Fail 26 - kms_cursor_crc@cursor-sliding-64x64,Fail 27 - kms_flip@basic-flip-vs-wf_vblank,Fail 28 - kms_flip@blocking-wf_vblank,Fail 29 - kms_flip@dpms-vs-vblank-race,Fail 30 - kms_flip@flip-vs-absolute-wf_vblank,Fail 31 - kms_flip@flip-vs-absolute-wf_vblank-interruptible,Fail 32 - kms_flip@flip-vs-blocking-wf-vblank,Fail 33 - kms_flip@flip-vs-modeset-vs-hang,Fail 34 - kms_flip@flip-vs-panning,Fail 35 - kms_flip@flip-vs-panning-interruptible,Fail 36 - kms_flip@flip-vs-panning-vs-hang,Fail 37 - kms_flip@modeset-vs-vblank-race,Fail 38 - kms_flip@plain-flip-fb-recreate,Fail 39 - kms_flip@plain-flip-fb-recreate-interruptible,Fail 40 - kms_flip@plain-flip-ts-check,Fail 41 - kms_flip@plain-flip-ts-check-interruptible,Fail 42 - kms_flip@wf_vblank-ts-check,Fail 43 - kms_flip@wf_vblank-ts-check-interruptible,Fail 44 - kms_invalid_mode@int-max-clock,Fail 45 - kms_pipe_crc_basic@compare-crc-sanitycheck-nv12,Fail 46 - kms_pipe_crc_basic@compare-crc-sanitycheck-xr24,Fail 47 - kms_pipe_crc_basic@disable-crc-after-crtc,Fail 48 - kms_pipe_crc_basic@nonblocking-crc,Fail 49 - kms_pipe_crc_basic@nonblocking-crc-frame-sequence,Fail 50 - kms_pipe_crc_basic@read-crc,Fail 51 - kms_pipe_crc_basic@read-crc-frame-sequence,Fail 52 - kms_plane@pixel-format,Fail 53 - kms_plane@pixel-format-source-clamping,Fail 54 - kms_plane@plane-panning-bottom-right,Fail 55 - kms_plane@plane-panning-top-left,Fail 56 - kms_plane@plane-position-covered,Fail 57 - kms_plane@plane-position-hole,Fail 58 - kms_plane@plane-position-hole-dpms,Fail 59 - kms_plane_cursor@overlay,Fail 60 - kms_plane_cursor@pipe-B-overlay-size-128,Fail 61 - kms_plane_cursor@pipe-B-overlay-size-256,Fail 62 - kms_plane_cursor@pipe-B-overlay-size-64,Fail 63 - kms_plane_cursor@pipe-B-primary-size-128,Fail 64 - kms_plane_cursor@pipe-B-primary-size-256,Fail 65 - kms_plane_cursor@pipe-B-primary-size-64,Fail 66 - kms_plane_cursor@pipe-B-viewport-size-128,Fail 67 - kms_plane_cursor@pipe-B-viewport-size-256,Fail 68 - kms_plane_cursor@pipe-B-viewport-size-64,Fail 69 - kms_plane_cursor@primary,Fail 70 - kms_plane_cursor@viewport,Fail 71 - kms_plane_multiple@atomic-pipe-B-tiling-none,Fail 72 - kms_plane_multiple@tiling-none,Fail 73 - kms_prime@basic-crc,Fail 74 - kms_rmfb@close-fd,Fail 75 - kms_universal_plane@universal-plane-pipe-B-functional,Fail 1 + dumb_buffer@create-clear,Fail 2 + dumb_buffer@create-valid-dumb,Fail 3 + dumb_buffer@invalid-bpp,Fail 4 + dumb_buffer@map-invalid-size,Fail 5 + dumb_buffer@map-uaf,Fail 6 + dumb_buffer@map-valid,Fail 7 + panfrost_prime@gem-prime-import,Fail 8 + tools_test@tools_test,Fail
+6 -7
drivers/gpu/drm/ci/xfails/rockchip-rk3399-flakes.txt
··· 1 - kms_bw@linear-tiling-2-displays-1920x1080p 2 - kms_cursor_crc@cursor-offscreen-64x21 3 - kms_flip@dpms-vs-vblank-race-interruptible 4 - kms_flip@flip-vs-wf_vblank-interruptible 5 - kms_plane_cursor@overlay 6 - kms_plane_cursor@primary 7 - kms_plane_cursor@viewport 1 + # Board Name: rk3399-gru-kevin 2 + # Bug Report: https://lore.kernel.org/dri-devel/5cc34a8b-c1fa-4744-9031-2d33ecf41011@collabora.com/T/#u 3 + # IGT Version: 1.28-g0df7b9b97 4 + # Linux Version: 6.9.0-rc7 5 + # Failure Rate: 50 6 + panfrost_submit@pan-unhandled-pagefault
+19
drivers/gpu/drm/ci/xfails/rockchip-rk3399-skips.txt
··· 3 3 4 4 # Too unstable, machine ends up hanging after lots of Oopses 5 5 kms_cursor_legacy.* 6 + 7 + # Skip driver specific tests 8 + ^amdgpu.* 9 + msm_.* 10 + nouveau_.* 11 + ^v3d.* 12 + ^vc4.* 13 + ^vmwgfx* 14 + 15 + # Skip intel specific tests 16 + gem_.* 17 + i915_.* 18 + 19 + # Panfrost is not a KMS driver, so skip the KMS tests 20 + kms_.* 21 + 22 + # Currently fails and causes coverage loss for other tests 23 + # since core_getversion also fails. 24 + core_hotunplug.*
+2 -2
drivers/gpu/drm/ci/xfails/update-xfails.py
··· 93 93 def split_unit_test_from_collate(xfails): 94 94 for job_name in xfails.keys(): 95 95 for job_id in xfails[job_name].copy().keys(): 96 - if "not found" in xfails[job_name][job_id]: 96 + if "not found" in xfails[job_name][job_id].content_as_str: 97 97 del xfails[job_name][job_id] 98 98 continue 99 - xfails[job_name][job_id] = xfails[job_name][job_id].strip().split("\n") 99 + xfails[job_name][job_id] = xfails[job_name][job_id].content_as_str.splitlines() 100 100 101 101 102 102 def get_xfails_from_pipeline_url(pipeline_url):
+68 -26
drivers/gpu/drm/ci/xfails/virtio_gpu-none-fails.txt
··· 1 - kms_addfb_basic@addfb25-bad-modifier,Fail 2 1 kms_addfb_basic@bad-pitch-65536,Fail 3 2 kms_addfb_basic@bo-too-small,Fail 4 3 kms_addfb_basic@size-max,Fail 5 4 kms_addfb_basic@too-high,Fail 6 5 kms_atomic_transition@plane-primary-toggle-with-vblank-wait,Fail 7 6 kms_bw@linear-tiling-1-displays-1920x1080p,Fail 7 + kms_bw@linear-tiling-1-displays-2160x1440p,Fail 8 8 kms_bw@linear-tiling-1-displays-2560x1440p,Fail 9 9 kms_bw@linear-tiling-1-displays-3840x2160p,Fail 10 + kms_bw@linear-tiling-10-displays-1920x1080p,Fail 11 + kms_bw@linear-tiling-10-displays-2160x1440p,Fail 12 + kms_bw@linear-tiling-10-displays-2560x1440p,Fail 13 + kms_bw@linear-tiling-10-displays-3840x2160p,Fail 14 + kms_bw@linear-tiling-11-displays-1920x1080p,Fail 15 + kms_bw@linear-tiling-11-displays-2160x1440p,Fail 16 + kms_bw@linear-tiling-11-displays-2560x1440p,Fail 17 + kms_bw@linear-tiling-11-displays-3840x2160p,Fail 18 + kms_bw@linear-tiling-12-displays-1920x1080p,Fail 19 + kms_bw@linear-tiling-12-displays-2160x1440p,Fail 20 + kms_bw@linear-tiling-12-displays-2560x1440p,Fail 21 + kms_bw@linear-tiling-12-displays-3840x2160p,Fail 22 + kms_bw@linear-tiling-13-displays-1920x1080p,Fail 23 + kms_bw@linear-tiling-13-displays-2160x1440p,Fail 24 + kms_bw@linear-tiling-13-displays-2560x1440p,Fail 25 + kms_bw@linear-tiling-13-displays-3840x2160p,Fail 26 + kms_bw@linear-tiling-14-displays-1920x1080p,Fail 27 + kms_bw@linear-tiling-14-displays-2160x1440p,Fail 28 + kms_bw@linear-tiling-14-displays-2560x1440p,Fail 29 + kms_bw@linear-tiling-14-displays-3840x2160p,Fail 30 + kms_bw@linear-tiling-15-displays-1920x1080p,Fail 31 + kms_bw@linear-tiling-15-displays-2160x1440p,Fail 32 + kms_bw@linear-tiling-15-displays-2560x1440p,Fail 33 + kms_bw@linear-tiling-15-displays-3840x2160p,Fail 34 + kms_bw@linear-tiling-16-displays-1920x1080p,Fail 35 + kms_bw@linear-tiling-16-displays-2160x1440p,Fail 36 + kms_bw@linear-tiling-16-displays-2560x1440p,Fail 37 + kms_bw@linear-tiling-16-displays-3840x2160p,Fail 10 38 kms_bw@linear-tiling-2-displays-1920x1080p,Fail 39 + kms_bw@linear-tiling-2-displays-2160x1440p,Fail 11 40 kms_bw@linear-tiling-2-displays-2560x1440p,Fail 12 41 kms_bw@linear-tiling-2-displays-3840x2160p,Fail 13 42 kms_bw@linear-tiling-3-displays-1920x1080p,Fail 43 + kms_bw@linear-tiling-3-displays-2160x1440p,Fail 14 44 kms_bw@linear-tiling-3-displays-2560x1440p,Fail 15 45 kms_bw@linear-tiling-3-displays-3840x2160p,Fail 16 46 kms_bw@linear-tiling-4-displays-1920x1080p,Fail 47 + kms_bw@linear-tiling-4-displays-2160x1440p,Fail 17 48 kms_bw@linear-tiling-4-displays-2560x1440p,Fail 18 49 kms_bw@linear-tiling-4-displays-3840x2160p,Fail 19 50 kms_bw@linear-tiling-5-displays-1920x1080p,Fail 51 + kms_bw@linear-tiling-5-displays-2160x1440p,Fail 20 52 kms_bw@linear-tiling-5-displays-2560x1440p,Fail 21 53 kms_bw@linear-tiling-5-displays-3840x2160p,Fail 22 54 kms_bw@linear-tiling-6-displays-1920x1080p,Fail 55 + kms_bw@linear-tiling-6-displays-2160x1440p,Fail 23 56 kms_bw@linear-tiling-6-displays-2560x1440p,Fail 24 57 kms_bw@linear-tiling-6-displays-3840x2160p,Fail 25 58 kms_bw@linear-tiling-7-displays-1920x1080p,Fail 59 + kms_bw@linear-tiling-7-displays-2160x1440p,Fail 26 60 kms_bw@linear-tiling-7-displays-2560x1440p,Fail 27 61 kms_bw@linear-tiling-7-displays-3840x2160p,Fail 28 62 kms_bw@linear-tiling-8-displays-1920x1080p,Fail 63 + kms_bw@linear-tiling-8-displays-2160x1440p,Fail 29 64 kms_bw@linear-tiling-8-displays-2560x1440p,Fail 30 65 kms_bw@linear-tiling-8-displays-3840x2160p,Fail 66 + kms_bw@linear-tiling-9-displays-1920x1080p,Fail 67 + kms_bw@linear-tiling-9-displays-2160x1440p,Fail 68 + kms_bw@linear-tiling-9-displays-2560x1440p,Fail 69 + kms_bw@linear-tiling-9-displays-3840x2160p,Fail 31 70 kms_flip@absolute-wf_vblank,Fail 32 71 kms_flip@absolute-wf_vblank-interruptible,Fail 33 72 kms_flip@basic-flip-vs-wf_vblank,Fail ··· 93 54 kms_flip@wf_vblank-ts-check,Fail 94 55 kms_flip@wf_vblank-ts-check-interruptible,Fail 95 56 kms_invalid_mode@int-max-clock,Fail 96 - kms_plane_scaling@downscale-with-modifier-factor-0-25,Fail 97 - kms_plane_scaling@downscale-with-rotation-factor-0-25,Fail 98 - kms_plane_scaling@planes-upscale-20x20,Fail 99 - kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25,Fail 100 - kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5,Fail 101 - kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-75,Fail 102 - kms_plane_scaling@upscale-with-modifier-20x20,Fail 103 - kms_plane_scaling@upscale-with-modifier-factor-0-25,Fail 104 - kms_plane_scaling@upscale-with-pixel-format-20x20,Fail 105 - kms_plane_scaling@upscale-with-pixel-format-factor-0-25,Fail 106 - kms_plane_scaling@upscale-with-rotation-20x20,Fail 107 - kms_selftest@drm_format,Timeout 108 - kms_selftest@drm_format_helper,Timeout 57 + kms_lease@cursor-implicit-plane,Fail 58 + kms_lease@lease-uevent,Fail 59 + kms_lease@page-flip-implicit-plane,Fail 60 + kms_lease@setcrtc-implicit-plane,Fail 61 + kms_lease@simple-lease,Fail 62 + kms_sequence@get-busy,Fail 63 + kms_sequence@get-forked,Fail 64 + kms_sequence@get-forked-busy,Fail 65 + kms_sequence@get-idle,Fail 66 + kms_sequence@queue-busy,Fail 67 + kms_sequence@queue-idle,Fail 109 68 kms_setmode@basic,Fail 69 + kms_vblank@accuracy-idle,Fail 110 70 kms_vblank@crtc-id,Fail 111 71 kms_vblank@invalid,Fail 112 - kms_vblank@pipe-A-accuracy-idle,Fail 113 - kms_vblank@pipe-A-query-busy,Fail 114 - kms_vblank@pipe-A-query-forked,Fail 115 - kms_vblank@pipe-A-query-forked-busy,Fail 116 - kms_vblank@pipe-A-query-idle,Fail 117 - kms_vblank@pipe-A-ts-continuation-idle,Fail 118 - kms_vblank@pipe-A-ts-continuation-modeset,Fail 119 - kms_vblank@pipe-A-ts-continuation-suspend,Fail 120 - kms_vblank@pipe-A-wait-busy,Fail 121 - kms_vblank@pipe-A-wait-forked,Fail 122 - kms_vblank@pipe-A-wait-forked-busy,Fail 123 - kms_vblank@pipe-A-wait-idle,Fail 72 + kms_vblank@query-busy,Fail 73 + kms_vblank@query-forked,Fail 74 + kms_vblank@query-forked-busy,Fail 75 + kms_vblank@query-idle,Fail 76 + kms_vblank@ts-continuation-dpms-rpm,Fail 77 + kms_vblank@ts-continuation-dpms-suspend,Fail 78 + kms_vblank@ts-continuation-idle,Fail 79 + kms_vblank@ts-continuation-modeset,Fail 80 + kms_vblank@ts-continuation-modeset-rpm,Fail 81 + kms_vblank@ts-continuation-suspend,Fail 82 + kms_vblank@wait-busy,Fail 83 + kms_vblank@wait-forked,Fail 84 + kms_vblank@wait-forked-busy,Fail 85 + kms_vblank@wait-idle,Fail 86 + perf@i915-ref-count,Fail 87 + tools_test@tools_test,Fail
+18
drivers/gpu/drm/ci/xfails/virtio_gpu-none-skips.txt
··· 4 4 5 5 # Job just hangs without any output 6 6 kms_flip@flip-vs-suspend.* 7 + 8 + # Skip driver specific tests 9 + ^amdgpu.* 10 + msm_.* 11 + nouveau_.* 12 + panfrost_.* 13 + ^v3d.* 14 + ^vc4.* 15 + ^vmwgfx* 16 + 17 + # Skip intel specific tests 18 + gem_.* 19 + i915_.* 20 + xe_.* 21 + 22 + # Currently fails and causes coverage loss for other tests 23 + # since core_getversion also fails. 24 + core_hotunplug.*
+36
drivers/gpu/drm/display/drm_hdmi_state_helper.c
··· 714 714 return ret; 715 715 } 716 716 EXPORT_SYMBOL(drm_atomic_helper_connector_hdmi_update_audio_infoframe); 717 + 718 + /** 719 + * drm_atomic_helper_connector_hdmi_disable_audio_infoframe - Stop sending the Audio Infoframe 720 + * @connector: A pointer to the HDMI connector 721 + * 722 + * This function is meant for HDMI connector drivers to stop sending their 723 + * audio infoframe. It will typically be used in one of the ALSA hooks 724 + * (most likely shutdown). 725 + * 726 + * Returns: 727 + * Zero on success, error code on failure. 728 + */ 729 + int 730 + drm_atomic_helper_connector_hdmi_disable_audio_infoframe(struct drm_connector *connector) 731 + { 732 + struct drm_connector_hdmi_infoframe *infoframe = 733 + &connector->hdmi.infoframes.audio; 734 + struct drm_display_info *info = &connector->display_info; 735 + int ret; 736 + 737 + if (!info->is_hdmi) 738 + return 0; 739 + 740 + mutex_lock(&connector->hdmi.infoframes.lock); 741 + 742 + infoframe->set = false; 743 + 744 + ret = clear_infoframe(connector, infoframe); 745 + 746 + memset(&infoframe->data, 0, sizeof(infoframe->data)); 747 + 748 + mutex_unlock(&connector->hdmi.infoframes.lock); 749 + 750 + return ret; 751 + } 752 + EXPORT_SYMBOL(drm_atomic_helper_connector_hdmi_disable_audio_infoframe);
-37
drivers/gpu/drm/drm_bridge.c
··· 468 468 */ 469 469 470 470 /** 471 - * drm_bridge_chain_mode_fixup - fixup proposed mode for all bridges in the 472 - * encoder chain 473 - * @bridge: bridge control structure 474 - * @mode: desired mode to be set for the bridge 475 - * @adjusted_mode: updated mode that works for this bridge 476 - * 477 - * Calls &drm_bridge_funcs.mode_fixup for all the bridges in the 478 - * encoder chain, starting from the first bridge to the last. 479 - * 480 - * Note: the bridge passed should be the one closest to the encoder 481 - * 482 - * RETURNS: 483 - * true on success, false on failure 484 - */ 485 - bool drm_bridge_chain_mode_fixup(struct drm_bridge *bridge, 486 - const struct drm_display_mode *mode, 487 - struct drm_display_mode *adjusted_mode) 488 - { 489 - struct drm_encoder *encoder; 490 - 491 - if (!bridge) 492 - return true; 493 - 494 - encoder = bridge->encoder; 495 - list_for_each_entry_from(bridge, &encoder->bridge_chain, chain_node) { 496 - if (!bridge->funcs->mode_fixup) 497 - continue; 498 - 499 - if (!bridge->funcs->mode_fixup(bridge, mode, adjusted_mode)) 500 - return false; 501 - } 502 - 503 - return true; 504 - } 505 - EXPORT_SYMBOL(drm_bridge_chain_mode_fixup); 506 - 507 - /** 508 471 * drm_bridge_chain_mode_valid - validate the mode against all bridges in the 509 472 * encoder chain. 510 473 * @bridge: bridge control structure
+91 -16
drivers/gpu/drm/drm_bridge_connector.c
··· 15 15 #include <drm/drm_connector.h> 16 16 #include <drm/drm_device.h> 17 17 #include <drm/drm_edid.h> 18 + #include <drm/drm_managed.h> 18 19 #include <drm/drm_modeset_helper_vtables.h> 19 20 #include <drm/drm_probe_helper.h> 21 + #include <drm/display/drm_hdmi_state_helper.h> 20 22 21 23 /** 22 24 * DOC: overview ··· 88 86 * connector modes detection, if any (see &DRM_BRIDGE_OP_MODES). 89 87 */ 90 88 struct drm_bridge *bridge_modes; 89 + /** 90 + * @bridge_hdmi: 91 + * 92 + * The bridge in the chain that implements necessary support for the 93 + * HDMI connector infrastructure, if any (see &DRM_BRIDGE_OP_HDMI). 94 + */ 95 + struct drm_bridge *bridge_hdmi; 91 96 }; 92 97 93 98 #define to_drm_bridge_connector(x) \ ··· 202 193 return status; 203 194 } 204 195 205 - static void drm_bridge_connector_destroy(struct drm_connector *connector) 206 - { 207 - struct drm_bridge_connector *bridge_connector = 208 - to_drm_bridge_connector(connector); 209 - 210 - drm_connector_unregister(connector); 211 - drm_connector_cleanup(connector); 212 - 213 - fwnode_handle_put(connector->fwnode); 214 - 215 - kfree(bridge_connector); 216 - } 217 - 218 196 static void drm_bridge_connector_debugfs_init(struct drm_connector *connector, 219 197 struct dentry *root) 220 198 { ··· 220 224 .reset = drm_atomic_helper_connector_reset, 221 225 .detect = drm_bridge_connector_detect, 222 226 .fill_modes = drm_helper_probe_single_connector_modes, 223 - .destroy = drm_bridge_connector_destroy, 224 227 .atomic_duplicate_state = drm_atomic_helper_connector_duplicate_state, 225 228 .atomic_destroy_state = drm_atomic_helper_connector_destroy_state, 226 229 .debugfs_init = drm_bridge_connector_debugfs_init, ··· 295 300 .disable_hpd = drm_bridge_connector_disable_hpd, 296 301 }; 297 302 303 + static enum drm_mode_status 304 + drm_bridge_connector_tmds_char_rate_valid(const struct drm_connector *connector, 305 + const struct drm_display_mode *mode, 306 + unsigned long long tmds_rate) 307 + { 308 + struct drm_bridge_connector *bridge_connector = 309 + to_drm_bridge_connector(connector); 310 + struct drm_bridge *bridge; 311 + 312 + bridge = bridge_connector->bridge_hdmi; 313 + if (!bridge) 314 + return MODE_ERROR; 315 + 316 + if (bridge->funcs->hdmi_tmds_char_rate_valid) 317 + return bridge->funcs->hdmi_tmds_char_rate_valid(bridge, mode, tmds_rate); 318 + else 319 + return MODE_OK; 320 + } 321 + 322 + static int drm_bridge_connector_clear_infoframe(struct drm_connector *connector, 323 + enum hdmi_infoframe_type type) 324 + { 325 + struct drm_bridge_connector *bridge_connector = 326 + to_drm_bridge_connector(connector); 327 + struct drm_bridge *bridge; 328 + 329 + bridge = bridge_connector->bridge_hdmi; 330 + if (!bridge) 331 + return -EINVAL; 332 + 333 + return bridge->funcs->hdmi_clear_infoframe(bridge, type); 334 + } 335 + 336 + static int drm_bridge_connector_write_infoframe(struct drm_connector *connector, 337 + enum hdmi_infoframe_type type, 338 + const u8 *buffer, size_t len) 339 + { 340 + struct drm_bridge_connector *bridge_connector = 341 + to_drm_bridge_connector(connector); 342 + struct drm_bridge *bridge; 343 + 344 + bridge = bridge_connector->bridge_hdmi; 345 + if (!bridge) 346 + return -EINVAL; 347 + 348 + return bridge->funcs->hdmi_write_infoframe(bridge, type, buffer, len); 349 + } 350 + 351 + static const struct drm_connector_hdmi_funcs drm_bridge_connector_hdmi_funcs = { 352 + .tmds_char_rate_valid = drm_bridge_connector_tmds_char_rate_valid, 353 + .clear_infoframe = drm_bridge_connector_clear_infoframe, 354 + .write_infoframe = drm_bridge_connector_write_infoframe, 355 + }; 356 + 298 357 /* ----------------------------------------------------------------------------- 299 358 * Bridge Connector Initialisation 300 359 */ ··· 374 325 struct drm_connector *connector; 375 326 struct i2c_adapter *ddc = NULL; 376 327 struct drm_bridge *bridge, *panel_bridge = NULL; 328 + unsigned int supported_formats = BIT(HDMI_COLORSPACE_RGB); 329 + unsigned int max_bpc = 8; 377 330 int connector_type; 378 331 int ret; 379 332 380 - bridge_connector = kzalloc(sizeof(*bridge_connector), GFP_KERNEL); 333 + bridge_connector = drmm_kzalloc(drm, sizeof(*bridge_connector), GFP_KERNEL); 381 334 if (!bridge_connector) 382 335 return ERR_PTR(-ENOMEM); 383 336 ··· 412 361 bridge_connector->bridge_detect = bridge; 413 362 if (bridge->ops & DRM_BRIDGE_OP_MODES) 414 363 bridge_connector->bridge_modes = bridge; 364 + if (bridge->ops & DRM_BRIDGE_OP_HDMI) { 365 + if (bridge_connector->bridge_hdmi) 366 + return ERR_PTR(-EBUSY); 367 + if (!bridge->funcs->hdmi_write_infoframe || 368 + !bridge->funcs->hdmi_clear_infoframe) 369 + return ERR_PTR(-EINVAL); 370 + 371 + bridge_connector->bridge_hdmi = bridge; 372 + 373 + if (bridge->supported_formats) 374 + supported_formats = bridge->supported_formats; 375 + if (bridge->max_bpc) 376 + max_bpc = bridge->max_bpc; 377 + } 415 378 416 379 if (!drm_bridge_get_next_bridge(bridge)) 417 380 connector_type = bridge->type; ··· 448 383 return ERR_PTR(-EINVAL); 449 384 } 450 385 451 - ret = drm_connector_init_with_ddc(drm, connector, 386 + if (bridge_connector->bridge_hdmi) 387 + ret = drmm_connector_hdmi_init(drm, connector, 388 + bridge_connector->bridge_hdmi->vendor, 389 + bridge_connector->bridge_hdmi->product, 390 + &drm_bridge_connector_funcs, 391 + &drm_bridge_connector_hdmi_funcs, 392 + connector_type, ddc, 393 + supported_formats, 394 + max_bpc); 395 + else 396 + ret = drmm_connector_init(drm, connector, 452 397 &drm_bridge_connector_funcs, 453 398 connector_type, ddc); 454 399 if (ret) {
+2
drivers/gpu/drm/drm_debugfs.c
··· 762 762 drm_puts(&p, " hpd"); 763 763 if (bridge->ops & DRM_BRIDGE_OP_MODES) 764 764 drm_puts(&p, " modes"); 765 + if (bridge->ops & DRM_BRIDGE_OP_HDMI) 766 + drm_puts(&p, " hdmi"); 765 767 drm_puts(&p, "\n"); 766 768 } 767 769
+54 -23
drivers/gpu/drm/drm_mipi_dbi.c
··· 206 206 struct drm_rect *clip, bool swap, 207 207 struct drm_format_conv_state *fmtcnv_state) 208 208 { 209 + struct mipi_dbi_dev *dbidev = drm_to_mipi_dbi_dev(fb->dev); 209 210 struct drm_gem_object *gem = drm_gem_fb_get_obj(fb, 0); 210 211 struct iosys_map dst_map = IOSYS_MAP_INIT_VADDR(dst); 211 212 int ret; ··· 223 222 else 224 223 drm_fb_memcpy(&dst_map, NULL, src, fb, clip); 225 224 break; 225 + case DRM_FORMAT_RGB888: 226 + drm_fb_memcpy(&dst_map, NULL, src, fb, clip); 227 + break; 226 228 case DRM_FORMAT_XRGB8888: 227 - drm_fb_xrgb8888_to_rgb565(&dst_map, NULL, src, fb, clip, fmtcnv_state, swap); 229 + switch (dbidev->pixel_format) { 230 + case DRM_FORMAT_RGB565: 231 + drm_fb_xrgb8888_to_rgb565(&dst_map, NULL, src, fb, clip, fmtcnv_state, swap); 232 + break; 233 + case DRM_FORMAT_RGB888: 234 + drm_fb_xrgb8888_to_rgb888(&dst_map, NULL, src, fb, clip, fmtcnv_state); 235 + break; 236 + } 228 237 break; 229 238 default: 230 239 drm_err_once(fb->dev, "Format is not supported: %p4cc\n", ··· 271 260 struct mipi_dbi_dev *dbidev = drm_to_mipi_dbi_dev(fb->dev); 272 261 unsigned int height = rect->y2 - rect->y1; 273 262 unsigned int width = rect->x2 - rect->x1; 263 + const struct drm_format_info *dst_format; 274 264 struct mipi_dbi *dbi = &dbidev->dbi; 275 265 bool swap = dbi->swap_bytes; 276 266 int ret = 0; 267 + size_t len; 277 268 bool full; 278 269 void *tr; 279 270 ··· 296 283 mipi_dbi_set_window_address(dbidev, rect->x1, rect->x2 - 1, rect->y1, 297 284 rect->y2 - 1); 298 285 299 - ret = mipi_dbi_command_buf(dbi, MIPI_DCS_WRITE_MEMORY_START, tr, 300 - width * height * 2); 286 + if (fb->format->format == DRM_FORMAT_XRGB8888) 287 + dst_format = drm_format_info(dbidev->pixel_format); 288 + else 289 + dst_format = fb->format; 290 + len = drm_format_info_min_pitch(dst_format, 0, width) * height; 291 + 292 + ret = mipi_dbi_command_buf(dbi, MIPI_DCS_WRITE_MEMORY_START, tr, len); 301 293 err_msg: 302 294 if (ret) 303 295 drm_err_once(fb->dev, "Failed to update display %d\n", ret); ··· 590 572 * has one fixed &drm_display_mode which is rotated according to @rotation. 591 573 * This mode is used to set the mode config min/max width/height properties. 592 574 * 593 - * Use mipi_dbi_dev_init() if you don't need custom formats. 575 + * Use mipi_dbi_dev_init() if you want native RGB565 and emulated XRGB8888 format. 594 576 * 595 577 * Note: 596 578 * Some of the helper functions expects RGB565 to be the default format and the ··· 649 631 drm->mode_config.min_height = dbidev->mode.vdisplay; 650 632 drm->mode_config.max_height = dbidev->mode.vdisplay; 651 633 dbidev->rotation = rotation; 634 + dbidev->pixel_format = formats[0]; 635 + if (formats[0] == DRM_FORMAT_RGB888) 636 + dbidev->dbi.write_memory_bpw = 8; 652 637 653 638 DRM_DEBUG_KMS("rotation = %u\n", rotation); 654 639 ··· 845 824 } 846 825 EXPORT_SYMBOL(mipi_dbi_spi_cmd_max_speed); 847 826 848 - static bool mipi_dbi_machine_little_endian(void) 849 - { 850 - #if defined(__LITTLE_ENDIAN) 851 - return true; 852 - #else 853 - return false; 854 - #endif 855 - } 856 - 857 827 /* 858 828 * MIPI DBI Type C Option 1 859 829 * ··· 867 855 const void *buf, size_t len, 868 856 unsigned int bpw) 869 857 { 870 - bool swap_bytes = (bpw == 16 && mipi_dbi_machine_little_endian()); 858 + bool swap_bytes = (bpw == 16); 871 859 size_t chunk, max_chunk = dbi->tx_buf9_len; 872 860 struct spi_device *spi = dbi->spi; 873 861 struct spi_transfer tr = { ··· 1016 1004 size_t chunk = min(len, max_chunk); 1017 1005 unsigned int i; 1018 1006 1019 - if (bpw == 16 && mipi_dbi_machine_little_endian()) { 1007 + if (bpw == 16) { 1020 1008 for (i = 0; i < (chunk * 2); i += 2) { 1021 1009 dst16[i] = *src16 >> 8; 1022 1010 dst16[i + 1] = *src16++ & 0xFF; ··· 1100 1088 static int mipi_dbi_typec1_command(struct mipi_dbi *dbi, u8 *cmd, 1101 1089 u8 *parameters, size_t num) 1102 1090 { 1103 - unsigned int bpw = (*cmd == MIPI_DCS_WRITE_MEMORY_START) ? 16 : 8; 1091 + unsigned int bpw = 8; 1104 1092 int ret; 1105 1093 1106 1094 if (mipi_dbi_command_is_read(dbi, *cmd)) ··· 1111 1099 ret = mipi_dbi_spi1_transfer(dbi, 0, cmd, 1, 8); 1112 1100 if (ret || !num) 1113 1101 return ret; 1102 + 1103 + if (*cmd == MIPI_DCS_WRITE_MEMORY_START) 1104 + bpw = dbi->write_memory_bpw; 1114 1105 1115 1106 return mipi_dbi_spi1_transfer(dbi, 1, parameters, num, bpw); 1116 1107 } ··· 1208 1193 if (ret || !num) 1209 1194 return ret; 1210 1195 1211 - if (*cmd == MIPI_DCS_WRITE_MEMORY_START && !dbi->swap_bytes) 1212 - bpw = 16; 1196 + if (*cmd == MIPI_DCS_WRITE_MEMORY_START) 1197 + bpw = dbi->write_memory_bpw; 1213 1198 1214 1199 spi_bus_lock(spi->controller); 1215 1200 gpiod_set_value_cansleep(dbi->dc, 1); ··· 1233 1218 * If @dc is set, a Type C Option 3 interface is assumed, if not 1234 1219 * Type C Option 1. 1235 1220 * 1236 - * If the SPI master driver doesn't support the necessary bits per word, 1237 - * the following transformation is used: 1221 + * If the command is %MIPI_DCS_WRITE_MEMORY_START and the pixel format is RGB565, endianness has 1222 + * to be taken into account. The MIPI DBI serial interface is big endian and framebuffers are 1223 + * assumed stored in memory as little endian (%DRM_FORMAT_BIG_ENDIAN is not supported). 1238 1224 * 1239 - * - 9-bit: reorder buffer as 9x 8-bit words, padded with no-op command. 1240 - * - 16-bit: if big endian send as 8-bit, if little endian swap bytes 1225 + * This is how endianness is handled: 1226 + * 1227 + * Option 1 (D/C as a bit): The buffer is sent on the wire byte by byte so the 16-bit buffer is 1228 + * byteswapped before transfer. 1229 + * 1230 + * Option 3 (D/C as a gpio): If the SPI controller supports 16 bits per word the buffer can be 1231 + * sent as-is. If not the caller is responsible for swapping the bytes 1232 + * before calling mipi_dbi_command_buf() and the buffer is sent 8 bpw. 1233 + * 1234 + * This handling is optimised for %DRM_FORMAT_RGB565 framebuffers. 1235 + * 1236 + * If the interface is Option 1 and the SPI controller doesn't support 9 bits per word, 1237 + * the buffer is sent as 9x 8-bit words, padded with MIPI DCS no-op commands if necessary. 1241 1238 * 1242 1239 * Returns: 1243 1240 * Zero on success, negative error code on failure. ··· 1280 1253 1281 1254 dbi->spi = spi; 1282 1255 dbi->read_commands = mipi_dbi_dcs_read_commands; 1256 + dbi->write_memory_bpw = 16; 1283 1257 1284 1258 if (dc) { 1285 1259 dbi->command = mipi_dbi_typec3_command; 1286 1260 dbi->dc = dc; 1287 - if (mipi_dbi_machine_little_endian() && !spi_is_bpw_supported(spi, 16)) 1261 + if (!spi_is_bpw_supported(spi, 16)) { 1262 + dbi->write_memory_bpw = 8; 1288 1263 dbi->swap_bytes = true; 1264 + } 1289 1265 } else { 1290 1266 dbi->command = mipi_dbi_typec1_command; 1291 1267 dbi->tx_buf9_len = SZ_16K; ··· 1505 1475 1506 1476 #endif 1507 1477 1478 + MODULE_DESCRIPTION("MIPI Display Bus Interface (DBI) LCD controller support"); 1508 1479 MODULE_LICENSE("GPL");
-35
drivers/gpu/drm/drm_mm.c
··· 649 649 EXPORT_SYMBOL(drm_mm_remove_node); 650 650 651 651 /** 652 - * drm_mm_replace_node - move an allocation from @old to @new 653 - * @old: drm_mm_node to remove from the allocator 654 - * @new: drm_mm_node which should inherit @old's allocation 655 - * 656 - * This is useful for when drivers embed the drm_mm_node structure and hence 657 - * can't move allocations by reassigning pointers. It's a combination of remove 658 - * and insert with the guarantee that the allocation start will match. 659 - */ 660 - void drm_mm_replace_node(struct drm_mm_node *old, struct drm_mm_node *new) 661 - { 662 - struct drm_mm *mm = old->mm; 663 - 664 - DRM_MM_BUG_ON(!drm_mm_node_allocated(old)); 665 - 666 - *new = *old; 667 - 668 - __set_bit(DRM_MM_NODE_ALLOCATED_BIT, &new->flags); 669 - list_replace(&old->node_list, &new->node_list); 670 - rb_replace_node_cached(&old->rb, &new->rb, &mm->interval_tree); 671 - 672 - if (drm_mm_hole_follows(old)) { 673 - list_replace(&old->hole_stack, &new->hole_stack); 674 - rb_replace_node_cached(&old->rb_hole_size, 675 - &new->rb_hole_size, 676 - &mm->holes_size); 677 - rb_replace_node(&old->rb_hole_addr, 678 - &new->rb_hole_addr, 679 - &mm->holes_addr); 680 - } 681 - 682 - clear_bit_unlock(DRM_MM_NODE_ALLOCATED_BIT, &old->flags); 683 - } 684 - EXPORT_SYMBOL(drm_mm_replace_node); 685 - 686 - /** 687 652 * DOC: lru scan roster 688 653 * 689 654 * Very often GPUs need to have continuous allocations for a given object. When
+1
drivers/gpu/drm/drm_panel_orientation_quirks.c
··· 501 501 502 502 #endif 503 503 504 + MODULE_DESCRIPTION("Quirks for non-normal panel orientation"); 504 505 MODULE_LICENSE("Dual MIT/GPL");
+201 -85
drivers/gpu/drm/drm_panic.c
··· 12 12 #include <linux/kmsg_dump.h> 13 13 #include <linux/list.h> 14 14 #include <linux/module.h> 15 + #include <linux/printk.h> 15 16 #include <linux/types.h> 16 17 17 18 #include <drm/drm_drv.h> ··· 27 26 MODULE_AUTHOR("Jocelyn Falempe"); 28 27 MODULE_DESCRIPTION("DRM panic handler"); 29 28 MODULE_LICENSE("GPL"); 29 + 30 + static char drm_panic_screen[16] = CONFIG_DRM_PANIC_SCREEN; 31 + module_param_string(panic_screen, drm_panic_screen, sizeof(drm_panic_screen), 0644); 32 + MODULE_PARM_DESC(panic_screen, 33 + "Choose what will be displayed by drm_panic, 'user' or 'kmsg' [default=" 34 + CONFIG_DRM_PANIC_SCREEN "]"); 30 35 31 36 /** 32 37 * DOC: overview ··· 201 194 /* 202 195 * Blit & Fill 203 196 */ 197 + /* check if the pixel at coord x,y is 1 (foreground) or 0 (background) */ 198 + static bool drm_panic_is_pixel_fg(const u8 *sbuf8, unsigned int spitch, int x, int y) 199 + { 200 + return (sbuf8[(y * spitch) + x / 8] & (0x80 >> (x % 8))) != 0; 201 + } 202 + 204 203 static void drm_panic_blit16(struct iosys_map *dmap, unsigned int dpitch, 205 204 const u8 *sbuf8, unsigned int spitch, 206 205 unsigned int height, unsigned int width, 207 - u16 fg16, u16 bg16) 206 + u16 fg16) 208 207 { 209 208 unsigned int y, x; 210 - u16 val16; 211 209 212 - for (y = 0; y < height; y++) { 213 - for (x = 0; x < width; x++) { 214 - val16 = (sbuf8[(y * spitch) + x / 8] & (0x80 >> (x % 8))) ? fg16 : bg16; 215 - iosys_map_wr(dmap, y * dpitch + x * sizeof(u16), u16, val16); 216 - } 217 - } 210 + for (y = 0; y < height; y++) 211 + for (x = 0; x < width; x++) 212 + if (drm_panic_is_pixel_fg(sbuf8, spitch, x, y)) 213 + iosys_map_wr(dmap, y * dpitch + x * sizeof(u16), u16, fg16); 218 214 } 219 215 220 216 static void drm_panic_blit24(struct iosys_map *dmap, unsigned int dpitch, 221 217 const u8 *sbuf8, unsigned int spitch, 222 218 unsigned int height, unsigned int width, 223 - u32 fg32, u32 bg32) 219 + u32 fg32) 224 220 { 225 221 unsigned int y, x; 226 - u32 val32; 227 222 228 223 for (y = 0; y < height; y++) { 229 224 for (x = 0; x < width; x++) { 230 225 u32 off = y * dpitch + x * 3; 231 226 232 - val32 = (sbuf8[(y * spitch) + x / 8] & (0x80 >> (x % 8))) ? fg32 : bg32; 233 - 234 - /* write blue-green-red to output in little endianness */ 235 - iosys_map_wr(dmap, off, u8, (val32 & 0x000000FF) >> 0); 236 - iosys_map_wr(dmap, off + 1, u8, (val32 & 0x0000FF00) >> 8); 237 - iosys_map_wr(dmap, off + 2, u8, (val32 & 0x00FF0000) >> 16); 227 + if (drm_panic_is_pixel_fg(sbuf8, spitch, x, y)) { 228 + /* write blue-green-red to output in little endianness */ 229 + iosys_map_wr(dmap, off, u8, (fg32 & 0x000000FF) >> 0); 230 + iosys_map_wr(dmap, off + 1, u8, (fg32 & 0x0000FF00) >> 8); 231 + iosys_map_wr(dmap, off + 2, u8, (fg32 & 0x00FF0000) >> 16); 232 + } 238 233 } 239 234 } 240 235 } ··· 244 235 static void drm_panic_blit32(struct iosys_map *dmap, unsigned int dpitch, 245 236 const u8 *sbuf8, unsigned int spitch, 246 237 unsigned int height, unsigned int width, 247 - u32 fg32, u32 bg32) 238 + u32 fg32) 248 239 { 249 240 unsigned int y, x; 250 - u32 val32; 251 241 252 - for (y = 0; y < height; y++) { 253 - for (x = 0; x < width; x++) { 254 - val32 = (sbuf8[(y * spitch) + x / 8] & (0x80 >> (x % 8))) ? fg32 : bg32; 255 - iosys_map_wr(dmap, y * dpitch + x * sizeof(u32), u32, val32); 256 - } 257 - } 242 + for (y = 0; y < height; y++) 243 + for (x = 0; x < width; x++) 244 + if (drm_panic_is_pixel_fg(sbuf8, spitch, x, y)) 245 + iosys_map_wr(dmap, y * dpitch + x * sizeof(u32), u32, fg32); 246 + } 247 + 248 + static void drm_panic_blit_pixel(struct drm_scanout_buffer *sb, struct drm_rect *clip, 249 + const u8 *sbuf8, unsigned int spitch, u32 fg_color) 250 + { 251 + unsigned int y, x; 252 + 253 + for (y = 0; y < drm_rect_height(clip); y++) 254 + for (x = 0; x < drm_rect_width(clip); x++) 255 + if (drm_panic_is_pixel_fg(sbuf8, spitch, x, y)) 256 + sb->set_pixel(sb, clip->x1 + x, clip->y1 + y, fg_color); 258 257 } 259 258 260 259 /* 261 260 * drm_panic_blit - convert a monochrome image to a linear framebuffer 262 - * @dmap: destination iosys_map 263 - * @dpitch: destination pitch in bytes 261 + * @sb: destination scanout buffer 262 + * @clip: destination rectangle 264 263 * @sbuf8: source buffer, in monochrome format, 8 pixels per byte. 265 264 * @spitch: source pitch in bytes 266 - * @height: height of the image to copy, in pixels 267 - * @width: width of the image to copy, in pixels 268 265 * @fg_color: foreground color, in destination format 269 - * @bg_color: background color, in destination format 270 - * @pixel_width: pixel width in bytes. 271 266 * 272 267 * This can be used to draw a font character, which is a monochrome image, to a 273 268 * framebuffer in other supported format. 274 269 */ 275 - static void drm_panic_blit(struct iosys_map *dmap, unsigned int dpitch, 276 - const u8 *sbuf8, unsigned int spitch, 277 - unsigned int height, unsigned int width, 278 - u32 fg_color, u32 bg_color, 279 - unsigned int pixel_width) 270 + static void drm_panic_blit(struct drm_scanout_buffer *sb, struct drm_rect *clip, 271 + const u8 *sbuf8, unsigned int spitch, u32 fg_color) 280 272 { 281 - switch (pixel_width) { 273 + struct iosys_map map; 274 + 275 + if (sb->set_pixel) 276 + return drm_panic_blit_pixel(sb, clip, sbuf8, spitch, fg_color); 277 + 278 + map = sb->map[0]; 279 + iosys_map_incr(&map, clip->y1 * sb->pitch[0] + clip->x1 * sb->format->cpp[0]); 280 + 281 + switch (sb->format->cpp[0]) { 282 282 case 2: 283 - drm_panic_blit16(dmap, dpitch, sbuf8, spitch, 284 - height, width, fg_color, bg_color); 283 + drm_panic_blit16(&map, sb->pitch[0], sbuf8, spitch, 284 + drm_rect_height(clip), drm_rect_width(clip), fg_color); 285 285 break; 286 286 case 3: 287 - drm_panic_blit24(dmap, dpitch, sbuf8, spitch, 288 - height, width, fg_color, bg_color); 287 + drm_panic_blit24(&map, sb->pitch[0], sbuf8, spitch, 288 + drm_rect_height(clip), drm_rect_width(clip), fg_color); 289 289 break; 290 290 case 4: 291 - drm_panic_blit32(dmap, dpitch, sbuf8, spitch, 292 - height, width, fg_color, bg_color); 291 + drm_panic_blit32(&map, sb->pitch[0], sbuf8, spitch, 292 + drm_rect_height(clip), drm_rect_width(clip), fg_color); 293 293 break; 294 294 default: 295 - WARN_ONCE(1, "Can't blit with pixel width %d\n", pixel_width); 295 + WARN_ONCE(1, "Can't blit with pixel width %d\n", sb->format->cpp[0]); 296 296 } 297 297 } 298 298 ··· 345 327 iosys_map_wr(dmap, y * dpitch + x * sizeof(u32), u32, color); 346 328 } 347 329 330 + static void drm_panic_fill_pixel(struct drm_scanout_buffer *sb, 331 + struct drm_rect *clip, 332 + u32 color) 333 + { 334 + unsigned int y, x; 335 + 336 + for (y = 0; y < drm_rect_height(clip); y++) 337 + for (x = 0; x < drm_rect_width(clip); x++) 338 + sb->set_pixel(sb, clip->x1 + x, clip->y1 + y, color); 339 + } 340 + 348 341 /* 349 342 * drm_panic_fill - Fill a rectangle with a color 350 - * @dmap: destination iosys_map, pointing to the top left corner of the rectangle 351 - * @dpitch: destination pitch in bytes 352 - * @height: height of the rectangle, in pixels 353 - * @width: width of the rectangle, in pixels 354 - * @color: color to fill the rectangle. 355 - * @pixel_width: pixel width in bytes 343 + * @sb: destination scanout buffer 344 + * @clip: destination rectangle 345 + * @color: foreground color, in destination format 356 346 * 357 347 * Fill a rectangle with a color, in a linear framebuffer. 358 348 */ 359 - static void drm_panic_fill(struct iosys_map *dmap, unsigned int dpitch, 360 - unsigned int height, unsigned int width, 361 - u32 color, unsigned int pixel_width) 349 + static void drm_panic_fill(struct drm_scanout_buffer *sb, struct drm_rect *clip, 350 + u32 color) 362 351 { 363 - switch (pixel_width) { 352 + struct iosys_map map; 353 + 354 + if (sb->set_pixel) 355 + return drm_panic_fill_pixel(sb, clip, color); 356 + 357 + map = sb->map[0]; 358 + iosys_map_incr(&map, clip->y1 * sb->pitch[0] + clip->x1 * sb->format->cpp[0]); 359 + 360 + switch (sb->format->cpp[0]) { 364 361 case 2: 365 - drm_panic_fill16(dmap, dpitch, height, width, color); 362 + drm_panic_fill16(&map, sb->pitch[0], drm_rect_height(clip), 363 + drm_rect_width(clip), color); 366 364 break; 367 365 case 3: 368 - drm_panic_fill24(dmap, dpitch, height, width, color); 366 + drm_panic_fill24(&map, sb->pitch[0], drm_rect_height(clip), 367 + drm_rect_width(clip), color); 369 368 break; 370 369 case 4: 371 - drm_panic_fill32(dmap, dpitch, height, width, color); 370 + drm_panic_fill32(&map, sb->pitch[0], drm_rect_height(clip), 371 + drm_rect_width(clip), color); 372 372 break; 373 373 default: 374 - WARN_ONCE(1, "Can't fill with pixel width %d\n", pixel_width); 374 + WARN_ONCE(1, "Can't fill with pixel width %d\n", sb->format->cpp[0]); 375 375 } 376 376 } 377 377 ··· 417 381 unsigned int msg_lines, 418 382 bool centered, 419 383 struct drm_rect *clip, 420 - u32 fg_color, 421 - u32 bg_color) 384 + u32 color) 422 385 { 423 386 int i, j; 424 387 const u8 *src; 425 388 size_t font_pitch = DIV_ROUND_UP(font->width, 8); 426 - struct iosys_map dst; 427 - unsigned int px_width = sb->format->cpp[0]; 428 - int left = 0; 389 + struct drm_rect rec; 429 390 430 391 msg_lines = min(msg_lines, drm_rect_height(clip) / font->height); 431 392 for (i = 0; i < msg_lines; i++) { 432 393 size_t line_len = min(msg[i].len, drm_rect_width(clip) / font->width); 433 394 434 - if (centered) 435 - left = (drm_rect_width(clip) - (line_len * font->width)) / 2; 395 + rec.y1 = clip->y1 + i * font->height; 396 + rec.y2 = rec.y1 + font->height; 397 + rec.x1 = clip->x1; 436 398 437 - dst = sb->map[0]; 438 - iosys_map_incr(&dst, (clip->y1 + i * font->height) * sb->pitch[0] + 439 - (clip->x1 + left) * px_width); 399 + if (centered) 400 + rec.x1 += (drm_rect_width(clip) - (line_len * font->width)) / 2; 401 + 440 402 for (j = 0; j < line_len; j++) { 441 403 src = get_char_bitmap(font, msg[i].txt[j], font_pitch); 442 - drm_panic_blit(&dst, sb->pitch[0], src, font_pitch, 443 - font->height, font->width, 444 - fg_color, bg_color, px_width); 445 - iosys_map_incr(&dst, font->width * px_width); 404 + rec.x2 = rec.x1 + font->width; 405 + drm_panic_blit(sb, &rec, src, font_pitch, color); 406 + rec.x1 += font->width; 446 407 } 447 408 } 448 409 } 449 410 450 - /* 451 - * Draw the panic message at the center of the screen 452 - */ 453 - static void draw_panic_static(struct drm_scanout_buffer *sb) 411 + static void draw_panic_static_user(struct drm_scanout_buffer *sb) 454 412 { 455 413 size_t msg_lines = ARRAY_SIZE(panic_msg); 456 414 size_t logo_lines = ARRAY_SIZE(logo); 457 - u32 fg_color = CONFIG_DRM_PANIC_FOREGROUND_COLOR; 458 - u32 bg_color = CONFIG_DRM_PANIC_BACKGROUND_COLOR; 415 + u32 fg_color = convert_from_xrgb8888(CONFIG_DRM_PANIC_FOREGROUND_COLOR, sb->format->format); 416 + u32 bg_color = convert_from_xrgb8888(CONFIG_DRM_PANIC_BACKGROUND_COLOR, sb->format->format); 459 417 const struct font_desc *font = get_default_font(sb->width, sb->height, NULL, NULL); 460 - struct drm_rect r_logo, r_msg; 418 + struct drm_rect r_screen, r_logo, r_msg; 461 419 462 420 if (!font) 463 421 return; 464 422 465 - fg_color = convert_from_xrgb8888(fg_color, sb->format->format); 466 - bg_color = convert_from_xrgb8888(bg_color, sb->format->format); 423 + r_screen = DRM_RECT_INIT(0, 0, sb->width, sb->height); 467 424 468 425 r_logo = DRM_RECT_INIT(0, 0, 469 426 get_max_line_len(logo, logo_lines) * font->width, ··· 469 440 drm_rect_translate(&r_msg, (sb->width - r_msg.x2) / 2, (sb->height - r_msg.y2) / 2); 470 441 471 442 /* Fill with the background color, and draw text on top */ 472 - drm_panic_fill(&sb->map[0], sb->pitch[0], sb->height, sb->width, 473 - bg_color, sb->format->cpp[0]); 443 + drm_panic_fill(sb, &r_screen, bg_color); 474 444 475 445 if ((r_msg.x1 >= drm_rect_width(&r_logo) || r_msg.y1 >= drm_rect_height(&r_logo)) && 476 446 drm_rect_width(&r_logo) < sb->width && drm_rect_height(&r_logo) < sb->height) { 477 - draw_txt_rectangle(sb, font, logo, logo_lines, false, &r_logo, fg_color, bg_color); 447 + draw_txt_rectangle(sb, font, logo, logo_lines, false, &r_logo, fg_color); 478 448 } 479 - draw_txt_rectangle(sb, font, panic_msg, msg_lines, true, &r_msg, fg_color, bg_color); 449 + draw_txt_rectangle(sb, font, panic_msg, msg_lines, true, &r_msg, fg_color); 450 + } 451 + 452 + /* 453 + * Draw one line of kmsg, and handle wrapping if it won't fit in the screen width. 454 + * Return the y-offset of the next line. 455 + */ 456 + static int draw_line_with_wrap(struct drm_scanout_buffer *sb, const struct font_desc *font, 457 + struct drm_panic_line *line, int yoffset, u32 fg_color) 458 + { 459 + int chars_per_row = sb->width / font->width; 460 + struct drm_rect r_txt = DRM_RECT_INIT(0, yoffset, sb->width, sb->height); 461 + struct drm_panic_line line_wrap; 462 + 463 + if (line->len > chars_per_row) { 464 + line_wrap.len = line->len % chars_per_row; 465 + line_wrap.txt = line->txt + line->len - line_wrap.len; 466 + draw_txt_rectangle(sb, font, &line_wrap, 1, false, &r_txt, fg_color); 467 + r_txt.y1 -= font->height; 468 + if (r_txt.y1 < 0) 469 + return r_txt.y1; 470 + while (line_wrap.txt > line->txt) { 471 + line_wrap.txt -= chars_per_row; 472 + line_wrap.len = chars_per_row; 473 + draw_txt_rectangle(sb, font, &line_wrap, 1, false, &r_txt, fg_color); 474 + r_txt.y1 -= font->height; 475 + if (r_txt.y1 < 0) 476 + return r_txt.y1; 477 + } 478 + } else { 479 + draw_txt_rectangle(sb, font, line, 1, false, &r_txt, fg_color); 480 + r_txt.y1 -= font->height; 481 + } 482 + return r_txt.y1; 483 + } 484 + 485 + /* 486 + * Draw the kmsg buffer to the screen, starting from the youngest message at the bottom, 487 + * and going up until reaching the top of the screen. 488 + */ 489 + static void draw_panic_static_kmsg(struct drm_scanout_buffer *sb) 490 + { 491 + u32 fg_color = convert_from_xrgb8888(CONFIG_DRM_PANIC_FOREGROUND_COLOR, sb->format->format); 492 + u32 bg_color = convert_from_xrgb8888(CONFIG_DRM_PANIC_BACKGROUND_COLOR, sb->format->format); 493 + const struct font_desc *font = get_default_font(sb->width, sb->height, NULL, NULL); 494 + struct drm_rect r_screen = DRM_RECT_INIT(0, 0, sb->width, sb->height); 495 + struct kmsg_dump_iter iter; 496 + char kmsg_buf[512]; 497 + size_t kmsg_len; 498 + struct drm_panic_line line; 499 + int yoffset; 500 + 501 + if (!font) 502 + return; 503 + 504 + yoffset = sb->height - font->height - (sb->height % font->height) / 2; 505 + 506 + /* Fill with the background color, and draw text on top */ 507 + drm_panic_fill(sb, &r_screen, bg_color); 508 + 509 + kmsg_dump_rewind(&iter); 510 + while (kmsg_dump_get_buffer(&iter, false, kmsg_buf, sizeof(kmsg_buf), &kmsg_len)) { 511 + char *start; 512 + char *end; 513 + 514 + /* ignore terminating NUL and newline */ 515 + start = kmsg_buf + kmsg_len - 2; 516 + end = kmsg_buf + kmsg_len - 1; 517 + while (start > kmsg_buf && yoffset >= 0) { 518 + while (start > kmsg_buf && *start != '\n') 519 + start--; 520 + /* don't count the newline character */ 521 + line.txt = start + (start == kmsg_buf ? 0 : 1); 522 + line.len = end - line.txt; 523 + 524 + yoffset = draw_line_with_wrap(sb, font, &line, yoffset, fg_color); 525 + end = start; 526 + start--; 527 + } 528 + } 480 529 } 481 530 482 531 /* ··· 571 464 return convert_from_xrgb8888(0xffffff, format->format) != 0; 572 465 } 573 466 467 + static void draw_panic_dispatch(struct drm_scanout_buffer *sb) 468 + { 469 + if (!strcmp(drm_panic_screen, "kmsg")) { 470 + draw_panic_static_kmsg(sb); 471 + } else { 472 + draw_panic_static_user(sb); 473 + } 474 + } 475 + 574 476 static void draw_panic_plane(struct drm_plane *plane) 575 477 { 576 478 struct drm_scanout_buffer sb; ··· 592 476 ret = plane->helper_private->get_scanout_buffer(plane, &sb); 593 477 594 478 if (!ret && drm_panic_is_format_supported(sb.format)) { 595 - draw_panic_static(&sb); 479 + draw_panic_dispatch(&sb); 596 480 if (plane->helper_private->panic_flush) 597 481 plane->helper_private->panic_flush(plane); 598 482 }
+30 -42
drivers/gpu/drm/drm_print.c
··· 176 176 } 177 177 EXPORT_SYMBOL(__drm_printfn_seq_file); 178 178 179 + static void __drm_dev_vprintk(const struct device *dev, const char *level, 180 + const void *origin, const char *prefix, 181 + struct va_format *vaf) 182 + { 183 + const char *prefix_pad = prefix ? " " : ""; 184 + 185 + if (!prefix) 186 + prefix = ""; 187 + 188 + if (dev) { 189 + if (origin) 190 + dev_printk(level, dev, "[" DRM_NAME ":%ps]%s%s %pV", 191 + origin, prefix_pad, prefix, vaf); 192 + else 193 + dev_printk(level, dev, "[" DRM_NAME "]%s%s %pV", 194 + prefix_pad, prefix, vaf); 195 + } else { 196 + if (origin) 197 + printk("%s" "[" DRM_NAME ":%ps]%s%s %pV", 198 + level, origin, prefix_pad, prefix, vaf); 199 + else 200 + printk("%s" "[" DRM_NAME "]%s%s %pV", 201 + level, prefix_pad, prefix, vaf); 202 + } 203 + } 204 + 179 205 void __drm_printfn_info(struct drm_printer *p, struct va_format *vaf) 180 206 { 181 207 dev_info(p->arg, "[" DRM_NAME "] %pV", vaf); ··· 213 187 const struct drm_device *drm = p->arg; 214 188 const struct device *dev = drm ? drm->dev : NULL; 215 189 enum drm_debug_category category = p->category; 216 - const char *prefix = p->prefix ?: ""; 217 - const char *prefix_pad = p->prefix ? " " : ""; 218 190 219 191 if (!__drm_debug_enabled(category)) 220 192 return; 221 193 222 - /* Note: __builtin_return_address(0) is useless here. */ 223 - if (dev) 224 - dev_printk(KERN_DEBUG, dev, "[" DRM_NAME "]%s%s %pV", 225 - prefix_pad, prefix, vaf); 226 - else 227 - printk(KERN_DEBUG "[" DRM_NAME "]%s%s %pV", 228 - prefix_pad, prefix, vaf); 194 + __drm_dev_vprintk(dev, KERN_DEBUG, p->origin, p->prefix, vaf); 229 195 } 230 196 EXPORT_SYMBOL(__drm_printfn_dbg); 231 197 ··· 305 287 vaf.fmt = format; 306 288 vaf.va = &args; 307 289 308 - if (dev) 309 - dev_printk(level, dev, "[" DRM_NAME ":%ps] %pV", 310 - __builtin_return_address(0), &vaf); 311 - else 312 - printk("%s" "[" DRM_NAME ":%ps] %pV", 313 - level, __builtin_return_address(0), &vaf); 290 + __drm_dev_vprintk(dev, level, __builtin_return_address(0), NULL, &vaf); 314 291 315 292 va_end(args); 316 293 } ··· 325 312 vaf.fmt = format; 326 313 vaf.va = &args; 327 314 328 - if (dev) 329 - dev_printk(KERN_DEBUG, dev, "[" DRM_NAME ":%ps] %pV", 330 - __builtin_return_address(0), &vaf); 331 - else 332 - printk(KERN_DEBUG "[" DRM_NAME ":%ps] %pV", 333 - __builtin_return_address(0), &vaf); 315 + __drm_dev_vprintk(dev, KERN_DEBUG, __builtin_return_address(0), NULL, &vaf); 334 316 335 317 va_end(args); 336 318 } 337 319 EXPORT_SYMBOL(__drm_dev_dbg); 338 - 339 - void ___drm_dbg(struct _ddebug *desc, enum drm_debug_category category, const char *format, ...) 340 - { 341 - struct va_format vaf; 342 - va_list args; 343 - 344 - if (!__drm_debug_enabled(category)) 345 - return; 346 - 347 - va_start(args, format); 348 - vaf.fmt = format; 349 - vaf.va = &args; 350 - 351 - printk(KERN_DEBUG "[" DRM_NAME ":%ps] %pV", 352 - __builtin_return_address(0), &vaf); 353 - 354 - va_end(args); 355 - } 356 - EXPORT_SYMBOL(___drm_dbg); 357 320 358 321 void __drm_err(const char *format, ...) 359 322 { ··· 340 351 vaf.fmt = format; 341 352 vaf.va = &args; 342 353 343 - printk(KERN_ERR "[" DRM_NAME ":%ps] *ERROR* %pV", 344 - __builtin_return_address(0), &vaf); 354 + __drm_dev_vprintk(NULL, KERN_ERR, __builtin_return_address(0), "*ERROR*", &vaf); 345 355 346 356 va_end(args); 347 357 }
+1
drivers/gpu/drm/drm_simple_kms_helper.c
··· 453 453 } 454 454 EXPORT_SYMBOL(drm_simple_display_pipe_init); 455 455 456 + MODULE_DESCRIPTION("Helpers for drivers for simple display hardware"); 456 457 MODULE_LICENSE("GPL");
+1
drivers/gpu/drm/gud/gud_drv.c
··· 678 678 module_usb_driver(gud_usb_driver); 679 679 680 680 MODULE_AUTHOR("Noralf Trønnes"); 681 + MODULE_DESCRIPTION("GUD USB Display driver"); 681 682 MODULE_LICENSE("Dual MIT/GPL");
+1 -1
drivers/gpu/drm/i915/gt/intel_reset.c
··· 1025 1025 1026 1026 if (GEM_SHOW_DEBUG()) { 1027 1027 struct drm_printer p = drm_dbg_printer(&gt->i915->drm, 1028 - DRM_UT_DRIVER, __func__); 1028 + DRM_UT_DRIVER, NULL); 1029 1029 struct intel_engine_cs *engine; 1030 1030 enum intel_engine_id id; 1031 1031
+1 -1
drivers/gpu/drm/i915/gt/selftest_context.c
··· 286 286 287 287 if (intel_engine_pm_is_awake(engine)) { 288 288 struct drm_printer p = drm_dbg_printer(&engine->i915->drm, 289 - DRM_UT_DRIVER, __func__); 289 + DRM_UT_DRIVER, NULL); 290 290 291 291 intel_engine_dump(engine, &p, 292 292 "%s is still awake:%d after idle-barriers\n",
+1
drivers/gpu/drm/i915/gvt/kvmgt.c
··· 1985 1985 module_init(kvmgt_init); 1986 1986 module_exit(kvmgt_exit); 1987 1987 1988 + MODULE_DESCRIPTION("Intel mediated pass-through framework for KVM"); 1988 1989 MODULE_LICENSE("GPL and additional rights"); 1989 1990 MODULE_AUTHOR("Intel Corporation");
-11
drivers/gpu/drm/mediatek/mtk_hdmi.c
··· 1208 1208 const struct drm_display_mode *mode) 1209 1209 { 1210 1210 struct mtk_hdmi *hdmi = hdmi_ctx_from_bridge(bridge); 1211 - struct drm_bridge *next_bridge; 1212 1211 1213 1212 dev_dbg(hdmi->dev, "xres=%d, yres=%d, refresh=%d, intl=%d clock=%d\n", 1214 1213 mode->hdisplay, mode->vdisplay, drm_mode_vrefresh(mode), 1215 1214 !!(mode->flags & DRM_MODE_FLAG_INTERLACE), mode->clock * 1000); 1216 - 1217 - next_bridge = drm_bridge_get_next_bridge(&hdmi->bridge); 1218 - if (next_bridge) { 1219 - struct drm_display_mode adjusted_mode; 1220 - 1221 - drm_mode_init(&adjusted_mode, mode); 1222 - if (!drm_bridge_chain_mode_fixup(next_bridge, mode, 1223 - &adjusted_mode)) 1224 - return MODE_BAD; 1225 - } 1226 1215 1227 1216 if (hdmi->conf) { 1228 1217 if (hdmi->conf->cea_modes_only && !drm_match_cea_mode(mode))
+11 -6
drivers/gpu/drm/meson/meson_plane.c
··· 534 534 struct meson_plane *meson_plane; 535 535 struct drm_plane *plane; 536 536 const uint64_t *format_modifiers = format_modifiers_default; 537 + int ret; 537 538 538 539 meson_plane = devm_kzalloc(priv->drm->dev, sizeof(*meson_plane), 539 540 GFP_KERNEL); ··· 549 548 else if (meson_vpu_is_compatible(priv, VPU_COMPATIBLE_G12A)) 550 549 format_modifiers = format_modifiers_afbc_g12a; 551 550 552 - drm_universal_plane_init(priv->drm, plane, 0xFF, 553 - &meson_plane_funcs, 554 - supported_drm_formats, 555 - ARRAY_SIZE(supported_drm_formats), 556 - format_modifiers, 557 - DRM_PLANE_TYPE_PRIMARY, "meson_primary_plane"); 551 + ret = drm_universal_plane_init(priv->drm, plane, 0xFF, 552 + &meson_plane_funcs, 553 + supported_drm_formats, 554 + ARRAY_SIZE(supported_drm_formats), 555 + format_modifiers, 556 + DRM_PLANE_TYPE_PRIMARY, "meson_primary_plane"); 557 + if (ret) { 558 + devm_kfree(priv->drm->dev, meson_plane); 559 + return ret; 560 + } 558 561 559 562 drm_plane_helper_add(plane, &meson_plane_helper_funcs); 560 563
+1
drivers/gpu/drm/panel/panel-abt-y030xx067a.c
··· 381 381 382 382 MODULE_AUTHOR("Paul Cercueil <paul@crapouillou.net>"); 383 383 MODULE_AUTHOR("Christophe Branchereau <cbranchereau@gmail.com>"); 384 + MODULE_DESCRIPTION("Asia Better Technology Ltd. Y030XX067A IPS LCD panel driver"); 384 385 MODULE_LICENSE("GPL v2");
+1
drivers/gpu/drm/panel/panel-auo-a030jtn01.c
··· 305 305 306 306 MODULE_AUTHOR("Paul Cercueil <paul@crapouillou.net>"); 307 307 MODULE_AUTHOR("Christophe Branchereau <cbranchereau@gmail.com>"); 308 + MODULE_DESCRIPTION("AU Optronics A030JTN01.0 TFT LCD panel driver"); 308 309 MODULE_LICENSE("GPL");
-40
drivers/gpu/drm/panel/panel-boe-himax8279d.c
··· 47 47 struct gpio_desc *enable_gpio; 48 48 struct gpio_desc *pp33_gpio; 49 49 struct gpio_desc *pp18_gpio; 50 - 51 - bool prepared; 52 - bool enabled; 53 50 }; 54 51 55 52 static inline struct panel_info *to_panel_info(struct drm_panel *panel) ··· 83 86 struct panel_info *pinfo = to_panel_info(panel); 84 87 int err; 85 88 86 - if (!pinfo->enabled) 87 - return 0; 88 - 89 89 err = mipi_dsi_dcs_set_display_off(pinfo->link); 90 90 if (err < 0) { 91 91 dev_err(panel->dev, "failed to set display off: %d\n", err); 92 92 return err; 93 93 } 94 - 95 - pinfo->enabled = false; 96 94 97 95 return 0; 98 96 } ··· 96 104 { 97 105 struct panel_info *pinfo = to_panel_info(panel); 98 106 int err; 99 - 100 - if (!pinfo->prepared) 101 - return 0; 102 107 103 108 err = mipi_dsi_dcs_set_display_off(pinfo->link); 104 109 if (err < 0) ··· 110 121 111 122 disable_gpios(pinfo); 112 123 113 - pinfo->prepared = false; 114 - 115 124 return 0; 116 125 } 117 126 ··· 117 130 { 118 131 struct panel_info *pinfo = to_panel_info(panel); 119 132 int err; 120 - 121 - if (pinfo->prepared) 122 - return 0; 123 133 124 134 gpiod_set_value(pinfo->pp18_gpio, 1); 125 135 /* T1: 5ms - 6ms */ ··· 164 180 /* T7: 20ms - 21ms */ 165 181 usleep_range(20000, 21000); 166 182 167 - pinfo->prepared = true; 168 - 169 183 return 0; 170 184 171 185 poweroff: ··· 176 194 struct panel_info *pinfo = to_panel_info(panel); 177 195 int ret; 178 196 179 - if (pinfo->enabled) 180 - return 0; 181 - 182 197 usleep_range(120000, 121000); 183 198 184 199 ret = mipi_dsi_dcs_set_display_on(pinfo->link); ··· 183 204 dev_err(panel->dev, "failed to set display on: %d\n", ret); 184 205 return ret; 185 206 } 186 - 187 - pinfo->enabled = true; 188 207 189 208 return 0; 190 209 } ··· 894 917 struct panel_info *pinfo = mipi_dsi_get_drvdata(dsi); 895 918 int err; 896 919 897 - err = boe_panel_disable(&pinfo->base); 898 - if (err < 0) 899 - dev_err(&dsi->dev, "failed to disable panel: %d\n", err); 900 - 901 - err = boe_panel_unprepare(&pinfo->base); 902 - if (err < 0) 903 - dev_err(&dsi->dev, "failed to unprepare panel: %d\n", err); 904 - 905 920 err = mipi_dsi_detach(dsi); 906 921 if (err < 0) 907 922 dev_err(&dsi->dev, "failed to detach from DSI host: %d\n", err); 908 923 909 924 drm_panel_remove(&pinfo->base); 910 - } 911 - 912 - static void panel_shutdown(struct mipi_dsi_device *dsi) 913 - { 914 - struct panel_info *pinfo = mipi_dsi_get_drvdata(dsi); 915 - 916 - boe_panel_disable(&pinfo->base); 917 - boe_panel_unprepare(&pinfo->base); 918 925 } 919 926 920 927 static struct mipi_dsi_driver panel_driver = { ··· 908 947 }, 909 948 .probe = panel_probe, 910 949 .remove = panel_remove, 911 - .shutdown = panel_shutdown, 912 950 }; 913 951 module_mipi_dsi_driver(panel_driver); 914 952
+3 -3
drivers/gpu/drm/panel/panel-himax-hx83102.c
··· 286 286 mipi_dsi_dcs_write_seq_multi(&dsi_ctx, HX83102_SETBANK, 0x00); 287 287 hx83102_enable_extended_cmds(&dsi_ctx, false); 288 288 289 - mipi_dsi_msleep(dsi_ctx, 50); 289 + mipi_dsi_msleep(&dsi_ctx, 50); 290 290 291 291 return dsi_ctx.accum_err; 292 292 }; ··· 391 391 mipi_dsi_dcs_write_seq_multi(&dsi_ctx, HX83102_SETBANK, 0x00); 392 392 hx83102_enable_extended_cmds(&dsi_ctx, false); 393 393 394 - mipi_dsi_msleep(dsi_ctx, 60); 394 + mipi_dsi_msleep(&dsi_ctx, 60); 395 395 396 396 return dsi_ctx.accum_err; 397 397 }; ··· 538 538 dsi_ctx.accum_err = ctx->desc->init(ctx); 539 539 540 540 mipi_dsi_dcs_exit_sleep_mode_multi(&dsi_ctx); 541 - mipi_dsi_msleep(dsi_ctx, 120); 541 + mipi_dsi_msleep(&dsi_ctx, 120); 542 542 mipi_dsi_dcs_set_display_on_multi(&dsi_ctx); 543 543 if (dsi_ctx.accum_err) 544 544 goto poweroff;
+1
drivers/gpu/drm/panel/panel-innolux-ej030na.c
··· 306 306 307 307 MODULE_AUTHOR("Paul Cercueil <paul@crapouillou.net>"); 308 308 MODULE_AUTHOR("Christophe Branchereau <cbranchereau@gmail.com>"); 309 + MODULE_DESCRIPTION("Innolux/Chimei EJ030NA TFT LCD panel driver"); 309 310 MODULE_LICENSE("GPL v2");
-35
drivers/gpu/drm/panel/panel-jdi-lt070me05000.c
··· 37 37 struct gpio_desc *dcdc_en_gpio; 38 38 struct backlight_device *backlight; 39 39 40 - bool prepared; 41 - bool enabled; 42 - 43 40 const struct drm_display_mode *mode; 44 41 }; 45 42 ··· 173 176 { 174 177 struct jdi_panel *jdi = to_jdi_panel(panel); 175 178 176 - if (!jdi->enabled) 177 - return 0; 178 - 179 179 backlight_disable(jdi->backlight); 180 - 181 - jdi->enabled = false; 182 180 183 181 return 0; 184 182 } ··· 183 191 struct jdi_panel *jdi = to_jdi_panel(panel); 184 192 struct device *dev = &jdi->dsi->dev; 185 193 int ret; 186 - 187 - if (!jdi->prepared) 188 - return 0; 189 194 190 195 jdi_panel_off(jdi); 191 196 ··· 196 207 197 208 gpiod_set_value(jdi->dcdc_en_gpio, 0); 198 209 199 - jdi->prepared = false; 200 - 201 210 return 0; 202 211 } 203 212 ··· 204 217 struct jdi_panel *jdi = to_jdi_panel(panel); 205 218 struct device *dev = &jdi->dsi->dev; 206 219 int ret; 207 - 208 - if (jdi->prepared) 209 - return 0; 210 220 211 221 ret = regulator_bulk_enable(ARRAY_SIZE(jdi->supplies), jdi->supplies); 212 222 if (ret < 0) { ··· 234 250 goto poweroff; 235 251 } 236 252 237 - jdi->prepared = true; 238 - 239 253 return 0; 240 254 241 255 poweroff: ··· 254 272 { 255 273 struct jdi_panel *jdi = to_jdi_panel(panel); 256 274 257 - if (jdi->enabled) 258 - return 0; 259 - 260 275 backlight_enable(jdi->backlight); 261 - 262 - jdi->enabled = true; 263 276 264 277 return 0; 265 278 } ··· 452 475 struct jdi_panel *jdi = mipi_dsi_get_drvdata(dsi); 453 476 int ret; 454 477 455 - ret = jdi_panel_disable(&jdi->base); 456 - if (ret < 0) 457 - dev_err(&dsi->dev, "failed to disable panel: %d\n", ret); 458 - 459 478 ret = mipi_dsi_detach(dsi); 460 479 if (ret < 0) 461 480 dev_err(&dsi->dev, "failed to detach from DSI host: %d\n", 462 481 ret); 463 482 464 483 jdi_panel_del(jdi); 465 - } 466 - 467 - static void jdi_panel_shutdown(struct mipi_dsi_device *dsi) 468 - { 469 - struct jdi_panel *jdi = mipi_dsi_get_drvdata(dsi); 470 - 471 - jdi_panel_disable(&jdi->base); 472 484 } 473 485 474 486 static struct mipi_dsi_driver jdi_panel_driver = { ··· 467 501 }, 468 502 .probe = jdi_panel_probe, 469 503 .remove = jdi_panel_remove, 470 - .shutdown = jdi_panel_shutdown, 471 504 }; 472 505 module_mipi_dsi_driver(jdi_panel_driver); 473 506
-39
drivers/gpu/drm/panel/panel-khadas-ts050.c
··· 26 26 struct gpio_desc *reset_gpio; 27 27 struct gpio_desc *enable_gpio; 28 28 struct khadas_ts050_panel_data *panel_data; 29 - 30 - bool prepared; 31 - bool enabled; 32 29 }; 33 30 34 31 struct khadas_ts050_panel_cmd { ··· 639 642 unsigned int i; 640 643 int err; 641 644 642 - if (khadas_ts050->prepared) 643 - return 0; 644 - 645 645 gpiod_set_value_cansleep(khadas_ts050->enable_gpio, 0); 646 646 647 647 err = regulator_enable(khadas_ts050->supply); ··· 702 708 703 709 usleep_range(10000, 11000); 704 710 705 - khadas_ts050->prepared = true; 706 - 707 711 return 0; 708 712 709 713 poweroff: ··· 717 725 { 718 726 struct khadas_ts050_panel *khadas_ts050 = to_khadas_ts050_panel(panel); 719 727 int err; 720 - 721 - if (!khadas_ts050->prepared) 722 - return 0; 723 - 724 - khadas_ts050->prepared = false; 725 728 726 729 err = mipi_dsi_dcs_enter_sleep_mode(khadas_ts050->link); 727 730 if (err < 0) ··· 734 747 return 0; 735 748 } 736 749 737 - static int khadas_ts050_panel_enable(struct drm_panel *panel) 738 - { 739 - struct khadas_ts050_panel *khadas_ts050 = to_khadas_ts050_panel(panel); 740 - 741 - khadas_ts050->enabled = true; 742 - 743 - return 0; 744 - } 745 - 746 750 static int khadas_ts050_panel_disable(struct drm_panel *panel) 747 751 { 748 752 struct khadas_ts050_panel *khadas_ts050 = to_khadas_ts050_panel(panel); 749 753 int err; 750 - 751 - if (!khadas_ts050->enabled) 752 - return 0; 753 754 754 755 err = mipi_dsi_dcs_set_display_off(khadas_ts050->link); 755 756 if (err < 0) 756 757 dev_err(panel->dev, "failed to set display off: %d\n", err); 757 758 758 759 usleep_range(10000, 11000); 759 - 760 - khadas_ts050->enabled = false; 761 760 762 761 return 0; 763 762 } ··· 788 815 static const struct drm_panel_funcs khadas_ts050_panel_funcs = { 789 816 .prepare = khadas_ts050_panel_prepare, 790 817 .unprepare = khadas_ts050_panel_unprepare, 791 - .enable = khadas_ts050_panel_enable, 792 818 .disable = khadas_ts050_panel_disable, 793 819 .get_modes = khadas_ts050_panel_get_modes, 794 820 }; ··· 880 908 dev_err(&dsi->dev, "failed to detach from DSI host: %d\n", err); 881 909 882 910 drm_panel_remove(&khadas_ts050->base); 883 - drm_panel_disable(&khadas_ts050->base); 884 - drm_panel_unprepare(&khadas_ts050->base); 885 - } 886 - 887 - static void khadas_ts050_panel_shutdown(struct mipi_dsi_device *dsi) 888 - { 889 - struct khadas_ts050_panel *khadas_ts050 = mipi_dsi_get_drvdata(dsi); 890 - 891 - drm_panel_disable(&khadas_ts050->base); 892 - drm_panel_unprepare(&khadas_ts050->base); 893 911 } 894 912 895 913 static struct mipi_dsi_driver khadas_ts050_panel_driver = { ··· 889 927 }, 890 928 .probe = khadas_ts050_panel_probe, 891 929 .remove = khadas_ts050_panel_remove, 892 - .shutdown = khadas_ts050_panel_shutdown, 893 930 }; 894 931 module_mipi_dsi_driver(khadas_ts050_panel_driver); 895 932
+1
drivers/gpu/drm/panel/panel-newvision-nv3052c.c
··· 944 944 MODULE_AUTHOR("Paul Cercueil <paul@crapouillou.net>"); 945 945 MODULE_AUTHOR("Christophe Branchereau <cbranchereau@gmail.com>"); 946 946 MODULE_AUTHOR("Ryan Walklin <ryan@testtoast.com"); 947 + MODULE_DESCRIPTION("NewVision NV3052C IPS LCD panel driver"); 947 948 MODULE_LICENSE("GPL v2");
+1
drivers/gpu/drm/panel/panel-novatek-nt39016.c
··· 356 356 357 357 MODULE_AUTHOR("Maarten ter Huurne <maarten@treewalker.org>"); 358 358 MODULE_AUTHOR("Paul Cercueil <paul@crapouillou.net>"); 359 + MODULE_DESCRIPTION("Novatek NT39016 TFT LCD panel driver"); 359 360 MODULE_LICENSE("GPL v2");
-44
drivers/gpu/drm/panel/panel-olimex-lcd-olinuxino.c
··· 64 64 struct i2c_client *client; 65 65 struct mutex mutex; 66 66 67 - bool prepared; 68 - bool enabled; 69 - 70 67 struct regulator *supply; 71 68 struct gpio_desc *enable_gpio; 72 69 ··· 75 78 return container_of(panel, struct lcd_olinuxino, panel); 76 79 } 77 80 78 - static int lcd_olinuxino_disable(struct drm_panel *panel) 79 - { 80 - struct lcd_olinuxino *lcd = to_lcd_olinuxino(panel); 81 - 82 - if (!lcd->enabled) 83 - return 0; 84 - 85 - lcd->enabled = false; 86 - 87 - return 0; 88 - } 89 - 90 81 static int lcd_olinuxino_unprepare(struct drm_panel *panel) 91 82 { 92 83 struct lcd_olinuxino *lcd = to_lcd_olinuxino(panel); 93 84 94 - if (!lcd->prepared) 95 - return 0; 96 - 97 85 gpiod_set_value_cansleep(lcd->enable_gpio, 0); 98 86 regulator_disable(lcd->supply); 99 - 100 - lcd->prepared = false; 101 87 102 88 return 0; 103 89 } ··· 90 110 struct lcd_olinuxino *lcd = to_lcd_olinuxino(panel); 91 111 int ret; 92 112 93 - if (lcd->prepared) 94 - return 0; 95 - 96 113 ret = regulator_enable(lcd->supply); 97 114 if (ret < 0) 98 115 return ret; 99 116 100 117 gpiod_set_value_cansleep(lcd->enable_gpio, 1); 101 - lcd->prepared = true; 102 - 103 - return 0; 104 - } 105 - 106 - static int lcd_olinuxino_enable(struct drm_panel *panel) 107 - { 108 - struct lcd_olinuxino *lcd = to_lcd_olinuxino(panel); 109 - 110 - if (lcd->enabled) 111 - return 0; 112 - 113 - lcd->enabled = true; 114 118 115 119 return 0; 116 120 } ··· 159 195 } 160 196 161 197 static const struct drm_panel_funcs lcd_olinuxino_funcs = { 162 - .disable = lcd_olinuxino_disable, 163 198 .unprepare = lcd_olinuxino_unprepare, 164 199 .prepare = lcd_olinuxino_prepare, 165 - .enable = lcd_olinuxino_enable, 166 200 .get_modes = lcd_olinuxino_get_modes, 167 201 }; 168 202 ··· 226 264 lcd->eeprom.num_modes = 4; 227 265 } 228 266 229 - lcd->enabled = false; 230 - lcd->prepared = false; 231 - 232 267 lcd->supply = devm_regulator_get(dev, "power"); 233 268 if (IS_ERR(lcd->supply)) 234 269 return PTR_ERR(lcd->supply); ··· 251 292 struct lcd_olinuxino *panel = i2c_get_clientdata(client); 252 293 253 294 drm_panel_remove(&panel->panel); 254 - 255 - drm_panel_disable(&panel->panel); 256 - drm_panel_unprepare(&panel->panel); 257 295 } 258 296 259 297 static const struct of_device_id lcd_olinuxino_of_ids[] = {
+1
drivers/gpu/drm/panel/panel-orisetech-ota5601a.c
··· 360 360 module_spi_driver(ota5601a_driver); 361 361 362 362 MODULE_AUTHOR("Christophe Branchereau <cbranchereau@gmail.com>"); 363 + MODULE_DESCRIPTION("Orisetech OTA5601A TFT LCD panel driver"); 363 364 MODULE_LICENSE("GPL");
+1 -40
drivers/gpu/drm/panel/panel-osd-osd101t2587-53ts.c
··· 21 21 22 22 struct regulator *supply; 23 23 24 - bool prepared; 25 - bool enabled; 26 - 27 24 const struct drm_display_mode *default_mode; 28 25 }; 29 26 ··· 34 37 struct osd101t2587_panel *osd101t2587 = ti_osd_panel(panel); 35 38 int ret; 36 39 37 - if (!osd101t2587->enabled) 38 - return 0; 39 - 40 40 ret = mipi_dsi_shutdown_peripheral(osd101t2587->dsi); 41 - 42 - osd101t2587->enabled = false; 43 41 44 42 return ret; 45 43 } ··· 43 51 { 44 52 struct osd101t2587_panel *osd101t2587 = ti_osd_panel(panel); 45 53 46 - if (!osd101t2587->prepared) 47 - return 0; 48 - 49 54 regulator_disable(osd101t2587->supply); 50 - osd101t2587->prepared = false; 51 55 52 56 return 0; 53 57 } ··· 51 63 static int osd101t2587_panel_prepare(struct drm_panel *panel) 52 64 { 53 65 struct osd101t2587_panel *osd101t2587 = ti_osd_panel(panel); 54 - int ret; 55 66 56 - if (osd101t2587->prepared) 57 - return 0; 58 - 59 - ret = regulator_enable(osd101t2587->supply); 60 - if (!ret) 61 - osd101t2587->prepared = true; 62 - 63 - return ret; 67 + return regulator_enable(osd101t2587->supply); 64 68 } 65 69 66 70 static int osd101t2587_panel_enable(struct drm_panel *panel) ··· 60 80 struct osd101t2587_panel *osd101t2587 = ti_osd_panel(panel); 61 81 int ret; 62 82 63 - if (osd101t2587->enabled) 64 - return 0; 65 - 66 83 ret = mipi_dsi_turn_on_peripheral(osd101t2587->dsi); 67 84 if (ret) 68 85 return ret; 69 - 70 - osd101t2587->enabled = true; 71 86 72 87 return ret; 73 88 } ··· 186 211 struct osd101t2587_panel *osd101t2587 = mipi_dsi_get_drvdata(dsi); 187 212 int ret; 188 213 189 - ret = drm_panel_disable(&osd101t2587->base); 190 - if (ret < 0) 191 - dev_warn(&dsi->dev, "failed to disable panel: %d\n", ret); 192 - 193 - drm_panel_unprepare(&osd101t2587->base); 194 214 drm_panel_remove(&osd101t2587->base); 195 215 196 216 ret = mipi_dsi_detach(dsi); 197 217 if (ret < 0) 198 218 dev_err(&dsi->dev, "failed to detach from DSI host: %d\n", ret); 199 - } 200 - 201 - static void osd101t2587_panel_shutdown(struct mipi_dsi_device *dsi) 202 - { 203 - struct osd101t2587_panel *osd101t2587 = mipi_dsi_get_drvdata(dsi); 204 - 205 - drm_panel_disable(&osd101t2587->base); 206 - drm_panel_unprepare(&osd101t2587->base); 207 219 } 208 220 209 221 static struct mipi_dsi_driver osd101t2587_panel_driver = { ··· 200 238 }, 201 239 .probe = osd101t2587_panel_probe, 202 240 .remove = osd101t2587_panel_remove, 203 - .shutdown = osd101t2587_panel_shutdown, 204 241 }; 205 242 module_mipi_dsi_driver(osd101t2587_panel_driver); 206 243
+1 -46
drivers/gpu/drm/panel/panel-panasonic-vvx10f034n00.c
··· 32 32 33 33 struct regulator *supply; 34 34 35 - bool prepared; 36 - bool enabled; 37 - 38 35 ktime_t earliest_wake; 39 36 40 37 const struct drm_display_mode *mode; ··· 50 53 static int wuxga_nt_panel_disable(struct drm_panel *panel) 51 54 { 52 55 struct wuxga_nt_panel *wuxga_nt = to_wuxga_nt_panel(panel); 53 - int mipi_ret, bl_ret = 0; 54 56 55 - if (!wuxga_nt->enabled) 56 - return 0; 57 - 58 - mipi_ret = mipi_dsi_shutdown_peripheral(wuxga_nt->dsi); 59 - 60 - wuxga_nt->enabled = false; 61 - 62 - return mipi_ret ? mipi_ret : bl_ret; 57 + return mipi_dsi_shutdown_peripheral(wuxga_nt->dsi); 63 58 } 64 59 65 60 static int wuxga_nt_panel_unprepare(struct drm_panel *panel) 66 61 { 67 62 struct wuxga_nt_panel *wuxga_nt = to_wuxga_nt_panel(panel); 68 63 69 - if (!wuxga_nt->prepared) 70 - return 0; 71 - 72 64 regulator_disable(wuxga_nt->supply); 73 65 wuxga_nt->earliest_wake = ktime_add_ms(ktime_get_real(), MIN_POFF_MS); 74 - wuxga_nt->prepared = false; 75 66 76 67 return 0; 77 68 } ··· 69 84 struct wuxga_nt_panel *wuxga_nt = to_wuxga_nt_panel(panel); 70 85 int ret; 71 86 s64 enablewait; 72 - 73 - if (wuxga_nt->prepared) 74 - return 0; 75 87 76 88 /* 77 89 * If the user re-enabled the panel before the required off-time then ··· 99 117 goto poweroff; 100 118 } 101 119 102 - wuxga_nt->prepared = true; 103 - 104 120 return 0; 105 121 106 122 poweroff: 107 123 regulator_disable(wuxga_nt->supply); 108 124 109 125 return ret; 110 - } 111 - 112 - static int wuxga_nt_panel_enable(struct drm_panel *panel) 113 - { 114 - struct wuxga_nt_panel *wuxga_nt = to_wuxga_nt_panel(panel); 115 - 116 - if (wuxga_nt->enabled) 117 - return 0; 118 - 119 - wuxga_nt->enabled = true; 120 - 121 - return 0; 122 126 } 123 127 124 128 static const struct drm_display_mode default_mode = { ··· 146 178 .disable = wuxga_nt_panel_disable, 147 179 .unprepare = wuxga_nt_panel_unprepare, 148 180 .prepare = wuxga_nt_panel_prepare, 149 - .enable = wuxga_nt_panel_enable, 150 181 .get_modes = wuxga_nt_panel_get_modes, 151 182 }; 152 183 ··· 222 255 struct wuxga_nt_panel *wuxga_nt = mipi_dsi_get_drvdata(dsi); 223 256 int ret; 224 257 225 - ret = drm_panel_disable(&wuxga_nt->base); 226 - if (ret < 0) 227 - dev_err(&dsi->dev, "failed to disable panel: %d\n", ret); 228 - 229 258 ret = mipi_dsi_detach(dsi); 230 259 if (ret < 0) 231 260 dev_err(&dsi->dev, "failed to detach from DSI host: %d\n", ret); 232 261 233 262 wuxga_nt_panel_del(wuxga_nt); 234 - } 235 - 236 - static void wuxga_nt_panel_shutdown(struct mipi_dsi_device *dsi) 237 - { 238 - struct wuxga_nt_panel *wuxga_nt = mipi_dsi_get_drvdata(dsi); 239 - 240 - drm_panel_disable(&wuxga_nt->base); 241 263 } 242 264 243 265 static struct mipi_dsi_driver wuxga_nt_panel_driver = { ··· 236 280 }, 237 281 .probe = wuxga_nt_panel_probe, 238 282 .remove = wuxga_nt_panel_remove, 239 - .shutdown = wuxga_nt_panel_shutdown, 240 283 }; 241 284 module_mipi_dsi_driver(wuxga_nt_panel_driver); 242 285
-26
drivers/gpu/drm/panel/panel-raydium-rm67191.c
··· 205 205 unsigned int num_supplies; 206 206 207 207 bool prepared; 208 - bool enabled; 209 208 }; 210 209 211 210 static const struct drm_display_mode default_mode = { ··· 266 267 struct rad_panel *rad = to_rad_panel(panel); 267 268 int ret; 268 269 269 - if (rad->prepared) 270 - return 0; 271 - 272 270 ret = regulator_bulk_enable(rad->num_supplies, rad->supplies); 273 271 if (ret) 274 272 return ret; ··· 286 290 { 287 291 struct rad_panel *rad = to_rad_panel(panel); 288 292 int ret; 289 - 290 - if (!rad->prepared) 291 - return 0; 292 293 293 294 /* 294 295 * Right after asserting the reset, we need to release it, so that the ··· 314 321 struct device *dev = &dsi->dev; 315 322 int color_format = color_format_from_dsi_format(dsi->format); 316 323 int ret; 317 - 318 - if (rad->enabled) 319 - return 0; 320 324 321 325 dsi->mode_flags |= MIPI_DSI_MODE_LPM; 322 326 ··· 379 389 380 390 backlight_enable(rad->backlight); 381 391 382 - rad->enabled = true; 383 - 384 392 return 0; 385 393 386 394 fail: ··· 393 405 struct mipi_dsi_device *dsi = rad->dsi; 394 406 struct device *dev = &dsi->dev; 395 407 int ret; 396 - 397 - if (!rad->enabled) 398 - return 0; 399 408 400 409 dsi->mode_flags |= MIPI_DSI_MODE_LPM; 401 410 ··· 413 428 dev_err(dev, "Failed to enter sleep mode (%d)\n", ret); 414 429 return ret; 415 430 } 416 - 417 - rad->enabled = false; 418 431 419 432 return 0; 420 433 } ··· 612 629 drm_panel_remove(&rad->panel); 613 630 } 614 631 615 - static void rad_panel_shutdown(struct mipi_dsi_device *dsi) 616 - { 617 - struct rad_panel *rad = mipi_dsi_get_drvdata(dsi); 618 - 619 - rad_panel_disable(&rad->panel); 620 - rad_panel_unprepare(&rad->panel); 621 - } 622 - 623 632 static const struct of_device_id rad_of_match[] = { 624 633 { .compatible = "raydium,rm67191", }, 625 634 { /* sentinel */ } ··· 625 650 }, 626 651 .probe = rad_panel_probe, 627 652 .remove = rad_panel_remove, 628 - .shutdown = rad_panel_shutdown, 629 653 }; 630 654 module_mipi_dsi_driver(rad_panel_driver); 631 655
-49
drivers/gpu/drm/panel/panel-seiko-43wvf1g.c
··· 44 44 45 45 struct seiko_panel { 46 46 struct drm_panel base; 47 - bool prepared; 48 - bool enabled; 49 47 const struct seiko_panel_desc *desc; 50 48 struct regulator *dvdd; 51 49 struct regulator *avdd; ··· 120 122 return num; 121 123 } 122 124 123 - static int seiko_panel_disable(struct drm_panel *panel) 124 - { 125 - struct seiko_panel *p = to_seiko_panel(panel); 126 - 127 - if (!p->enabled) 128 - return 0; 129 - 130 - p->enabled = false; 131 - 132 - return 0; 133 - } 134 - 135 125 static int seiko_panel_unprepare(struct drm_panel *panel) 136 126 { 137 127 struct seiko_panel *p = to_seiko_panel(panel); 138 - 139 - if (!p->prepared) 140 - return 0; 141 128 142 129 gpiod_set_value_cansleep(p->enable_gpio, 0); 143 130 ··· 133 150 134 151 regulator_disable(p->dvdd); 135 152 136 - p->prepared = false; 137 - 138 153 return 0; 139 154 } 140 155 ··· 140 159 { 141 160 struct seiko_panel *p = to_seiko_panel(panel); 142 161 int err; 143 - 144 - if (p->prepared) 145 - return 0; 146 162 147 163 err = regulator_enable(p->dvdd); 148 164 if (err < 0) { ··· 158 180 159 181 gpiod_set_value_cansleep(p->enable_gpio, 1); 160 182 161 - p->prepared = true; 162 - 163 183 return 0; 164 184 165 185 disable_dvdd: 166 186 regulator_disable(p->dvdd); 167 187 return err; 168 - } 169 - 170 - static int seiko_panel_enable(struct drm_panel *panel) 171 - { 172 - struct seiko_panel *p = to_seiko_panel(panel); 173 - 174 - if (p->enabled) 175 - return 0; 176 - 177 - p->enabled = true; 178 - 179 - return 0; 180 188 } 181 189 182 190 static int seiko_panel_get_modes(struct drm_panel *panel, ··· 192 228 } 193 229 194 230 static const struct drm_panel_funcs seiko_panel_funcs = { 195 - .disable = seiko_panel_disable, 196 231 .unprepare = seiko_panel_unprepare, 197 232 .prepare = seiko_panel_prepare, 198 - .enable = seiko_panel_enable, 199 233 .get_modes = seiko_panel_get_modes, 200 234 .get_timings = seiko_panel_get_timings, 201 235 }; ··· 208 246 if (!panel) 209 247 return -ENOMEM; 210 248 211 - panel->enabled = false; 212 - panel->prepared = false; 213 249 panel->desc = desc; 214 250 215 251 panel->dvdd = devm_regulator_get(dev, "dvdd"); ··· 243 283 struct seiko_panel *panel = platform_get_drvdata(pdev); 244 284 245 285 drm_panel_remove(&panel->base); 246 - drm_panel_disable(&panel->base); 247 - } 248 - 249 - static void seiko_panel_shutdown(struct platform_device *pdev) 250 - { 251 - struct seiko_panel *panel = platform_get_drvdata(pdev); 252 - 253 - drm_panel_disable(&panel->base); 254 286 } 255 287 256 288 static const struct display_timing seiko_43wvf1g_timing = { ··· 298 346 }, 299 347 .probe = seiko_panel_platform_probe, 300 348 .remove_new = seiko_panel_remove, 301 - .shutdown = seiko_panel_shutdown, 302 349 }; 303 350 module_platform_driver(seiko_panel_platform_driver); 304 351
+2 -61
drivers/gpu/drm/panel/panel-sharp-lq101r1sx01.c
··· 24 24 25 25 struct regulator *supply; 26 26 27 - bool prepared; 28 - bool enabled; 29 - 30 27 const struct drm_display_mode *mode; 31 28 }; 32 29 ··· 82 85 return err; 83 86 } 84 87 85 - static int sharp_panel_disable(struct drm_panel *panel) 86 - { 87 - struct sharp_panel *sharp = to_sharp_panel(panel); 88 - 89 - if (!sharp->enabled) 90 - return 0; 91 - 92 - sharp->enabled = false; 93 - 94 - return 0; 95 - } 96 - 97 88 static int sharp_panel_unprepare(struct drm_panel *panel) 98 89 { 99 90 struct sharp_panel *sharp = to_sharp_panel(panel); 100 91 int err; 101 - 102 - if (!sharp->prepared) 103 - return 0; 104 92 105 93 sharp_wait_frames(sharp, 4); 106 94 ··· 100 118 msleep(120); 101 119 102 120 regulator_disable(sharp->supply); 103 - 104 - sharp->prepared = false; 105 121 106 122 return 0; 107 123 } ··· 143 163 struct sharp_panel *sharp = to_sharp_panel(panel); 144 164 u8 format = MIPI_DCS_PIXEL_FMT_24BIT; 145 165 int err; 146 - 147 - if (sharp->prepared) 148 - return 0; 149 166 150 167 err = regulator_enable(sharp->supply); 151 168 if (err < 0) ··· 212 235 goto poweroff; 213 236 } 214 237 215 - sharp->prepared = true; 216 - 217 238 /* wait for 6 frames before continuing */ 218 239 sharp_wait_frames(sharp, 6); 219 240 ··· 220 245 poweroff: 221 246 regulator_disable(sharp->supply); 222 247 return err; 223 - } 224 - 225 - static int sharp_panel_enable(struct drm_panel *panel) 226 - { 227 - struct sharp_panel *sharp = to_sharp_panel(panel); 228 - 229 - if (sharp->enabled) 230 - return 0; 231 - 232 - sharp->enabled = true; 233 - 234 - return 0; 235 248 } 236 249 237 250 static const struct drm_display_mode default_mode = { ··· 258 295 } 259 296 260 297 static const struct drm_panel_funcs sharp_panel_funcs = { 261 - .disable = sharp_panel_disable, 262 298 .unprepare = sharp_panel_unprepare, 263 299 .prepare = sharp_panel_prepare, 264 - .enable = sharp_panel_enable, 265 300 .get_modes = sharp_panel_get_modes, 266 301 }; 267 302 ··· 357 396 struct sharp_panel *sharp = mipi_dsi_get_drvdata(dsi); 358 397 int err; 359 398 360 - /* only detach from host for the DSI-LINK2 interface */ 361 - if (!sharp) { 362 - mipi_dsi_detach(dsi); 363 - return; 364 - } 365 - 366 - err = drm_panel_disable(&sharp->base); 367 - if (err < 0) 368 - dev_err(&dsi->dev, "failed to disable panel: %d\n", err); 369 - 370 399 err = mipi_dsi_detach(dsi); 371 400 if (err < 0) 372 401 dev_err(&dsi->dev, "failed to detach from DSI host: %d\n", err); 373 402 374 - sharp_panel_del(sharp); 375 - } 376 - 377 - static void sharp_panel_shutdown(struct mipi_dsi_device *dsi) 378 - { 379 - struct sharp_panel *sharp = mipi_dsi_get_drvdata(dsi); 380 - 381 - /* nothing to do for DSI-LINK2 */ 403 + /* only detach from host for the DSI-LINK2 interface */ 382 404 if (!sharp) 383 - return; 384 - 385 - drm_panel_disable(&sharp->base); 405 + sharp_panel_del(sharp); 386 406 } 387 407 388 408 static struct mipi_dsi_driver sharp_panel_driver = { ··· 373 431 }, 374 432 .probe = sharp_panel_probe, 375 433 .remove = sharp_panel_remove, 376 - .shutdown = sharp_panel_shutdown, 377 434 }; 378 435 module_mipi_dsi_driver(sharp_panel_driver); 379 436
-24
drivers/gpu/drm/panel/panel-sharp-ls043t1le01.c
··· 26 26 27 27 struct regulator *supply; 28 28 struct gpio_desc *reset_gpio; 29 - 30 - bool prepared; 31 29 }; 32 30 33 31 static inline struct sharp_nt_panel *to_sharp_nt_panel(struct drm_panel *panel) ··· 97 99 struct sharp_nt_panel *sharp_nt = to_sharp_nt_panel(panel); 98 100 int ret; 99 101 100 - if (!sharp_nt->prepared) 101 - return 0; 102 - 103 102 ret = sharp_nt_panel_off(sharp_nt); 104 103 if (ret < 0) { 105 104 dev_err(panel->dev, "failed to set panel off: %d\n", ret); ··· 107 112 if (sharp_nt->reset_gpio) 108 113 gpiod_set_value(sharp_nt->reset_gpio, 0); 109 114 110 - sharp_nt->prepared = false; 111 - 112 115 return 0; 113 116 } 114 117 ··· 114 121 { 115 122 struct sharp_nt_panel *sharp_nt = to_sharp_nt_panel(panel); 116 123 int ret; 117 - 118 - if (sharp_nt->prepared) 119 - return 0; 120 124 121 125 ret = regulator_enable(sharp_nt->supply); 122 126 if (ret < 0) ··· 141 151 dev_err(panel->dev, "failed to set panel on: %d\n", ret); 142 152 goto poweroff; 143 153 } 144 - 145 - sharp_nt->prepared = true; 146 154 147 155 return 0; 148 156 ··· 267 279 struct sharp_nt_panel *sharp_nt = mipi_dsi_get_drvdata(dsi); 268 280 int ret; 269 281 270 - ret = drm_panel_disable(&sharp_nt->base); 271 - if (ret < 0) 272 - dev_err(&dsi->dev, "failed to disable panel: %d\n", ret); 273 - 274 282 ret = mipi_dsi_detach(dsi); 275 283 if (ret < 0) 276 284 dev_err(&dsi->dev, "failed to detach from DSI host: %d\n", ret); 277 285 278 286 sharp_nt_panel_del(sharp_nt); 279 - } 280 - 281 - static void sharp_nt_panel_shutdown(struct mipi_dsi_device *dsi) 282 - { 283 - struct sharp_nt_panel *sharp_nt = mipi_dsi_get_drvdata(dsi); 284 - 285 - drm_panel_disable(&sharp_nt->base); 286 287 } 287 288 288 289 static const struct of_device_id sharp_nt_of_match[] = { ··· 287 310 }, 288 311 .probe = sharp_nt_panel_probe, 289 312 .remove = sharp_nt_panel_remove, 290 - .shutdown = sharp_nt_panel_shutdown, 291 313 }; 292 314 module_mipi_dsi_driver(sharp_nt_panel_driver); 293 315
+29
drivers/gpu/drm/panel/panel-simple.c
··· 3640 3640 .connector_type = DRM_MODE_CONNECTOR_DPI, 3641 3641 }; 3642 3642 3643 + static const struct drm_display_mode primeview_pm070wl4_mode = { 3644 + .clock = 32000, 3645 + .hdisplay = 800, 3646 + .hsync_start = 800 + 42, 3647 + .hsync_end = 800 + 42 + 128, 3648 + .htotal = 800 + 42 + 128 + 86, 3649 + .vdisplay = 480, 3650 + .vsync_start = 480 + 10, 3651 + .vsync_end = 480 + 10 + 2, 3652 + .vtotal = 480 + 10 + 2 + 33, 3653 + .flags = DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC, 3654 + }; 3655 + 3656 + static const struct panel_desc primeview_pm070wl4 = { 3657 + .modes = &primeview_pm070wl4_mode, 3658 + .num_modes = 1, 3659 + .bpc = 6, 3660 + .size = { 3661 + .width = 152, 3662 + .height = 91, 3663 + }, 3664 + .bus_flags = DRM_BUS_FLAG_DE_HIGH | DRM_BUS_FLAG_PIXDATA_SAMPLE_POSEDGE, 3665 + .bus_format = MEDIA_BUS_FMT_RGB666_1X18, 3666 + .connector_type = DRM_MODE_CONNECTOR_DPI, 3667 + }; 3668 + 3643 3669 static const struct drm_display_mode qd43003c0_40_mode = { 3644 3670 .clock = 9000, 3645 3671 .hdisplay = 480, ··· 4833 4807 }, { 4834 4808 .compatible = "powertip,ph800480t013-idf02", 4835 4809 .data = &powertip_ph800480t013_idf02, 4810 + }, { 4811 + .compatible = "primeview,pm070wl4", 4812 + .data = &primeview_pm070wl4, 4836 4813 }, { 4837 4814 .compatible = "qiaodian,qd43003c0-40", 4838 4815 .data = &qd43003c0_40,
-23
drivers/gpu/drm/panel/panel-tdo-tl070wsh30.c
··· 24 24 25 25 struct regulator *supply; 26 26 struct gpio_desc *reset_gpio; 27 - 28 - bool prepared; 29 27 }; 30 28 31 29 static inline ··· 36 38 { 37 39 struct tdo_tl070wsh30_panel *tdo_tl070wsh30 = to_tdo_tl070wsh30_panel(panel); 38 40 int err; 39 - 40 - if (tdo_tl070wsh30->prepared) 41 - return 0; 42 41 43 42 err = regulator_enable(tdo_tl070wsh30->supply); 44 43 if (err < 0) ··· 69 74 70 75 msleep(20); 71 76 72 - tdo_tl070wsh30->prepared = true; 73 - 74 77 return 0; 75 78 } 76 79 ··· 76 83 { 77 84 struct tdo_tl070wsh30_panel *tdo_tl070wsh30 = to_tdo_tl070wsh30_panel(panel); 78 85 int err; 79 - 80 - if (!tdo_tl070wsh30->prepared) 81 - return 0; 82 86 83 87 err = mipi_dsi_dcs_set_display_off(tdo_tl070wsh30->link); 84 88 if (err < 0) ··· 92 102 usleep_range(10000, 11000); 93 103 94 104 regulator_disable(tdo_tl070wsh30->supply); 95 - 96 - tdo_tl070wsh30->prepared = false; 97 105 98 106 return 0; 99 107 } ··· 208 220 dev_err(&dsi->dev, "failed to detach from DSI host: %d\n", err); 209 221 210 222 drm_panel_remove(&tdo_tl070wsh30->base); 211 - drm_panel_disable(&tdo_tl070wsh30->base); 212 - drm_panel_unprepare(&tdo_tl070wsh30->base); 213 - } 214 - 215 - static void tdo_tl070wsh30_panel_shutdown(struct mipi_dsi_device *dsi) 216 - { 217 - struct tdo_tl070wsh30_panel *tdo_tl070wsh30 = mipi_dsi_get_drvdata(dsi); 218 - 219 - drm_panel_disable(&tdo_tl070wsh30->base); 220 - drm_panel_unprepare(&tdo_tl070wsh30->base); 221 223 } 222 224 223 225 static struct mipi_dsi_driver tdo_tl070wsh30_panel_driver = { ··· 217 239 }, 218 240 .probe = tdo_tl070wsh30_panel_probe, 219 241 .remove = tdo_tl070wsh30_panel_remove, 220 - .shutdown = tdo_tl070wsh30_panel_shutdown, 221 242 }; 222 243 module_mipi_dsi_driver(tdo_tl070wsh30_panel_driver); 223 244
+3 -1
drivers/gpu/drm/sun4i/sun4i_backend.c
··· 69 69 SUN4I_BACKEND_OCCTL_ENABLE, 0); 70 70 } 71 71 72 - static void sun4i_backend_commit(struct sunxi_engine *engine) 72 + static void sun4i_backend_commit(struct sunxi_engine *engine, 73 + struct drm_crtc *crtc, 74 + struct drm_atomic_state *state) 73 75 { 74 76 DRM_DEBUG_DRIVER("Committing changes\n"); 75 77
+1 -1
drivers/gpu/drm/sun4i/sun4i_crtc.c
··· 91 91 92 92 DRM_DEBUG_DRIVER("Committing plane changes\n"); 93 93 94 - sunxi_engine_commit(scrtc->engine); 94 + sunxi_engine_commit(scrtc->engine, crtc, state); 95 95 96 96 if (event) { 97 97 crtc->state->event = NULL;
+67 -3
drivers/gpu/drm/sun4i/sun8i_mixer.c
··· 16 16 #include <linux/platform_device.h> 17 17 #include <linux/reset.h> 18 18 19 + #include <drm/drm_atomic.h> 19 20 #include <drm/drm_atomic_helper.h> 20 21 #include <drm/drm_crtc.h> 21 22 #include <drm/drm_framebuffer.h> ··· 250 249 return -EINVAL; 251 250 } 252 251 253 - static void sun8i_mixer_commit(struct sunxi_engine *engine) 252 + static void sun8i_layer_enable(struct sun8i_layer *layer, bool enable) 254 253 { 254 + u32 ch_base = sun8i_channel_base(layer->mixer, layer->channel); 255 + u32 val, reg, mask; 256 + 257 + if (layer->type == SUN8I_LAYER_TYPE_UI) { 258 + val = enable ? SUN8I_MIXER_CHAN_UI_LAYER_ATTR_EN : 0; 259 + mask = SUN8I_MIXER_CHAN_UI_LAYER_ATTR_EN; 260 + reg = SUN8I_MIXER_CHAN_UI_LAYER_ATTR(ch_base, layer->overlay); 261 + } else { 262 + val = enable ? SUN8I_MIXER_CHAN_VI_LAYER_ATTR_EN : 0; 263 + mask = SUN8I_MIXER_CHAN_VI_LAYER_ATTR_EN; 264 + reg = SUN8I_MIXER_CHAN_VI_LAYER_ATTR(ch_base, layer->overlay); 265 + } 266 + 267 + regmap_update_bits(layer->mixer->engine.regs, reg, mask, val); 268 + } 269 + 270 + static void sun8i_mixer_commit(struct sunxi_engine *engine, 271 + struct drm_crtc *crtc, 272 + struct drm_atomic_state *state) 273 + { 274 + struct sun8i_mixer *mixer = engine_to_sun8i_mixer(engine); 275 + u32 bld_base = sun8i_blender_base(mixer); 276 + struct drm_plane_state *plane_state; 277 + struct drm_plane *plane; 278 + u32 route = 0, pipe_en = 0; 279 + 255 280 DRM_DEBUG_DRIVER("Committing changes\n"); 281 + 282 + drm_for_each_plane(plane, state->dev) { 283 + struct sun8i_layer *layer = plane_to_sun8i_layer(plane); 284 + bool enable; 285 + int zpos; 286 + 287 + if (!(plane->possible_crtcs & drm_crtc_mask(crtc)) || layer->mixer != mixer) 288 + continue; 289 + 290 + plane_state = drm_atomic_get_new_plane_state(state, plane); 291 + if (!plane_state) 292 + plane_state = plane->state; 293 + 294 + enable = plane_state->crtc && plane_state->visible; 295 + zpos = plane_state->normalized_zpos; 296 + 297 + DRM_DEBUG_DRIVER(" plane %d: chan=%d ovl=%d en=%d zpos=%d\n", 298 + plane->base.id, layer->channel, layer->overlay, 299 + enable, zpos); 300 + 301 + /* 302 + * We always update the layer enable bit, because it can clear 303 + * spontaneously for unknown reasons. 304 + */ 305 + sun8i_layer_enable(layer, enable); 306 + 307 + if (!enable) 308 + continue; 309 + 310 + /* Route layer to pipe based on zpos */ 311 + route |= layer->channel << SUN8I_MIXER_BLEND_ROUTE_PIPE_SHIFT(zpos); 312 + pipe_en |= SUN8I_MIXER_BLEND_PIPE_CTL_EN(zpos); 313 + } 314 + 315 + regmap_write(mixer->engine.regs, SUN8I_MIXER_BLEND_ROUTE(bld_base), route); 316 + regmap_write(mixer->engine.regs, SUN8I_MIXER_BLEND_PIPE_CTL(bld_base), 317 + pipe_en | SUN8I_MIXER_BLEND_PIPE_CTL_FC_EN(0)); 256 318 257 319 regmap_write(engine->regs, SUN8I_MIXER_GLOBAL_DBUFF, 258 320 SUN8I_MIXER_GLOBAL_DBUFF_ENABLE); ··· 335 271 return ERR_PTR(-ENOMEM); 336 272 337 273 for (i = 0; i < mixer->cfg->vi_num; i++) { 338 - struct sun8i_vi_layer *layer; 274 + struct sun8i_layer *layer; 339 275 340 276 layer = sun8i_vi_layer_init_one(drm, mixer, i); 341 277 if (IS_ERR(layer)) { ··· 348 284 } 349 285 350 286 for (i = 0; i < mixer->cfg->ui_num; i++) { 351 - struct sun8i_ui_layer *layer; 287 + struct sun8i_layer *layer; 352 288 353 289 layer = sun8i_ui_layer_init_one(drm, mixer, i); 354 290 if (IS_ERR(layer)) {
+20
drivers/gpu/drm/sun4i/sun8i_mixer.h
··· 9 9 #include <linux/clk.h> 10 10 #include <linux/regmap.h> 11 11 #include <linux/reset.h> 12 + #include <drm/drm_plane.h> 12 13 13 14 #include "sunxi_engine.h" 14 15 ··· 185 184 struct clk *bus_clk; 186 185 struct clk *mod_clk; 187 186 }; 187 + 188 + enum { 189 + SUN8I_LAYER_TYPE_UI, 190 + SUN8I_LAYER_TYPE_VI, 191 + }; 192 + 193 + struct sun8i_layer { 194 + struct drm_plane plane; 195 + struct sun8i_mixer *mixer; 196 + int type; 197 + int channel; 198 + int overlay; 199 + }; 200 + 201 + static inline struct sun8i_layer * 202 + plane_to_sun8i_layer(struct drm_plane *plane) 203 + { 204 + return container_of(plane, struct sun8i_layer, plane); 205 + } 188 206 189 207 static inline struct sun8i_mixer * 190 208 engine_to_sun8i_mixer(struct sunxi_engine *engine)
+8 -77
drivers/gpu/drm/sun4i/sun8i_ui_layer.c
··· 24 24 #include "sun8i_ui_layer.h" 25 25 #include "sun8i_ui_scaler.h" 26 26 27 - static void sun8i_ui_layer_enable(struct sun8i_mixer *mixer, int channel, 28 - int overlay, bool enable, unsigned int zpos, 29 - unsigned int old_zpos) 30 - { 31 - u32 val, bld_base, ch_base; 32 - 33 - bld_base = sun8i_blender_base(mixer); 34 - ch_base = sun8i_channel_base(mixer, channel); 35 - 36 - DRM_DEBUG_DRIVER("%sabling channel %d overlay %d\n", 37 - enable ? "En" : "Dis", channel, overlay); 38 - 39 - if (enable) 40 - val = SUN8I_MIXER_CHAN_UI_LAYER_ATTR_EN; 41 - else 42 - val = 0; 43 - 44 - regmap_update_bits(mixer->engine.regs, 45 - SUN8I_MIXER_CHAN_UI_LAYER_ATTR(ch_base, overlay), 46 - SUN8I_MIXER_CHAN_UI_LAYER_ATTR_EN, val); 47 - 48 - if (!enable || zpos != old_zpos) { 49 - regmap_update_bits(mixer->engine.regs, 50 - SUN8I_MIXER_BLEND_PIPE_CTL(bld_base), 51 - SUN8I_MIXER_BLEND_PIPE_CTL_EN(old_zpos), 52 - 0); 53 - 54 - regmap_update_bits(mixer->engine.regs, 55 - SUN8I_MIXER_BLEND_ROUTE(bld_base), 56 - SUN8I_MIXER_BLEND_ROUTE_PIPE_MSK(old_zpos), 57 - 0); 58 - } 59 - 60 - if (enable) { 61 - val = SUN8I_MIXER_BLEND_PIPE_CTL_EN(zpos); 62 - 63 - regmap_update_bits(mixer->engine.regs, 64 - SUN8I_MIXER_BLEND_PIPE_CTL(bld_base), 65 - val, val); 66 - 67 - val = channel << SUN8I_MIXER_BLEND_ROUTE_PIPE_SHIFT(zpos); 68 - 69 - regmap_update_bits(mixer->engine.regs, 70 - SUN8I_MIXER_BLEND_ROUTE(bld_base), 71 - SUN8I_MIXER_BLEND_ROUTE_PIPE_MSK(zpos), 72 - val); 73 - } 74 - } 75 - 76 27 static void sun8i_ui_layer_update_alpha(struct sun8i_mixer *mixer, int channel, 77 28 int overlay, struct drm_plane *plane) 78 29 { ··· 183 232 { 184 233 struct drm_plane_state *new_plane_state = drm_atomic_get_new_plane_state(state, 185 234 plane); 186 - struct sun8i_ui_layer *layer = plane_to_sun8i_ui_layer(plane); 235 + struct sun8i_layer *layer = plane_to_sun8i_layer(plane); 187 236 struct drm_crtc *crtc = new_plane_state->crtc; 188 237 struct drm_crtc_state *crtc_state; 189 238 int min_scale, max_scale; ··· 210 259 true, true); 211 260 } 212 261 213 - static void sun8i_ui_layer_atomic_disable(struct drm_plane *plane, 214 - struct drm_atomic_state *state) 215 - { 216 - struct drm_plane_state *old_state = drm_atomic_get_old_plane_state(state, 217 - plane); 218 - struct sun8i_ui_layer *layer = plane_to_sun8i_ui_layer(plane); 219 - unsigned int old_zpos = old_state->normalized_zpos; 220 - struct sun8i_mixer *mixer = layer->mixer; 221 - 222 - sun8i_ui_layer_enable(mixer, layer->channel, layer->overlay, false, 0, 223 - old_zpos); 224 - } 225 262 226 263 static void sun8i_ui_layer_atomic_update(struct drm_plane *plane, 227 264 struct drm_atomic_state *state) 228 265 { 229 - struct drm_plane_state *old_state = drm_atomic_get_old_plane_state(state, 230 - plane); 231 266 struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state, 232 267 plane); 233 - struct sun8i_ui_layer *layer = plane_to_sun8i_ui_layer(plane); 268 + struct sun8i_layer *layer = plane_to_sun8i_layer(plane); 234 269 unsigned int zpos = new_state->normalized_zpos; 235 - unsigned int old_zpos = old_state->normalized_zpos; 236 270 struct sun8i_mixer *mixer = layer->mixer; 237 271 238 - if (!new_state->visible) { 239 - sun8i_ui_layer_enable(mixer, layer->channel, 240 - layer->overlay, false, 0, old_zpos); 272 + if (!new_state->crtc || !new_state->visible) 241 273 return; 242 - } 243 274 244 275 sun8i_ui_layer_update_coord(mixer, layer->channel, 245 276 layer->overlay, plane, zpos); ··· 231 298 layer->overlay, plane); 232 299 sun8i_ui_layer_update_buffer(mixer, layer->channel, 233 300 layer->overlay, plane); 234 - sun8i_ui_layer_enable(mixer, layer->channel, layer->overlay, 235 - true, zpos, old_zpos); 236 301 } 237 302 238 303 static const struct drm_plane_helper_funcs sun8i_ui_layer_helper_funcs = { 239 304 .atomic_check = sun8i_ui_layer_atomic_check, 240 - .atomic_disable = sun8i_ui_layer_atomic_disable, 241 305 .atomic_update = sun8i_ui_layer_atomic_update, 242 306 }; 243 307 ··· 275 345 DRM_FORMAT_MOD_INVALID 276 346 }; 277 347 278 - struct sun8i_ui_layer *sun8i_ui_layer_init_one(struct drm_device *drm, 279 - struct sun8i_mixer *mixer, 280 - int index) 348 + struct sun8i_layer *sun8i_ui_layer_init_one(struct drm_device *drm, 349 + struct sun8i_mixer *mixer, 350 + int index) 281 351 { 282 352 enum drm_plane_type type = DRM_PLANE_TYPE_OVERLAY; 283 353 int channel = mixer->cfg->vi_num + index; 284 - struct sun8i_ui_layer *layer; 354 + struct sun8i_layer *layer; 285 355 unsigned int plane_cnt; 286 356 int ret; 287 357 ··· 320 390 321 391 drm_plane_helper_add(&layer->plane, &sun8i_ui_layer_helper_funcs); 322 392 layer->mixer = mixer; 393 + layer->type = SUN8I_LAYER_TYPE_UI; 323 394 layer->channel = channel; 324 395 layer->overlay = 0; 325 396
+4 -16
drivers/gpu/drm/sun4i/sun8i_ui_layer.h
··· 47 47 #define SUN8I_MIXER_CHAN_UI_LAYER_ATTR_ALPHA_MODE_COMBINED ((2) << 1) 48 48 49 49 struct sun8i_mixer; 50 + struct sun8i_layer; 50 51 51 - struct sun8i_ui_layer { 52 - struct drm_plane plane; 53 - struct sun8i_mixer *mixer; 54 - int channel; 55 - int overlay; 56 - }; 57 - 58 - static inline struct sun8i_ui_layer * 59 - plane_to_sun8i_ui_layer(struct drm_plane *plane) 60 - { 61 - return container_of(plane, struct sun8i_ui_layer, plane); 62 - } 63 - 64 - struct sun8i_ui_layer *sun8i_ui_layer_init_one(struct drm_device *drm, 65 - struct sun8i_mixer *mixer, 66 - int index); 52 + struct sun8i_layer *sun8i_ui_layer_init_one(struct drm_device *drm, 53 + struct sun8i_mixer *mixer, 54 + int index); 67 55 #endif /* _SUN8I_UI_LAYER_H_ */
+8 -78
drivers/gpu/drm/sun4i/sun8i_vi_layer.c
··· 18 18 #include "sun8i_vi_layer.h" 19 19 #include "sun8i_vi_scaler.h" 20 20 21 - static void sun8i_vi_layer_enable(struct sun8i_mixer *mixer, int channel, 22 - int overlay, bool enable, unsigned int zpos, 23 - unsigned int old_zpos) 24 - { 25 - u32 val, bld_base, ch_base; 26 - 27 - bld_base = sun8i_blender_base(mixer); 28 - ch_base = sun8i_channel_base(mixer, channel); 29 - 30 - DRM_DEBUG_DRIVER("%sabling VI channel %d overlay %d\n", 31 - enable ? "En" : "Dis", channel, overlay); 32 - 33 - if (enable) 34 - val = SUN8I_MIXER_CHAN_VI_LAYER_ATTR_EN; 35 - else 36 - val = 0; 37 - 38 - regmap_update_bits(mixer->engine.regs, 39 - SUN8I_MIXER_CHAN_VI_LAYER_ATTR(ch_base, overlay), 40 - SUN8I_MIXER_CHAN_VI_LAYER_ATTR_EN, val); 41 - 42 - if (!enable || zpos != old_zpos) { 43 - regmap_update_bits(mixer->engine.regs, 44 - SUN8I_MIXER_BLEND_PIPE_CTL(bld_base), 45 - SUN8I_MIXER_BLEND_PIPE_CTL_EN(old_zpos), 46 - 0); 47 - 48 - regmap_update_bits(mixer->engine.regs, 49 - SUN8I_MIXER_BLEND_ROUTE(bld_base), 50 - SUN8I_MIXER_BLEND_ROUTE_PIPE_MSK(old_zpos), 51 - 0); 52 - } 53 - 54 - if (enable) { 55 - val = SUN8I_MIXER_BLEND_PIPE_CTL_EN(zpos); 56 - 57 - regmap_update_bits(mixer->engine.regs, 58 - SUN8I_MIXER_BLEND_PIPE_CTL(bld_base), 59 - val, val); 60 - 61 - val = channel << SUN8I_MIXER_BLEND_ROUTE_PIPE_SHIFT(zpos); 62 - 63 - regmap_update_bits(mixer->engine.regs, 64 - SUN8I_MIXER_BLEND_ROUTE(bld_base), 65 - SUN8I_MIXER_BLEND_ROUTE_PIPE_MSK(zpos), 66 - val); 67 - } 68 - } 69 - 70 21 static void sun8i_vi_layer_update_alpha(struct sun8i_mixer *mixer, int channel, 71 22 int overlay, struct drm_plane *plane) 72 23 { ··· 317 366 { 318 367 struct drm_plane_state *new_plane_state = drm_atomic_get_new_plane_state(state, 319 368 plane); 320 - struct sun8i_vi_layer *layer = plane_to_sun8i_vi_layer(plane); 369 + struct sun8i_layer *layer = plane_to_sun8i_layer(plane); 321 370 struct drm_crtc *crtc = new_plane_state->crtc; 322 371 struct drm_crtc_state *crtc_state; 323 372 int min_scale, max_scale; ··· 344 393 true, true); 345 394 } 346 395 347 - static void sun8i_vi_layer_atomic_disable(struct drm_plane *plane, 348 - struct drm_atomic_state *state) 349 - { 350 - struct drm_plane_state *old_state = drm_atomic_get_old_plane_state(state, 351 - plane); 352 - struct sun8i_vi_layer *layer = plane_to_sun8i_vi_layer(plane); 353 - unsigned int old_zpos = old_state->normalized_zpos; 354 - struct sun8i_mixer *mixer = layer->mixer; 355 - 356 - sun8i_vi_layer_enable(mixer, layer->channel, layer->overlay, false, 0, 357 - old_zpos); 358 - } 359 - 360 396 static void sun8i_vi_layer_atomic_update(struct drm_plane *plane, 361 397 struct drm_atomic_state *state) 362 398 { 363 - struct drm_plane_state *old_state = drm_atomic_get_old_plane_state(state, 364 - plane); 365 399 struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state, 366 400 plane); 367 - struct sun8i_vi_layer *layer = plane_to_sun8i_vi_layer(plane); 401 + struct sun8i_layer *layer = plane_to_sun8i_layer(plane); 368 402 unsigned int zpos = new_state->normalized_zpos; 369 - unsigned int old_zpos = old_state->normalized_zpos; 370 403 struct sun8i_mixer *mixer = layer->mixer; 371 404 372 - if (!new_state->visible) { 373 - sun8i_vi_layer_enable(mixer, layer->channel, 374 - layer->overlay, false, 0, old_zpos); 405 + if (!new_state->crtc || !new_state->visible) 375 406 return; 376 - } 377 407 378 408 sun8i_vi_layer_update_coord(mixer, layer->channel, 379 409 layer->overlay, plane, zpos); ··· 364 432 layer->overlay, plane); 365 433 sun8i_vi_layer_update_buffer(mixer, layer->channel, 366 434 layer->overlay, plane); 367 - sun8i_vi_layer_enable(mixer, layer->channel, layer->overlay, 368 - true, zpos, old_zpos); 369 435 } 370 436 371 437 static const struct drm_plane_helper_funcs sun8i_vi_layer_helper_funcs = { 372 438 .atomic_check = sun8i_vi_layer_atomic_check, 373 - .atomic_disable = sun8i_vi_layer_atomic_disable, 374 439 .atomic_update = sun8i_vi_layer_atomic_update, 375 440 }; 376 441 ··· 468 539 DRM_FORMAT_MOD_INVALID 469 540 }; 470 541 471 - struct sun8i_vi_layer *sun8i_vi_layer_init_one(struct drm_device *drm, 472 - struct sun8i_mixer *mixer, 473 - int index) 542 + struct sun8i_layer *sun8i_vi_layer_init_one(struct drm_device *drm, 543 + struct sun8i_mixer *mixer, 544 + int index) 474 545 { 475 546 enum drm_plane_type type = DRM_PLANE_TYPE_OVERLAY; 476 547 u32 supported_encodings, supported_ranges; 477 548 unsigned int plane_cnt, format_count; 478 - struct sun8i_vi_layer *layer; 549 + struct sun8i_layer *layer; 479 550 const u32 *formats; 480 551 int ret; 481 552 ··· 542 613 543 614 drm_plane_helper_add(&layer->plane, &sun8i_vi_layer_helper_funcs); 544 615 layer->mixer = mixer; 616 + layer->type = SUN8I_LAYER_TYPE_VI; 545 617 layer->channel = index; 546 618 layer->overlay = 0; 547 619
+4 -16
drivers/gpu/drm/sun4i/sun8i_vi_layer.h
··· 52 52 #define SUN8I_MIXER_CHAN_VI_DS_M(x) ((x) << 0) 53 53 54 54 struct sun8i_mixer; 55 + struct sun8i_layer; 55 56 56 - struct sun8i_vi_layer { 57 - struct drm_plane plane; 58 - struct sun8i_mixer *mixer; 59 - int channel; 60 - int overlay; 61 - }; 62 - 63 - static inline struct sun8i_vi_layer * 64 - plane_to_sun8i_vi_layer(struct drm_plane *plane) 65 - { 66 - return container_of(plane, struct sun8i_vi_layer, plane); 67 - } 68 - 69 - struct sun8i_vi_layer *sun8i_vi_layer_init_one(struct drm_device *drm, 70 - struct sun8i_mixer *mixer, 71 - int index); 57 + struct sun8i_layer *sun8i_vi_layer_init_one(struct drm_device *drm, 58 + struct sun8i_mixer *mixer, 59 + int index); 72 60 #endif /* _SUN8I_VI_LAYER_H_ */
+10 -3
drivers/gpu/drm/sun4i/sunxi_engine.h
··· 7 7 #define _SUNXI_ENGINE_H_ 8 8 9 9 struct drm_plane; 10 + struct drm_crtc; 10 11 struct drm_device; 11 12 struct drm_crtc_state; 12 13 struct drm_display_mode; ··· 60 59 * 61 60 * This function is optional. 62 61 */ 63 - void (*commit)(struct sunxi_engine *engine); 62 + void (*commit)(struct sunxi_engine *engine, 63 + struct drm_crtc *crtc, 64 + struct drm_atomic_state *state); 64 65 65 66 /** 66 67 * @layers_init: ··· 147 144 /** 148 145 * sunxi_engine_commit() - commit all changes of the engine 149 146 * @engine: pointer to the engine 147 + * @crtc: pointer to crtc the engine is associated with 148 + * @state: atomic state 150 149 */ 151 150 static inline void 152 - sunxi_engine_commit(struct sunxi_engine *engine) 151 + sunxi_engine_commit(struct sunxi_engine *engine, 152 + struct drm_crtc *crtc, 153 + struct drm_atomic_state *state) 153 154 { 154 155 if (engine->ops && engine->ops->commit) 155 - engine->ops->commit(engine); 156 + engine->ops->commit(engine, crtc, state); 156 157 } 157 158 158 159 /**
+1
drivers/gpu/drm/tests/drm_buddy_test.c
··· 774 774 kunit_test_suite(drm_buddy_test_suite); 775 775 776 776 MODULE_AUTHOR("Intel Corporation"); 777 + MODULE_DESCRIPTION("Kunit test for drm_buddy functions"); 777 778 MODULE_LICENSE("GPL");
+1
drivers/gpu/drm/tests/drm_cmdline_parser_test.c
··· 1056 1056 kunit_test_suite(drm_cmdline_parser_test_suite); 1057 1057 1058 1058 MODULE_AUTHOR("Maxime Ripard <maxime.ripard@bootlin.com>"); 1059 + MODULE_DESCRIPTION("Kunit test for drm_cmdline_parser functions"); 1059 1060 MODULE_LICENSE("GPL");
+1
drivers/gpu/drm/tests/drm_connector_test.c
··· 1290 1290 ); 1291 1291 1292 1292 MODULE_AUTHOR("Maxime Ripard <maxime@cerno.tech>"); 1293 + MODULE_DESCRIPTION("Kunit test for drm_modes functions"); 1293 1294 MODULE_LICENSE("GPL");
+1
drivers/gpu/drm/tests/drm_damage_helper_test.c
··· 636 636 637 637 kunit_test_suite(drm_damage_helper_test_suite); 638 638 639 + MODULE_DESCRIPTION("Test case for drm_damage_helper functions"); 639 640 MODULE_LICENSE("GPL");
+1
drivers/gpu/drm/tests/drm_dp_mst_helper_test.c
··· 588 588 589 589 kunit_test_suite(drm_dp_mst_helper_test_suite); 590 590 591 + MODULE_DESCRIPTION("Test cases for the DRM DP MST helpers"); 591 592 MODULE_LICENSE("GPL");
+1
drivers/gpu/drm/tests/drm_exec_test.c
··· 210 210 kunit_test_suite(drm_exec_test_suite); 211 211 212 212 MODULE_AUTHOR("AMD"); 213 + MODULE_DESCRIPTION("Kunit test for drm_exec functions"); 213 214 MODULE_LICENSE("GPL and additional rights");
+1
drivers/gpu/drm/tests/drm_format_test.c
··· 356 356 357 357 kunit_test_suite(drm_format_test_suite); 358 358 359 + MODULE_DESCRIPTION("Test cases for the drm_format functions"); 359 360 MODULE_LICENSE("GPL");
+1
drivers/gpu/drm/tests/drm_framebuffer_test.c
··· 379 379 380 380 kunit_test_suite(drm_framebuffer_test_suite); 381 381 382 + MODULE_DESCRIPTION("Test cases for the drm_framebuffer functions"); 382 383 MODULE_LICENSE("GPL");
+1
drivers/gpu/drm/tests/drm_gem_shmem_test.c
··· 380 380 381 381 kunit_test_suite(drm_gem_shmem_suite); 382 382 383 + MODULE_DESCRIPTION("KUnit test suite for GEM objects backed by shmem buffers"); 383 384 MODULE_LICENSE("GPL");
+1
drivers/gpu/drm/tests/drm_kunit_helpers.c
··· 312 312 EXPORT_SYMBOL_GPL(drm_kunit_helper_create_crtc); 313 313 314 314 MODULE_AUTHOR("Maxime Ripard <maxime@cerno.tech>"); 315 + MODULE_DESCRIPTION("KUnit test suite helper functions"); 315 316 MODULE_LICENSE("GPL");
+1
drivers/gpu/drm/tests/drm_managed_test.c
··· 113 113 kunit_test_suite(drm_managed_test_suite); 114 114 115 115 MODULE_AUTHOR("Maxime Ripard <maxime@cerno.tech>"); 116 + MODULE_DESCRIPTION("KUnit DRM managed test suite"); 116 117 MODULE_LICENSE("GPL");
+1
drivers/gpu/drm/tests/drm_mm_test.c
··· 356 356 kunit_test_suite(drm_mm_test_suite); 357 357 358 358 MODULE_AUTHOR("Intel Corporation"); 359 + MODULE_DESCRIPTION("Test cases for the drm_mm range manager"); 359 360 MODULE_LICENSE("GPL");
+1
drivers/gpu/drm/tests/drm_modes_test.c
··· 147 147 kunit_test_suite(drm_modes_analog_tv_test_suite); 148 148 149 149 MODULE_AUTHOR("Maxime Ripard <maxime@cerno.tech>"); 150 + MODULE_DESCRIPTION("Kunit test for drm_modes functions"); 150 151 MODULE_LICENSE("GPL");
+1
drivers/gpu/drm/tests/drm_plane_helper_test.c
··· 315 315 316 316 kunit_test_suite(drm_plane_helper_test_suite); 317 317 318 + MODULE_DESCRIPTION("Test cases for the drm_plane_helper functions"); 318 319 MODULE_LICENSE("GPL");
+1
drivers/gpu/drm/tests/drm_probe_helper_test.c
··· 207 207 kunit_test_suite(drm_test_connector_helper_tv_get_modes_suite); 208 208 209 209 MODULE_AUTHOR("Maxime Ripard <maxime@cerno.tech>"); 210 + MODULE_DESCRIPTION("Kunit test for drm_probe_helper functions"); 210 211 MODULE_LICENSE("GPL");
+1
drivers/gpu/drm/tests/drm_rect_test.c
··· 526 526 527 527 kunit_test_suite(drm_rect_test_suite); 528 528 529 + MODULE_DESCRIPTION("Test cases for the drm_rect functions"); 529 530 MODULE_LICENSE("GPL");
+1
drivers/gpu/drm/tiny/bochs.c
··· 733 733 734 734 MODULE_DEVICE_TABLE(pci, bochs_pci_tbl); 735 735 MODULE_AUTHOR("Gerd Hoffmann <kraxel@redhat.com>"); 736 + MODULE_DESCRIPTION("DRM Support for bochs dispi vga interface (qemu stdvga)"); 736 737 MODULE_LICENSE("GPL");
+1
drivers/gpu/drm/tiny/cirrus.c
··· 760 760 drm_module_pci_driver(cirrus_pci_driver) 761 761 762 762 MODULE_DEVICE_TABLE(pci, pciidlist); 763 + MODULE_DESCRIPTION("Cirrus driver for QEMU emulated device"); 763 764 MODULE_LICENSE("GPL");
+1
drivers/gpu/drm/tiny/gm12u320.c
··· 755 755 756 756 module_usb_driver(gm12u320_usb_driver); 757 757 MODULE_AUTHOR("Hans de Goede <hdegoede@redhat.com>"); 758 + MODULE_DESCRIPTION("GM12U320 driver for USB projectors"); 758 759 MODULE_LICENSE("GPL");
+54 -1
drivers/gpu/drm/tiny/panel-mipi-dbi.c
··· 26 26 27 27 #include <video/mipi_display.h> 28 28 29 + struct panel_mipi_dbi_format { 30 + const char *name; 31 + u32 fourcc; 32 + unsigned int bpp; 33 + }; 34 + 35 + static const struct panel_mipi_dbi_format panel_mipi_dbi_formats[] = { 36 + { "r5g6b5", DRM_FORMAT_RGB565, 16 }, 37 + { "b6x2g6x2r6x2", DRM_FORMAT_RGB888, 24 }, 38 + }; 39 + 40 + static int panel_mipi_dbi_get_format(struct device *dev, u32 *formats, unsigned int *bpp) 41 + { 42 + const char *format_name; 43 + unsigned int i; 44 + int ret; 45 + 46 + formats[1] = DRM_FORMAT_XRGB8888; 47 + 48 + ret = device_property_read_string(dev, "format", &format_name); 49 + if (ret) { 50 + /* Old Device Trees don't have this property */ 51 + formats[0] = DRM_FORMAT_RGB565; 52 + *bpp = 16; 53 + return 0; 54 + } 55 + 56 + for (i = 0; i < ARRAY_SIZE(panel_mipi_dbi_formats); i++) { 57 + const struct panel_mipi_dbi_format *format = &panel_mipi_dbi_formats[i]; 58 + 59 + if (strcmp(format_name, format->name)) 60 + continue; 61 + 62 + formats[0] = format->fourcc; 63 + *bpp = format->bpp; 64 + return 0; 65 + } 66 + 67 + dev_err(dev, "Pixel format is not supported: '%s'\n", format_name); 68 + 69 + return -EINVAL; 70 + } 71 + 29 72 static const u8 panel_mipi_dbi_magic[15] = { 'M', 'I', 'P', 'I', ' ', 'D', 'B', 'I', 30 73 0, 0, 0, 0, 0, 0, 0 }; 31 74 ··· 319 276 struct drm_device *drm; 320 277 struct mipi_dbi *dbi; 321 278 struct gpio_desc *dc; 279 + unsigned int bpp; 280 + size_t buf_size; 281 + u32 formats[2]; 322 282 int ret; 323 283 324 284 dbidev = devm_drm_dev_alloc(dev, &panel_mipi_dbi_driver, struct mipi_dbi_dev, drm); ··· 369 323 if (IS_ERR(dbidev->driver_private)) 370 324 return PTR_ERR(dbidev->driver_private); 371 325 372 - ret = mipi_dbi_dev_init(dbidev, &panel_mipi_dbi_pipe_funcs, &mode, 0); 326 + ret = panel_mipi_dbi_get_format(dev, formats, &bpp); 327 + if (ret) 328 + return ret; 329 + 330 + buf_size = DIV_ROUND_UP(mode.hdisplay * mode.vdisplay * bpp, 8); 331 + ret = mipi_dbi_dev_init_with_formats(dbidev, &panel_mipi_dbi_pipe_funcs, 332 + formats, ARRAY_SIZE(formats), 333 + &mode, 0, buf_size); 373 334 if (ret) 374 335 return ret; 375 336
+1
drivers/gpu/drm/udl/udl_drv.c
··· 160 160 .id_table = id_table, 161 161 }; 162 162 module_usb_driver(udl_driver); 163 + MODULE_DESCRIPTION("KMS driver for the USB displaylink video adapters"); 163 164 MODULE_LICENSE("GPL");
+1
include/drm/display/drm_hdmi_state_helper.h
··· 16 16 17 17 int drm_atomic_helper_connector_hdmi_update_audio_infoframe(struct drm_connector *connector, 18 18 struct hdmi_audio_infoframe *frame); 19 + int drm_atomic_helper_connector_hdmi_disable_audio_infoframe(struct drm_connector *connector); 19 20 int drm_atomic_helper_connector_hdmi_update_infoframes(struct drm_connector *connector, 20 21 struct drm_atomic_state *state); 21 22
+81 -3
include/drm/drm_bridge.h
··· 631 631 void (*hpd_disable)(struct drm_bridge *bridge); 632 632 633 633 /** 634 + * @hdmi_tmds_char_rate_valid: 635 + * 636 + * Check whether a particular TMDS character rate is supported by the 637 + * driver. 638 + * 639 + * This callback is optional and should only be implemented by the 640 + * bridges that take part in the HDMI connector implementation. Bridges 641 + * that implement it shall set the DRM_BRIDGE_OP_HDMI flag in their 642 + * &drm_bridge->ops. 643 + * 644 + * Returns: 645 + * 646 + * Either &drm_mode_status.MODE_OK or one of the failure reasons 647 + * in &enum drm_mode_status. 648 + */ 649 + enum drm_mode_status 650 + (*hdmi_tmds_char_rate_valid)(const struct drm_bridge *bridge, 651 + const struct drm_display_mode *mode, 652 + unsigned long long tmds_rate); 653 + 654 + /** 655 + * @hdmi_clear_infoframe: 656 + * 657 + * This callback clears the infoframes in the hardware during commit. 658 + * It will be called multiple times, once for every disabled infoframe 659 + * type. 660 + * 661 + * This callback is optional but it must be implemented by bridges that 662 + * set the DRM_BRIDGE_OP_HDMI flag in their &drm_bridge->ops. 663 + */ 664 + int (*hdmi_clear_infoframe)(struct drm_bridge *bridge, 665 + enum hdmi_infoframe_type type); 666 + /** 667 + * @hdmi_write_infoframe: 668 + * 669 + * Program the infoframe into the hardware. It will be called multiple 670 + * times, once for every updated infoframe type. 671 + * 672 + * This callback is optional but it must be implemented by bridges that 673 + * set the DRM_BRIDGE_OP_HDMI flag in their &drm_bridge->ops. 674 + */ 675 + int (*hdmi_write_infoframe)(struct drm_bridge *bridge, 676 + enum hdmi_infoframe_type type, 677 + const u8 *buffer, size_t len); 678 + 679 + /** 634 680 * @debugfs_init: 635 681 * 636 682 * Allows bridges to create bridge-specific debugfs files. ··· 751 705 * this flag shall implement the &drm_bridge_funcs->get_modes callback. 752 706 */ 753 707 DRM_BRIDGE_OP_MODES = BIT(3), 708 + /** 709 + * @DRM_BRIDGE_OP_HDMI: The bridge provides HDMI connector operations, 710 + * including infoframes support. Bridges that set this flag must 711 + * implement the &drm_bridge_funcs->write_infoframe callback. 712 + * 713 + * Note: currently there can be at most one bridge in a chain that sets 714 + * this bit. This is to simplify corresponding glue code in connector 715 + * drivers. 716 + */ 717 + DRM_BRIDGE_OP_HDMI = BIT(4), 754 718 }; 755 719 756 720 /** ··· 829 773 * @hpd_cb. 830 774 */ 831 775 void *hpd_data; 776 + 777 + /** 778 + * @vendor: Vendor of the product to be used for the SPD InfoFrame 779 + * generation. This is required if @DRM_BRIDGE_OP_HDMI is set. 780 + */ 781 + const char *vendor; 782 + 783 + /** 784 + * @product: Name of the product to be used for the SPD InfoFrame 785 + * generation. This is required if @DRM_BRIDGE_OP_HDMI is set. 786 + */ 787 + const char *product; 788 + 789 + /** 790 + * @supported_formats: Bitmask of @hdmi_colorspace listing supported 791 + * output formats. This is only relevant if @DRM_BRIDGE_OP_HDMI is set. 792 + */ 793 + unsigned int supported_formats; 794 + 795 + /** 796 + * @max_bpc: Maximum bits per char the HDMI bridge supports. Allowed 797 + * values are 8, 10 and 12. This is only relevant if 798 + * @DRM_BRIDGE_OP_HDMI is set. 799 + */ 800 + unsigned int max_bpc; 832 801 }; 833 802 834 803 static inline struct drm_bridge * ··· 936 855 #define drm_for_each_bridge_in_chain(encoder, bridge) \ 937 856 list_for_each_entry(bridge, &(encoder)->bridge_chain, chain_node) 938 857 939 - bool drm_bridge_chain_mode_fixup(struct drm_bridge *bridge, 940 - const struct drm_display_mode *mode, 941 - struct drm_display_mode *adjusted_mode); 942 858 enum drm_mode_status 943 859 drm_bridge_chain_mode_valid(struct drm_bridge *bridge, 944 860 const struct drm_display_info *info,
+10
include/drm/drm_mipi_dbi.h
··· 57 57 struct spi_device *spi; 58 58 59 59 /** 60 + * @write_memory_bpw: Bits per word used on a MIPI_DCS_WRITE_MEMORY_START transfer 61 + */ 62 + unsigned int write_memory_bpw; 63 + 64 + /** 60 65 * @dc: Optional D/C gpio. 61 66 */ 62 67 struct gpio_desc *dc; ··· 100 95 * @mode: Fixed display mode 101 96 */ 102 97 struct drm_display_mode mode; 98 + 99 + /** 100 + * @pixel_format: Native pixel format (DRM_FORMAT\_\*) 101 + */ 102 + u32 pixel_format; 103 103 104 104 /** 105 105 * @tx_buf: Buffer used for transfer (copy clip rect area)
+1 -1
include/drm/drm_mipi_dsi.h
··· 293 293 294 294 #define mipi_dsi_msleep(ctx, delay) \ 295 295 do { \ 296 - if (!ctx.accum_err) \ 296 + if (!(ctx)->accum_err) \ 297 297 msleep(delay); \ 298 298 } while (0) 299 299
-1
include/drm/drm_mm.h
··· 463 463 } 464 464 465 465 void drm_mm_remove_node(struct drm_mm_node *node); 466 - void drm_mm_replace_node(struct drm_mm_node *old, struct drm_mm_node *new); 467 466 void drm_mm_init(struct drm_mm *mm, u64 start, u64 size); 468 467 void drm_mm_takedown(struct drm_mm *mm); 469 468
+9
include/drm/drm_panic.h
··· 50 50 * @pitch: Length in bytes between the start of two consecutive lines. 51 51 */ 52 52 unsigned int pitch[DRM_FORMAT_MAX_PLANES]; 53 + 54 + /** 55 + * @set_pixel: Optional function, to set a pixel color on the 56 + * framebuffer. It allows to handle special tiling format inside the 57 + * driver. 58 + */ 59 + void (*set_pixel)(struct drm_scanout_buffer *sb, unsigned int x, 60 + unsigned int y, u32 color); 61 + 53 62 }; 54 63 55 64 /**
+7 -7
include/drm/drm_print.h
··· 175 175 void (*printfn)(struct drm_printer *p, struct va_format *vaf); 176 176 void (*puts)(struct drm_printer *p, const char *str); 177 177 void *arg; 178 + const void *origin; 178 179 const char *prefix; 179 180 enum drm_debug_category category; 180 181 }; ··· 333 332 struct drm_printer p = { 334 333 .printfn = __drm_printfn_dbg, 335 334 .arg = drm, 335 + .origin = (const void *)_THIS_IP_, /* it's fine as we will be inlined */ 336 336 .prefix = prefix, 337 337 .category = category, 338 338 }; ··· 529 527 * Prefer drm_device based logging over device or prink based logging. 530 528 */ 531 529 532 - __printf(3, 4) 533 - void ___drm_dbg(struct _ddebug *desc, enum drm_debug_category category, const char *format, ...); 534 530 __printf(1, 2) 535 531 void __drm_err(const char *format, ...); 536 532 537 533 #if !defined(CONFIG_DRM_USE_DYNAMIC_DEBUG) 538 - #define __drm_dbg(cat, fmt, ...) ___drm_dbg(NULL, cat, fmt, ##__VA_ARGS__) 534 + #define __drm_dbg(cat, fmt, ...) __drm_dev_dbg(NULL, NULL, cat, fmt, ##__VA_ARGS__) 539 535 #else 540 536 #define __drm_dbg(cat, fmt, ...) \ 541 - _dynamic_func_call_cls(cat, fmt, ___drm_dbg, \ 542 - cat, fmt, ##__VA_ARGS__) 537 + _dynamic_func_call_cls(cat, fmt, __drm_dev_dbg, \ 538 + NULL, cat, fmt, ##__VA_ARGS__) 543 539 #endif 544 540 545 541 /* Macros to make printk easier */ ··· 632 632 633 633 /* Helper for struct drm_device based WARNs */ 634 634 #define drm_WARN(drm, condition, format, arg...) \ 635 - WARN(condition, "%s %s: " format, \ 635 + WARN(condition, "%s %s: [drm] " format, \ 636 636 dev_driver_string((drm)->dev), \ 637 637 dev_name((drm)->dev), ## arg) 638 638 639 639 #define drm_WARN_ONCE(drm, condition, format, arg...) \ 640 - WARN_ONCE(condition, "%s %s: " format, \ 640 + WARN_ONCE(condition, "%s %s: [drm] " format, \ 641 641 dev_driver_string((drm)->dev), \ 642 642 dev_name((drm)->dev), ## arg) 643 643