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 Belgaumkarstatic 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 Belgaumkarstatic 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 Belgaumkarstatic 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