1 /* SPDX-License-Identifier: MIT */
2 /*
3  * Copyright © 2022 Intel Corporation
4  */
5 
6 #ifndef __HSW_IPS_H__
7 #define __HSW_IPS_H__
8 
9 #include <linux/types.h>
10 
11 struct intel_atomic_state;
12 struct intel_crtc;
13 struct intel_crtc_state;
14 
15 bool hsw_ips_disable(const struct intel_crtc_state *crtc_state);
16 bool hsw_ips_pre_update(struct intel_atomic_state *state,
17 			struct intel_crtc *crtc);
18 void hsw_ips_post_update(struct intel_atomic_state *state,
19 			 struct intel_crtc *crtc);
20 bool hsw_crtc_supports_ips(struct intel_crtc *crtc);
21 bool hsw_crtc_state_ips_capable(const struct intel_crtc_state *crtc_state);
22 int hsw_ips_compute_config(struct intel_atomic_state *state,
23 			   struct intel_crtc *crtc);
24 void hsw_ips_get_config(struct intel_crtc_state *crtc_state);
25 void hsw_ips_crtc_debugfs_add(struct intel_crtc *crtc);
26 
27 #endif /* __HSW_IPS_H__ */
28