Merge tag 'i3c/for-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/i3c/linux
[linux-2.6-microblaze.git] / drivers / gpu / drm / i915 / display / intel_pipe_crc.h
1 /* SPDX-License-Identifier: MIT */
2 /*
3  * Copyright © 2019 Intel Corporation
4  */
5
6 #ifndef __INTEL_PIPE_CRC_H__
7 #define __INTEL_PIPE_CRC_H__
8
9 #include <linux/types.h>
10
11 struct drm_crtc;
12 struct drm_i915_private;
13 struct intel_crtc;
14
15 #ifdef CONFIG_DEBUG_FS
16 void intel_crtc_crc_init(struct intel_crtc *crtc);
17 int intel_crtc_set_crc_source(struct drm_crtc *crtc, const char *source_name);
18 int intel_crtc_verify_crc_source(struct drm_crtc *crtc,
19                                  const char *source_name, size_t *values_cnt);
20 const char *const *intel_crtc_get_crc_sources(struct drm_crtc *crtc,
21                                               size_t *count);
22 void intel_crtc_disable_pipe_crc(struct intel_crtc *crtc);
23 void intel_crtc_enable_pipe_crc(struct intel_crtc *crtc);
24 #else
25 static inline void intel_crtc_crc_init(struct intel_crtc *crtc) {}
26 #define intel_crtc_set_crc_source NULL
27 #define intel_crtc_verify_crc_source NULL
28 #define intel_crtc_get_crc_sources NULL
29 static inline void intel_crtc_disable_pipe_crc(struct intel_crtc *crtc)
30 {
31 }
32
33 static inline void intel_crtc_enable_pipe_crc(struct intel_crtc *crtc)
34 {
35 }
36 #endif
37
38 #endif /* __INTEL_PIPE_CRC_H__ */