1/* SPDX-License-Identifier: MIT */ 2/* 3 * Copyright �� 2022 Intel Corporation 4 */ 5 6#ifndef _XE_GUC_PC_H_ 7#define _XE_GUC_PC_H_ 8 9#include "xe_guc_pc_types.h" 10 11int xe_guc_pc_init(struct xe_guc_pc *pc); 12int xe_guc_pc_start(struct xe_guc_pc *pc); 13int xe_guc_pc_stop(struct xe_guc_pc *pc); 14int xe_guc_pc_gucrc_disable(struct xe_guc_pc *pc); 15 16u32 xe_guc_pc_get_act_freq(struct xe_guc_pc *pc); 17int xe_guc_pc_get_cur_freq(struct xe_guc_pc *pc, u32 *freq); 18u32 xe_guc_pc_get_rp0_freq(struct xe_guc_pc *pc); 19u32 xe_guc_pc_get_rpe_freq(struct xe_guc_pc *pc); 20u32 xe_guc_pc_get_rpn_freq(struct xe_guc_pc *pc); 21int xe_guc_pc_get_min_freq(struct xe_guc_pc *pc, u32 *freq); 22int xe_guc_pc_set_min_freq(struct xe_guc_pc *pc, u32 freq); 23int xe_guc_pc_get_max_freq(struct xe_guc_pc *pc, u32 *freq); 24int xe_guc_pc_set_max_freq(struct xe_guc_pc *pc, u32 freq); 25 26enum xe_gt_idle_state xe_guc_pc_c_status(struct xe_guc_pc *pc); 27u64 xe_guc_pc_rc6_residency(struct xe_guc_pc *pc); 28u64 xe_guc_pc_mc6_residency(struct xe_guc_pc *pc); 29void xe_guc_pc_init_early(struct xe_guc_pc *pc); 30#endif /* _XE_GUC_PC_H_ */ 31