From: Louis Chauvet <louis.chauvet@bootlin.com>
To: igt-dev@lists.freedesktop.org
Cc: markyacoub@google.com, thomas.petazzoni@bootlin.com,
fomys <fomys@google.com>
Subject: Re: [PATCH i-g-t 2/4] lib/unigraf: Add HDCP management
Date: Fri, 31 Jul 2026 20:23:50 +0200 [thread overview]
Message-ID: <d85b0e6a-aebe-42d1-91c8-a1d35011f8d3@bootlin.com> (raw)
In-Reply-To: <20260731-b4-unigraf-hdcp-v1-2-495df88ebbbd@google.com>
On 7/31/26 20:21, Louis Chauvet wrote:
> From: fomys <fomys@google.com>
Tiny mistake on this patch, that indeed me. I will fix it for v2.
> Unigraf is able to emulate HDCP, so add few helpers to enable/disable
> it.
>
> Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com>
> ---
> lib/vendor/unigraf/unigraf.c | 23 ++++++++++++++++++++++-
> lib/vendor/unigraf/unigraf.h | 4 ++++
> 2 files changed, 26 insertions(+), 1 deletion(-)
>
> diff --git a/lib/vendor/unigraf/unigraf.c b/lib/vendor/unigraf/unigraf.c
> index 30ee3c72bc74..5b416f605428 100644
> --- a/lib/vendor/unigraf/unigraf.c
> +++ b/lib/vendor/unigraf/unigraf.c
> @@ -549,9 +549,10 @@ void unigraf_reset(void)
> unigraf_set_mst_stream_count(1);
> unigraf_set_sst();
> unigraf_load_default_edid();
> - unigraf_hpd_assert();
> unigraf_set_max_lane_count(4);
> unigraf_set_max_link_rate(UNIGRAF_RATE_8_10_GHZ);
> + unigraf_enable_hdcp();
> + unigraf_hpd_assert();
> }
>
> /**
> @@ -911,3 +912,23 @@ int unigraf_rate_to_kbs(enum unigraf_rate rate)
> return 0;
> }
> }
> +
> +/**
> + * unigraf_enable_hdcp - Enable HDCP 2 support
> + *
> + * Unigraf is able to load production keys, but this will disable all recording
> + * features.
> + */
> +void unigraf_enable_hdcp(void)
> +{
> + unigraf_write_u32(TSI_HDCP_2X_COMMAND_W, H2_SINK_LOAD_PROD_KEYS);
> + unigraf_write_u32(TSI_HDCP_2X_COMMAND_W, H2_SINK_SET_CAPABLE);
> +}
> +
> +/**
> + * unigraf_disable_hdcp - Disable HDCP support
> + */
> +void unigraf_disable_hdcp(void)
> +{
> + unigraf_write_u32(TSI_HDCP_2X_COMMAND_W, H2_SINK_CLEAR_CAPABLE);
> +}
> diff --git a/lib/vendor/unigraf/unigraf.h b/lib/vendor/unigraf/unigraf.h
> index 1570be3feb96..498a2d4daab3 100644
> --- a/lib/vendor/unigraf/unigraf.h
> +++ b/lib/vendor/unigraf/unigraf.h
> @@ -103,4 +103,8 @@ uint32_t unigraf_get_lt_rate(void);
>
> uint32_t unigraf_get_lt_lane_count(void);
>
> +void unigraf_enable_hdcp(void);
> +
> +void unigraf_disable_hdcp(void);
> +
> #endif // UNIGRAF_H
>
next prev parent reply other threads:[~2026-07-31 18:25 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-31 18:21 [PATCH i-g-t 0/4] Add HDCP support for unigraf Louis Chauvet
2026-07-31 18:21 ` [PATCH i-g-t 1/4] tests/kms_content_protection: Avoid using internal pointers Louis Chauvet
2026-07-31 18:21 ` [PATCH i-g-t 2/4] lib/unigraf: Add HDCP management Louis Chauvet
2026-07-31 18:23 ` Louis Chauvet [this message]
2026-07-31 18:21 ` [PATCH i-g-t 3/4] tests/kms_content_protection: Enable HDCP for unigraf if available Louis Chauvet
2026-07-31 18:21 ` [PATCH i-g-t 4/4] tests/kms_content_protection: Add test to ensure HDCP is properly detected by the DUT Louis Chauvet
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=d85b0e6a-aebe-42d1-91c8-a1d35011f8d3@bootlin.com \
--to=louis.chauvet@bootlin.com \
--cc=fomys@google.com \
--cc=igt-dev@lists.freedesktop.org \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox