All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ramalingam C <ramalingam.c@intel.com>
To: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org
Cc: alexander.usyskin@intel.com, tomas.winkler@intel.com
Subject: [PATCH v4 07/41] linux/mei: Header for mei_hdcp driver interface
Date: Mon, 21 May 2018 18:23:26 +0530	[thread overview]
Message-ID: <1526907240-17639-8-git-send-email-ramalingam.c@intel.com> (raw)
In-Reply-To: <1526907240-17639-1-git-send-email-ramalingam.c@intel.com>

Data structures and Enum for the I915-MEI_HDCP interface are defined
at <linux/mei_hdcp.h>

v2:
  Rebased.
v3:
  mei_cl_device is removed from mei_hdcp_data [Tomas]
v4:
  Comment style and typo fixed [Uma]

Signed-off-by: Ramalingam C <ramalingam.c@intel.com>
---
 include/linux/mei_hdcp.h | 70 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 70 insertions(+)

diff --git a/include/linux/mei_hdcp.h b/include/linux/mei_hdcp.h
index 9c8f140f5344..c8a8c12782d2 100644
--- a/include/linux/mei_hdcp.h
+++ b/include/linux/mei_hdcp.h
@@ -27,11 +27,81 @@
 #ifndef _LINUX_MEI_HDCP_H
 #define _LINUX_MEI_HDCP_H
 
+#include <linux/mei_cl_bus.h>
+
 enum mei_cldev_state {
 	MEI_CLDEV_DISABLED,
 	MEI_CLDEV_ENABLED
 };
 
+/*
+ * Enumeration of the physical DDI available on the platform
+ */
+enum hdcp_physical_port {
+	INVALID_PORT = 0x00,	/* Not a valid port */
+
+	DDI_RANGE_BEGIN = 0x01,	/* Beginning of the valid DDI port range */
+	DDI_B		= 0x01,		/* Port DDI B */
+	DDI_C		= 0x02,		/* Port DDI C */
+	DDI_D		= 0x03,		/* Port DDI D */
+	DDI_E		= 0x04,		/* Port DDI E */
+	DDI_F		= 0x05,		/* Port DDI F */
+	DDI_A		= 0x07,		/* Port DDI A */
+	DDI_RANGE_END	= DDI_A,/* End of the valid DDI port range */
+};
+
+/* The types of HDCP 2.2 ports supported */
+enum hdcp_integrated_port_type {
+	HDCP_INVALID_TYPE	= 0x00,
+
+	/* HDCP 2.x ports that are integrated into Intel HW */
+	INTEGRATED		= 0x01,
+
+	/* HDCP2.2 discrete wired Tx port with LSPCON (HDMI 2.0) solution */
+	LSPCON			= 0x02,
+
+	/* HDCP2.2 discrete wired Tx port using the CPDP (DP 1.3) solution */
+	CPDP			= 0x03,
+};
+
+/*
+ * wired_protocol: Supported integrated wired HDCP protocol.
+ * Based on this value, Minor difference needed between wired specifications
+ * are handled.
+ */
+enum hdcp_protocol {
+	HDCP_PROTOCOL_INVALID,
+	HDCP_PROTOCOL_HDMI,
+	HDCP_PROTOCOL_DP
+};
+
+/*
+ * mei_hdcp_data: Input data to the mei_hdcp APIs.
+ */
+struct mei_hdcp_data {
+	enum hdcp_physical_port port;
+	enum hdcp_integrated_port_type port_type;
+	enum hdcp_protocol protocol;
+
+	/*
+	 * No of streams transmitted on a port.
+	 * In case of HDMI & DP SST, single stream will be
+	 * transmitted on a port.
+	 */
+	uint16_t k;
+
+	/*
+	 * Count of RepeaterAuth_Stream_Manage msg propagated.
+	 * Initialized to 0 on AKE_INIT. Incremented after every successful
+	 * transmission of RepeaterAuth_Stream_Manage message. When it rolls
+	 * over re-Auth has to be triggered.
+	 */
+	uint32_t seq_num_m;
+
+	/* k(No of Streams per port) x structure of wired_streamid_type */
+	struct hdcp2_streamid_type *streams;
+};
+
 #if IS_ENABLED(CONFIG_INTEL_MEI_HDCP)
 int mei_cldev_register_notify(struct notifier_block *nb);
 int mei_cldev_unregister_notify(struct notifier_block *nb);
-- 
2.7.4

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

  parent reply	other threads:[~2018-05-21 12:53 UTC|newest]

Thread overview: 69+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-21 12:53 [PATCH v4 00/41] drm/i915: Implement HDCP2.2 Ramalingam C
2018-05-21 12:53 ` [PATCH v4 01/41] drm: hdcp2.2 authentication msg definitions Ramalingam C
2018-05-21 12:53 ` [PATCH v4 02/41] drm: HDMI and DP specific HDCP2.2 defines Ramalingam C
2018-05-21 12:53 ` [PATCH v4 03/41] mei: bus: whitelist hdcp client Ramalingam C
2018-05-21 12:53 ` [PATCH v4 04/41] misc/mei/hdcp: Client driver for HDCP application Ramalingam C
2018-05-21 12:53 ` [PATCH v4 05/41] misc/mei/hdcp: Notifier chain for mei cldev state change Ramalingam C
2018-05-21 12:53 ` [PATCH v4 06/41] misc/mei/hdcp: Define ME FW interface for HDCP2.2 Ramalingam C
2018-05-21 12:53 ` Ramalingam C [this message]
2018-05-21 12:53 ` [PATCH v4 08/41] misc/mei/hdcp: Initiate Wired HDCP2.2 Tx Session Ramalingam C
2018-05-21 12:53 ` [PATCH v4 09/41] misc/mei/hdcp: Verify Receiver Cert and prepare km Ramalingam C
2018-05-21 12:53 ` [PATCH v4 10/41] misc/mei/hdcp: Verify H_prime Ramalingam C
2018-05-21 12:53 ` [PATCH v4 11/41] misc/mei/hdcp: Store the HDCP Pairing info Ramalingam C
2018-05-21 12:53 ` [PATCH v4 12/41] misc/mei/hdcp: Initiate Locality check Ramalingam C
2018-05-21 12:53 ` [PATCH v4 13/41] misc/mei/hdcp: Verify L_prime Ramalingam C
2018-05-21 12:53 ` [PATCH v4 14/41] misc/mei/hdcp: Prepare Session Key Ramalingam C
2018-05-21 12:53 ` [PATCH v4 15/41] misc/mei/hdcp: Repeater topology verification and ack Ramalingam C
2018-05-21 12:53 ` [PATCH v4 16/41] misc/mei/hdcp: Verify M_prime Ramalingam C
2018-05-21 12:53 ` [PATCH v4 17/41] misc/mei/hdcp: Enabling the HDCP authentication Ramalingam C
2018-05-21 12:53 ` [PATCH v4 18/41] misc/mei/hdcp: Closing wired HDCP2.2 Tx Session Ramalingam C
2018-05-21 12:53 ` [PATCH v4 19/41] drm/i915: wrapping all hdcp var into intel_hdcp Ramalingam C
2018-05-21 12:53 ` [PATCH v4 20/41] drm/i915: Define HDCP2.2 related variables Ramalingam C
2018-05-21 12:53 ` [PATCH v4 21/41] drm/i915: Define Intel HDCP2.2 registers Ramalingam C
2018-05-21 12:53 ` [PATCH v4 22/41] drm/i915: Wrappers for mei HDCP2.2 services Ramalingam C
2018-05-31  7:07   ` Daniel Vetter
2018-06-20  6:46     ` Ramalingam C
2018-05-21 12:53 ` [PATCH v4 23/41] drm/i915: Implement HDCP2.2 receiver authentication Ramalingam C
2018-05-21 12:53 ` [PATCH v4 24/41] drm/i915: Implement HDCP2.2 repeater authentication Ramalingam C
2018-05-23 18:35   ` kbuild test robot
2018-05-21 12:53 ` [PATCH v4 25/41] drm/i915: Enable and Disable HDCP2.2 port encryption Ramalingam C
2018-05-31  7:09   ` Daniel Vetter
2018-06-20  6:49     ` Ramalingam C
2018-05-21 12:53 ` [PATCH v4 26/41] drm/i915: Implement HDCP2.2 En/Dis-able Ramalingam C
2018-05-21 12:53 ` [PATCH v4 27/41] drm/i915: Implement HDCP2.2 link integrity check Ramalingam C
2018-05-21 12:53 ` [PATCH v4 28/41] drm/i915: Handle HDCP2.2 downstream topology change Ramalingam C
2018-05-21 12:53 ` [PATCH v4 29/41] drm/i915: Pullout the bksv read and validation Ramalingam C
2018-05-21 12:53 ` [PATCH v4 30/41] drm/i915: Initialize HDCP2.2 and its MEI interface Ramalingam C
2018-05-24  8:06   ` Daniel Vetter
2018-05-25 11:12     ` Ramalingam C
2018-05-29  6:53       ` Daniel Vetter
2018-05-29  8:42         ` Daniel Vetter
2018-05-29  9:27           ` Ramalingam C
2018-05-21 12:53 ` [PATCH v4 31/41] drm/i915: Schedule hdcp_check_link in _intel_hdcp_enable Ramalingam C
2018-05-21 12:53 ` [PATCH v4 32/41] drm/i915: Enable superior HDCP ver that is capable Ramalingam C
2018-05-21 12:53 ` [PATCH v4 33/41] drm/i915: Enable HDCP1.4 incase of HDCP2.2 failure Ramalingam C
2018-05-21 12:53 ` [PATCH v4 34/41] drm/i915: hdcp_check_link only on CP_IRQ Ramalingam C
2018-05-21 12:53 ` [PATCH v4 35/41] drm/i915: Check HDCP 1.4 and 2.2 link " Ramalingam C
2018-05-21 12:53 ` [PATCH v4 36/41] drm/i915/gmbus: Increase the Bytes per Rd/Wr Op Ramalingam C
2018-05-21 12:53 ` [PATCH v4 37/41] drm/i915/gmbus: Enable burst read Ramalingam C
2018-05-21 12:53 ` [PATCH v4 38/41] drm/i915: Implement the HDCP2.2 support for DP Ramalingam C
2018-05-22 20:52   ` [Intel-gfx] " kbuild test robot
2018-05-22 21:33   ` kbuild test robot
2018-05-31  7:22   ` Daniel Vetter
2018-06-20 10:19     ` Ramalingam C
2018-06-20 11:43       ` Daniel Vetter
2018-06-20 11:55         ` C, Ramalingam
2018-05-21 12:53 ` [PATCH v4 39/41] drm/i915: Implement the HDCP2.2 support for HDMI Ramalingam C
2018-05-31  7:24   ` Daniel Vetter
2018-06-20 10:19     ` Ramalingam C
2018-05-21 12:53 ` [PATCH v4 40/41] drm/i915: Add HDCP2.2 support for DP connectors Ramalingam C
2018-05-21 12:54 ` [PATCH v4 41/41] drm/i915: Add HDCP2.2 support for HDMI connectors Ramalingam C
2018-05-21 13:16 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Implement HDCP2.2 (rev5) Patchwork
2018-05-21 13:23 ` ✗ Fi.CI.SPARSE: " Patchwork
2018-05-21 15:04   ` Ramalingam C
2018-05-21 15:17     ` Shankar, Uma
2018-05-21 13:39 ` ✗ Fi.CI.BAT: failure " Patchwork
2018-05-29  6:57 ` [PATCH v4 00/41] drm/i915: Implement HDCP2.2 Daniel Vetter
2018-05-29  7:51   ` C, Ramalingam
2018-05-29  8:30     ` Daniel Vetter
2018-05-29  9:40       ` C, Ramalingam

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=1526907240-17639-8-git-send-email-ramalingam.c@intel.com \
    --to=ramalingam.c@intel.com \
    --cc=alexander.usyskin@intel.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=tomas.winkler@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 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.