1 | /* SPDX-License-Identifier: GPL-2.0-only */ |
2 | /* |
3 | * Tegra host1x Interrupt Management |
4 | * |
5 | * Copyright (c) 2010-2021, NVIDIA Corporation. |
6 | */ |
7 | |
8 | #ifndef __HOST1X_INTR_H |
9 | #define __HOST1X_INTR_H |
10 | |
11 | struct host1x; |
12 | struct host1x_syncpt_fence; |
13 | |
14 | /* Initialize host1x sync point interrupt */ |
15 | int host1x_intr_init(struct host1x *host); |
16 | |
17 | /* Deinitialize host1x sync point interrupt */ |
18 | void host1x_intr_deinit(struct host1x *host); |
19 | |
20 | /* Enable host1x sync point interrupt */ |
21 | void host1x_intr_start(struct host1x *host); |
22 | |
23 | /* Disable host1x sync point interrupt */ |
24 | void host1x_intr_stop(struct host1x *host); |
25 | |
26 | void host1x_intr_handle_interrupt(struct host1x *host, unsigned int id); |
27 | |
28 | void host1x_intr_add_fence_locked(struct host1x *host, struct host1x_syncpt_fence *fence); |
29 | |
30 | bool host1x_intr_remove_fence(struct host1x *host, struct host1x_syncpt_fence *fence); |
31 | |
32 | #endif |
33 | |