1/* SPDX-License-Identifier: MIT */
2/*
3 * Copyright © 2023 Intel Corporation
4 */
5
6#ifndef __INTEL_DISPLAY_RPS_H__
7#define __INTEL_DISPLAY_RPS_H__
8
9#include <linux/types.h>
10
11struct dma_fence;
12struct drm_crtc;
13struct intel_atomic_state;
14struct intel_display;
15
16#ifdef I915
17void intel_display_rps_boost_after_vblank(struct drm_crtc *crtc,
18 struct dma_fence *fence);
19void intel_display_rps_mark_interactive(struct intel_display *display,
20 struct intel_atomic_state *state,
21 bool interactive);
22void ilk_display_rps_enable(struct intel_display *display);
23void ilk_display_rps_disable(struct intel_display *display);
24void ilk_display_rps_irq_handler(struct intel_display *display);
25#else
26static inline void intel_display_rps_boost_after_vblank(struct drm_crtc *crtc,
27 struct dma_fence *fence)
28{
29}
30static inline void intel_display_rps_mark_interactive(struct intel_display *display,
31 struct intel_atomic_state *state,
32 bool interactive)
33{
34}
35static inline void ilk_display_rps_enable(struct intel_display *display)
36{
37}
38static inline void ilk_display_rps_disable(struct intel_display *display)
39{
40}
41static inline void ilk_display_rps_irq_handler(struct intel_display *display)
42{
43}
44#endif
45
46#endif /* __INTEL_DISPLAY_RPS_H__ */
47