124f90d66SChris Wilson /* SPDX-License-Identifier: MIT */ 266101975SChris Wilson /* 366101975SChris Wilson * Copyright © 2019 Intel Corporation 466101975SChris Wilson */ 566101975SChris Wilson 666101975SChris Wilson #ifndef INTEL_GT_REQUESTS_H 766101975SChris Wilson #define INTEL_GT_REQUESTS_H 866101975SChris Wilson 91645cca9SStephen Rothwell #include <linux/stddef.h> 10b97060a9SMatthew Brost 114f88f874SChris Wilson struct intel_engine_cs; 1266101975SChris Wilson struct intel_gt; 134f88f874SChris Wilson struct intel_timeline; 1466101975SChris Wilson 15b97060a9SMatthew Brost long intel_gt_retire_requests_timeout(struct intel_gt *gt, long timeout, 16b97060a9SMatthew Brost long *remaining_timeout); intel_gt_retire_requests(struct intel_gt * gt)1766101975SChris Wilsonstatic inline void intel_gt_retire_requests(struct intel_gt *gt) 1866101975SChris Wilson { 19b97060a9SMatthew Brost intel_gt_retire_requests_timeout(gt, 0, NULL); 2066101975SChris Wilson } 2166101975SChris Wilson 224f88f874SChris Wilson void intel_engine_init_retire(struct intel_engine_cs *engine); 234f88f874SChris Wilson void intel_engine_add_retire(struct intel_engine_cs *engine, 244f88f874SChris Wilson struct intel_timeline *tl); 254f88f874SChris Wilson void intel_engine_fini_retire(struct intel_engine_cs *engine); 264f88f874SChris Wilson 2766101975SChris Wilson void intel_gt_init_requests(struct intel_gt *gt); 2866101975SChris Wilson void intel_gt_park_requests(struct intel_gt *gt); 2966101975SChris Wilson void intel_gt_unpark_requests(struct intel_gt *gt); 30dea397e8SChris Wilson void intel_gt_fini_requests(struct intel_gt *gt); 3166101975SChris Wilson 3266101975SChris Wilson #endif /* INTEL_GT_REQUESTS_H */ 33