summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/i915/i915_perf.h
diff options
context:
space:
mode:
authorJani Nikula <jani.nikula@intel.com>2019-08-08 16:42:44 +0300
committerJani Nikula <jani.nikula@intel.com>2019-08-09 11:52:04 +0300
commitdb94e9f133a04169a0e119f5b85a76c365296ac2 (patch)
tree0dbe90cb90ec70dd265cf46eb97119e8f9f16f42 /drivers/gpu/drm/i915/i915_perf.h
parent358c855cb60a27a2e91e002604d2c9ed03bdcb96 (diff)
downloadlinux-db94e9f133a04169a0e119f5b85a76c365296ac2.tar.xz
drm/i915: extract i915_perf.h from i915_drv.h
It used to be handy that we only had a couple of headers, but over time i915_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> Signed-off-by: Jani Nikula <jani.nikula@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/d7826e365695f691a3ac69a69ff6f2bbdb62700d.1565271681.git.jani.nikula@intel.com
Diffstat (limited to 'drivers/gpu/drm/i915/i915_perf.h')
-rw-r--r--drivers/gpu/drm/i915/i915_perf.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_perf.h b/drivers/gpu/drm/i915/i915_perf.h
new file mode 100644
index 000000000000..a412b16d9ffc
--- /dev/null
+++ b/drivers/gpu/drm/i915/i915_perf.h
@@ -0,0 +1,32 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * Copyright © 2019 Intel Corporation
+ */
+
+#ifndef __I915_PERF_H__
+#define __I915_PERF_H__
+
+#include <linux/types.h>
+
+struct drm_device;
+struct drm_file;
+struct drm_i915_private;
+struct intel_context;
+struct intel_engine_cs;
+
+void i915_perf_init(struct drm_i915_private *i915);
+void i915_perf_fini(struct drm_i915_private *i915);
+void i915_perf_register(struct drm_i915_private *i915);
+void i915_perf_unregister(struct drm_i915_private *i915);
+
+int i915_perf_open_ioctl(struct drm_device *dev, void *data,
+ struct drm_file *file);
+int i915_perf_add_config_ioctl(struct drm_device *dev, void *data,
+ struct drm_file *file);
+int i915_perf_remove_config_ioctl(struct drm_device *dev, void *data,
+ struct drm_file *file);
+void i915_oa_init_reg_state(struct intel_engine_cs *engine,
+ struct intel_context *ce,
+ u32 *reg_state);
+
+#endif /* __I915_PERF_H__ */