Igt-dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Karthik B S <karthik.b.s@intel.com>
To: Jeevan B <jeevan.b@intel.com>, <igt-dev@lists.freedesktop.org>
Subject: Re: [PATCH i-g-t 1/3] lib/igt_kms: Add lib changes to check if joiner is enabled for a pipe
Date: Wed, 12 Feb 2025 16:12:12 +0530	[thread overview]
Message-ID: <d87b9a92-5ae0-4e6e-a790-9c1db02f60b5@intel.com> (raw)
In-Reply-To: <20250212073604.1580120-2-jeevan.b@intel.com>


On 2/12/2025 1:06 PM, Jeevan B wrote:
> Added a library change to check if joiner is enabled or not for the
> given pipe.
>
> v2: Update function name and logic to check joiner enabled for
>      exact pipe.
> v3: Update commit message and rename function name and variable
>      name.
> v4: Update string from %X to %x.
>
> Signed-off-by: Jeevan B <jeevan.b@intel.com>
> ---
>   lib/igt_kms.c | 31 +++++++++++++++++++++++++++++++
>   lib/igt_kms.h |  1 +
>   2 files changed, 32 insertions(+)
>
> diff --git a/lib/igt_kms.c b/lib/igt_kms.c
> index 90f44b4d3..3caba7d77 100644
> --- a/lib/igt_kms.c
> +++ b/lib/igt_kms.c
> @@ -6406,6 +6406,37 @@ bool bigjoiner_mode_found(int drm_fd, drmModeConnector *connector,
>   	return found;
>   }
>   
> +/**
> + * igt_is_joiner_enabled_for_pipe:
> + * @drmfd: A drm file descriptor
> + * @pipe: display pipe
> + *
> + * Returns: True if joiner is enabled, false otherwise.
> + */
> +bool igt_is_joiner_enabled_for_pipe(int drmfd, enum pipe pipe)
> +{
> +	char buf[16384], master_str[64], slave_str[64];
> +	int dir, res;
> +	int pipe_mask = 0b11;

This throws up an error with checkpatch. Please use the decimal 
representation or could be defined by using bit wise operators to make 
it more intuitive. (Your call either ways)

Also may be we could add a TODO to move these lib functions to the 
joiner specific library file once we have those patches merged.

With these fixes,

Reviewed-by: Karthik B S <karthik.b.s@intel.com>

> +
> +
> +	dir = igt_debugfs_dir(drmfd);
> +	igt_assert(dir >= 0);
> +
> +	res = igt_debugfs_simple_read(dir, "i915_display_info",
> +					    buf, sizeof(buf));
> +	close(dir);
> +	igt_assert(res >= 0);
> +	pipe_mask <<= pipe;
> +
> +	snprintf(master_str, sizeof(master_str),
> +		 "Linked to 0x%x pipes as a master", pipe_mask);
> +	snprintf(slave_str, sizeof(slave_str),
> +		 "Linked to 0x%x pipes as a slave", pipe_mask);
> +
> +	return (strstr(buf, master_str) && strstr(buf, slave_str));
> +}
> +
>   /**
>    * igt_ultrajoiner_possible:
>    * @mode: libdrm mode
> diff --git a/lib/igt_kms.h b/lib/igt_kms.h
> index 8810123fb..1cfacf87d 100644
> --- a/lib/igt_kms.h
> +++ b/lib/igt_kms.h
> @@ -1245,6 +1245,7 @@ int igt_get_max_dotclock(int fd);
>   bool igt_bigjoiner_possible(int drm_fd, drmModeModeInfo *mode, int max_dotclock);
>   bool bigjoiner_mode_found(int drm_fd, drmModeConnector *connector,
>   			  int max_dotclock, drmModeModeInfo *mode);
> +bool igt_is_joiner_enabled_for_pipe(int drmfd, enum pipe pipe);
>   bool igt_ultrajoiner_possible(drmModeModeInfo *mode, int max_dotclock);
>   bool ultrajoiner_mode_found(int drm_fd, drmModeConnector *connector,
>   			  int max_dotclock, drmModeModeInfo *mode);

  reply	other threads:[~2025-02-12 10:42 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-12  7:36 [PATCH i-g-t 0/3] tests/intel/kms_joiner: Add a new test to validate non-joiner mode Jeevan B
2025-02-12  7:21 ` B, Jeevan
2025-02-12  7:36 ` [PATCH i-g-t 1/3] lib/igt_kms: Add lib changes to check if joiner is enabled for a pipe Jeevan B
2025-02-12 10:42   ` Karthik B S [this message]
2025-02-12  7:36 ` [PATCH i-g-t 2/3] lib/igt_kms: Add support to check joiner mode limit Jeevan B
2025-02-12 10:46   ` Karthik B S
2025-02-12  7:36 ` [PATCH i-g-t 3/3] tests/intel/kms_joiner: Add a new test to validate non-joiner mode Jeevan B
2025-02-12 10:50   ` Karthik B S
2025-02-12  8:15 ` ✓ Xe.CI.BAT: success for tests/intel/kms_joiner: Add a new test to validate non-joiner mode (rev7) Patchwork
2025-02-12  8:32 ` ✓ i915.CI.BAT: " Patchwork
2025-02-12 10:17 ` ✗ i915.CI.Full: failure " Patchwork
2025-02-12 14:11   ` B, Jeevan
2025-02-12 10:20 ` ✗ Xe.CI.Full: " Patchwork
2025-02-12 14:11   ` B, Jeevan
  -- strict thread matches above, loose matches on Subject: below --
2025-02-10 18:36 [PATCH i-g-t 0/3] tests/intel/kms_joiner: Add a new test to validate non-joiner mode Jeevan B
2025-02-10 18:36 ` [PATCH i-g-t 1/3] lib/igt_kms: Add lib changes to check if joiner is enabled for a pipe Jeevan B

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=d87b9a92-5ae0-4e6e-a790-9c1db02f60b5@intel.com \
    --to=karthik.b.s@intel.com \
    --cc=igt-dev@lists.freedesktop.org \
    --cc=jeevan.b@intel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox