All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Luca Ceresoli" <luca.ceresoli@bootlin.com>
To: "Louis Chauvet" <louis.chauvet@bootlin.com>,
	<igt-dev@lists.freedesktop.org>
Cc: <thomas.petazzoni@bootlin.com>, <markyacoub@google.com>,
	<khaled.almahallawy@intel.com>,
	"igt-dev" <igt-dev-bounces@lists.freedesktop.org>
Subject: Re: [PATCH i-g-t v4 27/46] lib/unigraf: Allows sst/mst configuration
Date: Fri, 23 Jan 2026 18:40:23 +0100	[thread overview]
Message-ID: <DFW5ISL9M9B9.2V3ASCXVZPTNH@bootlin.com> (raw)
In-Reply-To: <20251110-unigraf-integration-v4-27-0fc7bb1b4101@bootlin.com>

On Mon Nov 10, 2025 at 2:39 PM CET, Louis Chauvet wrote:
> Unigraf devices can emulate both SST and MST display port. In order to
> write tests using both, add fews helper to manipulate them.
>
> The define TSI_DPRX_NOT_DOCUMENTED_SIDEBAND_MSG_SUPPORT is taken from the
> python SDK, as it was not defined by the C sdk nor documented.
>
> Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com>
> ---

[...]

> +bool unigraf_set_mst_stream_count(int count)
> +{
> +	int new_count;
> +
> +	igt_assert_lte(count, unigraf_get_mst_stream_max_count());
> +
> +	unigraf_write_u32(TSI_DPRX_MST_SINK_COUNT, count);
> +	new_count = unigraf_get_mst_stream_count();
> +
> +	igt_warn_on_f(count != new_count,
> +		      "IGT:%p: Requested MST stream count (%d) differ from what was applied by the device (%d)\n",
                                                               differs

> diff --git a/lib/unigraf/unigraf.h b/lib/unigraf/unigraf.h
> index 14e5fd984159..9fcae674b1d5 100644
> --- a/lib/unigraf/unigraf.h
> +++ b/lib/unigraf/unigraf.h
> @@ -93,4 +93,42 @@ void unigraf_plug(void);
>   */
>  void unigraf_unplug(void);
>
> +/**
> + * unigraf_set_sst() - Configure the device for Single Stream Transport mode
> + *
> + * This function sets the device to operate in Single Stream Transport (SST) mode.
> + */
> +void unigraf_set_sst(void);
> +
> +/**
> + * unigraf_set_mst() - Configure the device for Multi Stream Transport mode
> + *
> + * This function sets the device to operate in Multi Stream Transport (MST) mode.
> + */
> +void unigraf_set_mst(void);
> +
> +/**
> + * unigraf_get_mst_stream_count() - Get the current number of MST streams
> + *
> + * Returns: The current number of MST streams configured on the device.
> + */
> +int unigraf_get_mst_stream_count(void);
> +
> +/**
> + * unigraf_set_mst_stream_count() - Set the number of accepted stream count
> + *
> + * Returns true when the stream count was properly applied, false if the final stream count
> + * is not the one requested
> + */
> +bool unigraf_set_mst_stream_count(int count);
> +
> +/**
> + * unigraf_get_mst_stream_max_count() - Get the maximum number of stream count accepted by the
> + * device
> + * Caution: This function can be destructive to some configuration: the only way to get the
> + * information is to try and read the new value.
> + */
> +int unigraf_get_mst_stream_max_count(void);
> +void unigraf_select_stream(int stream);

This function is not documented.

Luca

--
Luca Ceresoli, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

  reply	other threads:[~2026-01-23 17:40 UTC|newest]

Thread overview: 90+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-11-10 13:39 [PATCH i-g-t v4 00/46] Unigraf integration Louis Chauvet
2025-11-10 13:39 ` [PATCH i-g-t v4 01/46] lib/igt_kms: Add a detect timeout value Louis Chauvet
2026-01-20 21:09   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 02/46] lib/igt_kms: Add helper to wait for a specific status on a connector Louis Chauvet
2026-01-20 21:09   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 03/46] lib/igt_kms: Add function to list connected connectors Louis Chauvet
2026-01-20 21:10   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 04/46] lib/igt_kms: Add helper to obtain a connector by its name or MST path Louis Chauvet
2026-01-20 21:10   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 05/46] lib/igt_kms: Add helper to wait for new connectors Louis Chauvet
2026-01-20 21:10   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 06/46] lib/igt_kms: Add helper to get a pipe from a connector Louis Chauvet
2026-01-20 21:10   ` Luca Ceresoli
2026-01-22 15:50     ` Louis Chauvet
2025-11-10 13:39 ` [PATCH i-g-t v4 07/46] lib/igt_kms: Expose dump_connector_attrs Louis Chauvet
2026-01-20 21:10   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 08/46] lib/igt_kms: Expose reset_connectors_at_exit Louis Chauvet
2025-11-10 13:39 ` [PATCH i-g-t v4 09/46] lib/igt_kms: Expose connector_attr_set and igt_connector_attr_set Louis Chauvet
2025-11-10 13:39 ` [PATCH i-g-t v4 10/46] lib/igt_debugfs: Move debugfs helpers to the proper location Louis Chauvet
2026-01-20 21:10   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 11/46] lib/igt_debugfs: Add const when make sense Louis Chauvet
2026-01-20 21:11   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 12/46] lib/igt_amd: " Louis Chauvet
2026-01-20 21:11   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 13/46] lib/igt_kms: " Louis Chauvet
2026-01-20 21:11   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 14/46] lib/monitor_edids: Add helper functions for using monitor_edid objects Louis Chauvet
2026-01-20 21:11   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 15/46] lib/monitor_edids: Add helper to get an EDID by its name Louis Chauvet
2026-01-20 21:11   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 16/46] lib/monitor_edids: Add helper to print all available EDID names Louis Chauvet
2026-01-20 21:11   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 17/46] lib/unigraf: Add used defines for TSI_Types Louis Chauvet
2026-01-21 17:49   ` Luca Ceresoli
2026-01-22 16:40     ` Louis Chauvet
2025-11-10 13:39 ` [PATCH i-g-t v4 18/46] lib/unigraf: Add TSI.h Louis Chauvet
2026-01-21 17:49   ` Luca Ceresoli
2026-01-22 16:53     ` Louis Chauvet
2026-01-23 14:04       ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 19/46] lib/unigraf: Initial Unigraf support Louis Chauvet
2026-01-21 18:23   ` Luca Ceresoli
2026-01-21 18:30   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 20/46] lib/igt_kms: Automatically connect unigraf on display require Louis Chauvet
2026-01-22 20:26   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 21/46] lib/unigraf: Introduce device configuration Louis Chauvet
2026-01-23 17:38   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 22/46] lib/unigraf: Introduce role configuration Louis Chauvet
2026-01-26 11:28   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 23/46] lib/unigraf: Introduce input configuration Louis Chauvet
2026-01-23 17:38   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 24/46] lib/unigraf: Add reset function Louis Chauvet
2026-01-23 17:39   ` Luca Ceresoli
2026-01-26 10:45     ` Louis Chauvet
2026-01-26 11:28       ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 25/46] lib/unigraf: Add unigraf assert and deassert helpers Louis Chauvet
2026-01-23 17:40   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 26/46] lib/unigraf: Add plug/unplug helpers Louis Chauvet
2026-01-23 17:40   ` Luca Ceresoli
2026-01-26 11:28     ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 27/46] lib/unigraf: Allows sst/mst configuration Louis Chauvet
2026-01-23 17:40   ` Luca Ceresoli [this message]
2025-11-10 13:39 ` [PATCH i-g-t v4 28/46] lib/unigraf: Add helpers to read and write edid Louis Chauvet
2026-01-23 17:40   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 29/46] lib/unigraf: Add connector configuration Louis Chauvet
2026-01-26 11:40   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 30/46] tests/unigraf: Add basic unigraf tests Louis Chauvet
2026-01-26 12:00   ` Luca Ceresoli
2025-11-10 13:39 ` [PATCH i-g-t v4 31/46] lib/unigraf: Add unigraf CRC capture Louis Chauvet
2025-11-10 13:39 ` [PATCH i-g-t v4 32/46] lib/unigraf: Add configuration for CRC usage Louis Chauvet
2025-11-10 13:39 ` [PATCH i-g-t v4 33/46] lib/unigraf: add unigraf_get_connector_by_stream Louis Chauvet
2025-11-10 13:39 ` [PATCH i-g-t v4 34/46] lib/unigraf: Add helper to check timings received by unigraf Louis Chauvet
2025-11-10 13:39 ` [PATCH i-g-t v4 35/46] lib/igt_pipe_crc: Add ungiraf crc calculation Louis Chauvet
2025-11-10 13:39 ` [PATCH i-g-t v4 36/46] lib/unigraf: Add lane count configuration Louis Chauvet
2025-11-10 13:39 ` [PATCH i-g-t v4 37/46] docs/unigraf: Add unigraf documentation Louis Chauvet
2025-11-10 13:39 ` [PATCH i-g-t v4 38/46] lib/unigraf: Add helpers to set maximum link rate Louis Chauvet
2025-11-10 13:39 ` [PATCH i-g-t v4 39/46] lib/i915/dp: Move DP-related function for i915 to proper folder Louis Chauvet
2025-11-10 13:39 ` [PATCH i-g-t v4 40/46] lib/i915/dp: Rename functions to avoid confusion Louis Chauvet
2025-11-10 13:39 ` [PATCH i-g-t v4 41/46] lib/i915/dp: Add helper to get maximum supported rate Louis Chauvet
2025-11-10 13:39 ` [PATCH i-g-t v4 42/46] lib/igt_dp: Create generic helpers for DP information Louis Chauvet
2025-11-10 13:39 ` [PATCH i-g-t v4 43/46] lib/igt_kms: Add asserts to avoid null pointer dereference Louis Chauvet
2025-11-10 13:39 ` [PATCH i-g-t v4 44/46] lib/igt_kms: Add helper to get a pipe from an output Louis Chauvet
2025-11-10 13:39 ` [PATCH i-g-t v4 45/46] lib/unigraf: Add helpers to get the current LT status Louis Chauvet
2025-11-10 13:39 ` [PATCH i-g-t v4 46/46] tests/unigraf/unigraf_lt: Add test for link training Louis Chauvet
2025-11-10 22:34 ` ✓ Xe.CI.BAT: success for Unigraf integration (rev3) Patchwork
2025-11-10 22:44 ` ✓ i915.CI.BAT: " Patchwork
2025-11-11  5:34 ` ✓ i915.CI.Full: " Patchwork
2025-11-11  5:49 ` ✗ Xe.CI.Full: failure " Patchwork
2025-12-18 14:50 ` [PATCH i-g-t v4 00/46] Unigraf integration Louis Chauvet
2025-12-18 15:59   ` Mark Yacoub
2026-01-20 21:09 ` Luca Ceresoli

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=DFW5ISL9M9B9.2V3ASCXVZPTNH@bootlin.com \
    --to=luca.ceresoli@bootlin.com \
    --cc=igt-dev-bounces@lists.freedesktop.org \
    --cc=igt-dev@lists.freedesktop.org \
    --cc=khaled.almahallawy@intel.com \
    --cc=louis.chauvet@bootlin.com \
    --cc=markyacoub@google.com \
    --cc=thomas.petazzoni@bootlin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.