Lines Matching defs:host

88 static void reset_threshold_interrupt(struct host1x *host,
95 host1x_hw_intr_set_syncpt_threshold(host, id, thresh);
96 host1x_hw_intr_enable_syncpt_intr(host, id);
154 static int process_wait_list(struct host1x *host,
172 host1x_hw_intr_disable_syncpt_intr(host, syncpt->id);
174 reset_threshold_interrupt(host, &syncpt->intr.wait_head,
196 struct host1x *host = syncpt->host;
198 (void)process_wait_list(host, syncpt,
199 host1x_syncpt_load(host->syncpt + id));
202 int host1x_intr_add_action(struct host1x *host, struct host1x_syncpt *syncpt,
231 host1x_hw_intr_set_syncpt_threshold(host, syncpt->id, thresh);
235 host1x_hw_intr_enable_syncpt_intr(host, syncpt->id);
245 void host1x_intr_put_ref(struct host1x *host, unsigned int id, void *ref)
254 syncpt = host->syncpt + id;
255 (void)process_wait_list(host, syncpt,
256 host1x_syncpt_load(host->syncpt + id));
261 int host1x_intr_init(struct host1x *host, unsigned int irq_sync)
264 u32 nb_pts = host1x_syncpt_nb_pts(host);
266 mutex_init(&host->intr_mutex);
267 host->intr_syncpt_irq = irq_sync;
270 struct host1x_syncpt *syncpt = host->syncpt + id;
279 host1x_intr_start(host);
284 void host1x_intr_deinit(struct host1x *host)
286 host1x_intr_stop(host);
289 void host1x_intr_start(struct host1x *host)
291 u32 hz = clk_get_rate(host->clk);
294 mutex_lock(&host->intr_mutex);
295 err = host1x_hw_intr_init_host_sync(host, DIV_ROUND_UP(hz, 1000000),
298 mutex_unlock(&host->intr_mutex);
301 mutex_unlock(&host->intr_mutex);
304 void host1x_intr_stop(struct host1x *host)
307 struct host1x_syncpt *syncpt = host->syncpt;
308 u32 nb_pts = host1x_syncpt_nb_pts(host);
310 mutex_lock(&host->intr_mutex);
312 host1x_hw_intr_disable_all_syncpt_intrs(host);
328 mutex_unlock(&host->intr_mutex);
335 host1x_hw_intr_free_syncpt_irq(host);
337 mutex_unlock(&host->intr_mutex);