xref: /linux/drivers/gpu/drm/i915/gt/uc/intel_guc_rc.h (revision 216d56c5)
1*216d56c5SVinay Belgaumkar /* SPDX-License-Identifier: MIT */
2*216d56c5SVinay Belgaumkar /*
3*216d56c5SVinay Belgaumkar  * Copyright © 2021 Intel Corporation
4*216d56c5SVinay Belgaumkar  */
5*216d56c5SVinay Belgaumkar 
6*216d56c5SVinay Belgaumkar #ifndef _INTEL_GUC_RC_H_
7*216d56c5SVinay Belgaumkar #define _INTEL_GUC_RC_H_
8*216d56c5SVinay Belgaumkar 
9*216d56c5SVinay Belgaumkar #include "intel_guc_submission.h"
10*216d56c5SVinay Belgaumkar 
11*216d56c5SVinay Belgaumkar void intel_guc_rc_init_early(struct intel_guc *guc);
12*216d56c5SVinay Belgaumkar 
intel_guc_rc_is_supported(struct intel_guc * guc)13*216d56c5SVinay Belgaumkar static inline bool intel_guc_rc_is_supported(struct intel_guc *guc)
14*216d56c5SVinay Belgaumkar {
15*216d56c5SVinay Belgaumkar 	return guc->rc_supported;
16*216d56c5SVinay Belgaumkar }
17*216d56c5SVinay Belgaumkar 
intel_guc_rc_is_wanted(struct intel_guc * guc)18*216d56c5SVinay Belgaumkar static inline bool intel_guc_rc_is_wanted(struct intel_guc *guc)
19*216d56c5SVinay Belgaumkar {
20*216d56c5SVinay Belgaumkar 	return guc->submission_selected && intel_guc_rc_is_supported(guc);
21*216d56c5SVinay Belgaumkar }
22*216d56c5SVinay Belgaumkar 
intel_guc_rc_is_used(struct intel_guc * guc)23*216d56c5SVinay Belgaumkar static inline bool intel_guc_rc_is_used(struct intel_guc *guc)
24*216d56c5SVinay Belgaumkar {
25*216d56c5SVinay Belgaumkar 	return intel_guc_submission_is_used(guc) && intel_guc_rc_is_wanted(guc);
26*216d56c5SVinay Belgaumkar }
27*216d56c5SVinay Belgaumkar 
28*216d56c5SVinay Belgaumkar int intel_guc_rc_enable(struct intel_guc *guc);
29*216d56c5SVinay Belgaumkar int intel_guc_rc_disable(struct intel_guc *guc);
30*216d56c5SVinay Belgaumkar 
31*216d56c5SVinay Belgaumkar #endif
32