Iris: kmsro support [v5]
This patch-set tries to enable iris kmsro support. With this patch-set, iris GPU can work with other display controller for display. In virtualization environment, there's a requirement to provide a passed-though GPU, which may work in headless mode, with capability to show a guest desktop on the host display. This patch leverages the kmsro framework to enable this support. This patch-set has been tested in a guest virtualization environment (with MESA_LOADER_DRIVER_OVERRIDE=pl111) where the rendering workloads are handled by a passed-through GPU and the display work is passed to a virtio-gpu.
v5:
-
Fix icd build error
Suggested-by: Dongwon dongwon.kim@intel.com & Alyssa hi@alyssa.is
v4:
-
In resource_get_handle(), when screen->ro is true, return renderonly_get_handle() even if the return value might be NULL.
-
Remove the redundant modifier checking logic.
-
Restrict iris_resource_create_renderonly() invoking logic.
Suggested-by: Simon Ser contact@emersion.fr
v3:
-
Add modifiers support to iris renderonly mode.
-
Add dep_valgrind dependency to meson.build.
-
When a scan-out buffer cannot be allocated successfully through the kms node, let it be allocated through the render node.
Suggested-by: Dongwon dongwon.kim@intel.com
v2:
-
Add iris_resource_create_renderonly() helper function.
-
Fix coding style comments.
Suggested-by: Kenneth Graunke kenneth@whitecape.org
-
Don't check screen->ro before free it.
Suggested-by: Marcin Ślusarz marcin.slusarz@intel.com
-
Let kmsro_drm_screen_create() be invoked by the kmsro driver.