summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_hdcp.h
diff options
context:
space:
mode:
authorJani Nikula2019-04-05 13:00:13 +0200
committerJani Nikula2019-04-08 08:52:30 +0200
commit408bd91786665b8cb78540d67dbd148f287a1685 (patch)
tree9d4b0c8fafdf2c7ee57e55af2f17dcadbfd1f423 /drivers/gpu/drm/i915/intel_hdcp.h
parentdrm/i915: extract intel_sdvo.h from intel_drv.h (diff)
downloadkernel-qcow2-linux-408bd91786665b8cb78540d67dbd148f287a1685.tar.gz
kernel-qcow2-linux-408bd91786665b8cb78540d67dbd148f287a1685.tar.xz
kernel-qcow2-linux-408bd91786665b8cb78540d67dbd148f287a1685.zip
drm/i915: extract intel_hdcp.h from intel_drv.h
It used to be handy that we only had a couple of headers, but over time intel_drv.h has become unwieldy. Extract declarations to a separate header file corresponding to the implementation module, clarifying the modularity of the driver. Ensure the new header is self-contained, and do so with minimal further includes, using forward declarations as needed. Include the new header only where needed, and sort the modified include directives while at it and as needed. No functional changes. Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Acked-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/8348620b32cb4438ccfb5f7bbe9a18ff6b7c48a0.1554461791.git.jani.nikula@intel.com
Diffstat (limited to 'drivers/gpu/drm/i915/intel_hdcp.h')
-rw-r--r--drivers/gpu/drm/i915/intel_hdcp.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_hdcp.h b/drivers/gpu/drm/i915/intel_hdcp.h
new file mode 100644
index 000000000000..a75f25f09d39
--- /dev/null
+++ b/drivers/gpu/drm/i915/intel_hdcp.h
@@ -0,0 +1,33 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * Copyright © 2019 Intel Corporation
+ */
+
+#ifndef __INTEL_HDCP_H__
+#define __INTEL_HDCP_H__
+
+#include <linux/types.h>
+
+#include <drm/i915_drm.h>
+
+struct drm_connector;
+struct drm_connector_state;
+struct drm_i915_private;
+struct intel_connector;
+struct intel_hdcp_shim;
+
+void intel_hdcp_atomic_check(struct drm_connector *connector,
+ struct drm_connector_state *old_state,
+ struct drm_connector_state *new_state);
+int intel_hdcp_init(struct intel_connector *connector,
+ const struct intel_hdcp_shim *hdcp_shim);
+int intel_hdcp_enable(struct intel_connector *connector);
+int intel_hdcp_disable(struct intel_connector *connector);
+bool is_hdcp_supported(struct drm_i915_private *dev_priv, enum port port);
+bool intel_hdcp_capable(struct intel_connector *connector);
+void intel_hdcp_component_init(struct drm_i915_private *dev_priv);
+void intel_hdcp_component_fini(struct drm_i915_private *dev_priv);
+void intel_hdcp_cleanup(struct intel_connector *connector);
+void intel_hdcp_handle_cp_irq(struct intel_connector *connector);
+
+#endif /* __INTEL_HDCP_H__ */