[igt-dev] [PATCH RFC i-g-t] tests/kms_chamelium: disable output when resetting state

Simon Ser simon.ser at intel.com
Thu Jul 11 11:11:40 UTC 2019


Quoting Imre from the bug comments:

> If unplugging a DP-alt display while there is an active modeset on it, and
> then replugging the DP-alt display, the HW/FW/driver won't signal the
> corresponding plug-in hotplug event until the mode is disabled.
>
> The failing tests do this:
>
> - <have the output enabled>
> - unplug the display, keeping the output enabled
> - wait/poll for the disconnect status -> success
> - replug the display, while the output is still enabled
> - wait/poll for the connect status -> fail
>
> This sequence is not supported with DP-alt sinks (like the USB-C to HDMI
> dongle), as I described above.

This patch changes reset_state to disable the output before unplugging the
connector (via chamelium_reset).

Signed-off-by: Simon Ser <simon.ser at intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=111045
---

This is just a RFC to check that the root issue is what we think it is.

 tests/kms_chamelium.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/tests/kms_chamelium.c b/tests/kms_chamelium.c
index b749b5598c1d..f538ad394480 100644
--- a/tests/kms_chamelium.c
+++ b/tests/kms_chamelium.c
@@ -216,6 +216,13 @@ static void
 reset_state(data_t *data, struct chamelium_port *port)
 {
 	int p;
+	drmModeConnector *connector;
+	igt_output_t *output;
+
+	connector = chamelium_port_get_connector(data->chamelium, port, false);
+	output = igt_output_from_connector(&data->display, connector);
+	igt_output_set_pipe(output, PIPE_NONE);
+	igt_display_commit2(&data->display, COMMIT_ATOMIC);

 	chamelium_reset(data->chamelium);

--
2.22.0



More information about the igt-dev mailing list