Merge tag 'trace-printf-v6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/trace...
[drm/drm-misc.git] / drivers / gpu / host1x / intr.h
blob11cdf13e32fe2a19714d33c2ef4b42dbb91294f2
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3 * Tegra host1x Interrupt Management
5 * Copyright (c) 2010-2021, NVIDIA Corporation.
6 */
8 #ifndef __HOST1X_INTR_H
9 #define __HOST1X_INTR_H
11 struct host1x;
12 struct host1x_syncpt_fence;
14 struct host1x_intr_irq_data {
15 struct host1x *host;
16 u32 offset;
19 /* Initialize host1x sync point interrupt */
20 int host1x_intr_init(struct host1x *host);
22 /* Deinitialize host1x sync point interrupt */
23 void host1x_intr_deinit(struct host1x *host);
25 /* Enable host1x sync point interrupt */
26 void host1x_intr_start(struct host1x *host);
28 /* Disable host1x sync point interrupt */
29 void host1x_intr_stop(struct host1x *host);
31 void host1x_intr_handle_interrupt(struct host1x *host, unsigned int id);
33 void host1x_intr_add_fence_locked(struct host1x *host, struct host1x_syncpt_fence *fence);
35 bool host1x_intr_remove_fence(struct host1x *host, struct host1x_syncpt_fence *fence);
37 #endif