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
11struct drm_crtc;
12struct intel_crtc;
13
14#ifdef CONFIG_DEBUG_FS
15void intel_crtc_crc_init(struct intel_crtc *crtc);
16int intel_crtc_set_crc_source(struct drm_crtc *crtc, const char *source_name);
17int intel_crtc_verify_crc_source(struct drm_crtc *crtc,
18 const char *source_name, size_t *values_cnt);
19const char *const *intel_crtc_get_crc_sources(struct drm_crtc *crtc,
20 size_t *count);
21void intel_crtc_disable_pipe_crc(struct intel_crtc *crtc);
22void intel_crtc_enable_pipe_crc(struct intel_crtc *crtc);
23#else
24static inline void intel_crtc_crc_init(struct intel_crtc *crtc) {}
25#define intel_crtc_set_crc_source NULL
26#define intel_crtc_verify_crc_source NULL
27#define intel_crtc_get_crc_sources NULL
28static inline void intel_crtc_disable_pipe_crc(struct intel_crtc *crtc)
29{
30}
31
32static inline void intel_crtc_enable_pipe_crc(struct intel_crtc *crtc)
33{
34}
35#endif
36
37#endif /* __INTEL_PIPE_CRC_H__ */
38