[PATCH] lib/igt_kms: Do not treat writeback and virtual connectors as connected
Mark Yacoub <[email protected]>
| Newsgroups | org.freedesktop.lists.igt-dev |
|---|---|
| Message-ID | <[email protected]> |
Writeback and virtual connectors (e.g. DRM_MODE_CONNECTOR_WRITEBACK and DRM_MODE_CONNECTOR_VIRTUAL) do not represent physical display sinks and cannot be modeset using standard CRTC / atomic commit operations without configuring a writeback output framebuffer (WRITEBACK_FB_ID). On drivers such as MSM, writeback connectors (e.g. Virtual-1, Virtual-2) report connected status with virtual modes. When generic KMS tests iterate over connected outputs via for_each_connected_output() or during initial display setup in igt_display_init(), attempting standard modesets on these connectors causes failures (-EINVAL) before test execution can begin. Exclude DRM_MODE_CONNECTOR_WRITEBACK and DRM_MODE_CONNECTOR_VIRTUAL in igt_output_is_connected() so generic KMS tests only target standard physical display outputs, while dedicated writeback tests can continue to iterate all outputs explicitly via for_each_output(). Signed-off-by: Mark Yacoub <[email protected]> --- lib/igt_kms.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/igt_kms.h b/lib/igt_kms.h index 521a03c01..8d4d14847 100644 --- a/lib/igt_kms.h +++ b/lib/igt_kms.h @@ -668,6 +668,10 @@ static inline bool igt_output_is_connected(igt_output_t *output) !output->config.connector->count_modes) return false; + if (output->config.connector->connector_type == DRM_MODE_CONNECTOR_WRITEBACK || + output->config.connector->connector_type == DRM_MODE_CONNECTOR_VIRTUAL) + return false; + if (output->config.connector->connection == DRM_MODE_CONNECTED) return true; -- 2.55.0.737.g08866a6d13-goog