mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-18 15:54:25 +00:00
MTL uses GSC command streamer i.e gsc cs to send HDCP/PXP commands
to GSC f/w. It requires to keep hdcp display driver
agnostic to content protection f/w (ME/GSC fw) in the form of
i915_hdcp_fw_ops generic ops.
Adding HDCP GSC CS interface by leveraging the i915_hdcp_fw_ops generic
ops instead of I915_HDCP_COMPONENT as integral part of i915.
Adding checks to see if GSC is loaded and proxy is setup
--v6
-dont change the license date in same patch series [Jani]
-fix the license year {Jani]
--v8
-remove stale comment [Ankit]
-get headers in alphabetical order [Ankit]
-fix hdcp2_supported check [Ankit]
--v9
-remove return statement from hdcp_gsc_fini [Ankit]
Cc: Tomas Winkler <tomas.winkler@intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Cc: Uma Shankar <uma.shankar@intel.com>
Cc: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com>
Signed-off-by: Suraj Kandpal <suraj.kandpal@intel.com>
Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
Reviewed-by: Uma Shankar <uma.shankar@intel.com>
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230316092927.668980-7-suraj.kandpal@intel.com
27 lines
640 B
C
27 lines
640 B
C
/* SPDX-License-Identifier: MIT */
|
|
/*
|
|
* Copyright © 2023 Intel Corporation
|
|
*/
|
|
|
|
#ifndef __INTEL_HDCP_GSC_H__
|
|
#define __INTEL_HDCP_GSC_H__
|
|
|
|
#include <linux/err.h>
|
|
#include <linux/types.h>
|
|
|
|
struct drm_i915_private;
|
|
|
|
struct intel_hdcp_gsc_message {
|
|
struct i915_vma *vma;
|
|
void *hdcp_cmd;
|
|
};
|
|
|
|
bool intel_hdcp_gsc_cs_required(struct drm_i915_private *i915);
|
|
ssize_t intel_hdcp_gsc_msg_send(struct drm_i915_private *i915, u8 *msg_in,
|
|
size_t msg_in_len, u8 *msg_out,
|
|
size_t msg_out_len);
|
|
int intel_hdcp_gsc_init(struct drm_i915_private *i915);
|
|
void intel_hdcp_gsc_fini(struct drm_i915_private *i915);
|
|
|
|
#endif /* __INTEL_HDCP_GCS_H__ */
|