1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * Tegra host1x Interrupt Management
5 * Copyright (c) 2010-2021, NVIDIA Corporation.
8 #ifndef __HOST1X_INTR_H
9 #define __HOST1X_INTR_H
12 struct host1x_syncpt_fence
;
14 struct host1x_intr_irq_data
{
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
);