• Home
  • Raw
  • Download

Lines Matching full:syncpt

152  * Remove & handle all waiters that have completed for the given syncpt
155 struct host1x_syncpt *syncpt, in process_wait_list() argument
165 spin_lock(&syncpt->intr.lock); in process_wait_list()
167 remove_completed_waiters(&syncpt->intr.wait_head, threshold, in process_wait_list()
170 empty = list_empty(&syncpt->intr.wait_head); in process_wait_list()
172 host1x_hw_intr_disable_syncpt_intr(host, syncpt->id); in process_wait_list()
174 reset_threshold_interrupt(host, &syncpt->intr.wait_head, in process_wait_list()
175 syncpt->id); in process_wait_list()
177 spin_unlock(&syncpt->intr.lock); in process_wait_list()
193 struct host1x_syncpt *syncpt = in syncpt_thresh_work() local
195 unsigned int id = syncpt->id; in syncpt_thresh_work()
196 struct host1x *host = syncpt->host; in syncpt_thresh_work()
198 (void)process_wait_list(host, syncpt, in syncpt_thresh_work()
199 host1x_syncpt_load(host->syncpt + id)); in syncpt_thresh_work()
202 int host1x_intr_add_action(struct host1x *host, struct host1x_syncpt *syncpt, in host1x_intr_add_action() argument
225 spin_lock(&syncpt->intr.lock); in host1x_intr_add_action()
227 queue_was_empty = list_empty(&syncpt->intr.wait_head); in host1x_intr_add_action()
229 if (add_waiter_to_queue(waiter, &syncpt->intr.wait_head)) { in host1x_intr_add_action()
231 host1x_hw_intr_set_syncpt_threshold(host, syncpt->id, thresh); in host1x_intr_add_action()
235 host1x_hw_intr_enable_syncpt_intr(host, syncpt->id); in host1x_intr_add_action()
238 spin_unlock(&syncpt->intr.lock); in host1x_intr_add_action()
248 struct host1x_syncpt *syncpt; in host1x_intr_put_ref() local
254 syncpt = host->syncpt + id; in host1x_intr_put_ref()
255 (void)process_wait_list(host, syncpt, in host1x_intr_put_ref()
256 host1x_syncpt_load(host->syncpt + id)); in host1x_intr_put_ref()
270 struct host1x_syncpt *syncpt = host->syncpt + id; in host1x_intr_init() local
272 spin_lock_init(&syncpt->intr.lock); in host1x_intr_init()
273 INIT_LIST_HEAD(&syncpt->intr.wait_head); in host1x_intr_init()
274 snprintf(syncpt->intr.thresh_irq_name, in host1x_intr_init()
275 sizeof(syncpt->intr.thresh_irq_name), in host1x_intr_init()
307 struct host1x_syncpt *syncpt = host->syncpt; in host1x_intr_stop() local
318 &syncpt[id].intr.wait_head, list) { in host1x_intr_stop()
326 if (!list_empty(&syncpt[id].intr.wait_head)) { in host1x_intr_stop()
329 pr_warn("%s cannot stop syncpt intr id=%u\n", in host1x_intr_stop()