1b5e8e954SChris Wilson /*
2b5e8e954SChris Wilson  * SPDX-License-Identifier: MIT
3b5e8e954SChris Wilson  *
4b5e8e954SChris Wilson  * Copyright © 2019 Intel Corporation
5b5e8e954SChris Wilson  */
6b5e8e954SChris Wilson 
7b5e8e954SChris Wilson #ifndef INTEL_ENGINE_HEARTBEAT_H
8b5e8e954SChris Wilson #define INTEL_ENGINE_HEARTBEAT_H
9b5e8e954SChris Wilson 
10b5e8e954SChris Wilson struct intel_engine_cs;
11b5e8e954SChris Wilson 
12058179e7SChris Wilson void intel_engine_init_heartbeat(struct intel_engine_cs *engine);
13058179e7SChris Wilson 
14058179e7SChris Wilson int intel_engine_set_heartbeat(struct intel_engine_cs *engine,
15058179e7SChris Wilson 			       unsigned long delay);
16058179e7SChris Wilson 
17058179e7SChris Wilson void intel_engine_park_heartbeat(struct intel_engine_cs *engine);
18058179e7SChris Wilson void intel_engine_unpark_heartbeat(struct intel_engine_cs *engine);
19058179e7SChris Wilson 
20b5e8e954SChris Wilson int intel_engine_pulse(struct intel_engine_cs *engine);
21b5e8e954SChris Wilson int intel_engine_flush_barriers(struct intel_engine_cs *engine);
22b5e8e954SChris Wilson 
23b5e8e954SChris Wilson #endif /* INTEL_ENGINE_HEARTBEAT_H */
24