1 /* SPDX-License-Identifier: MIT */
2 /*
3  * Copyright © 2019 Intel Corporation
4  */
5 
6 #ifndef INTEL_GT_REQUESTS_H
7 #define INTEL_GT_REQUESTS_H
8 
9 struct intel_engine_cs;
10 struct intel_gt;
11 struct intel_timeline;
12 
13 long intel_gt_retire_requests_timeout(struct intel_gt *gt, long timeout);
intel_gt_retire_requests(struct intel_gt * gt)14 static inline void intel_gt_retire_requests(struct intel_gt *gt)
15 {
16 	intel_gt_retire_requests_timeout(gt, 0);
17 }
18 
19 void intel_engine_init_retire(struct intel_engine_cs *engine);
20 void intel_engine_add_retire(struct intel_engine_cs *engine,
21 			     struct intel_timeline *tl);
22 void intel_engine_fini_retire(struct intel_engine_cs *engine);
23 
24 int intel_gt_wait_for_idle(struct intel_gt *gt, long timeout);
25 
26 void intel_gt_init_requests(struct intel_gt *gt);
27 void intel_gt_park_requests(struct intel_gt *gt);
28 void intel_gt_unpark_requests(struct intel_gt *gt);
29 void intel_gt_fini_requests(struct intel_gt *gt);
30 
31 #endif /* INTEL_GT_REQUESTS_H */
32