Lines Matching refs:xferqueue
236 } xferqueue; member
380 struct dw_i3c_xfer *xfer = master->xferqueue.cur; in dw_i3c_master_start_xfer_locked()
412 spin_lock_irqsave(&master->xferqueue.lock, flags); in dw_i3c_master_enqueue_xfer()
413 if (master->xferqueue.cur) { in dw_i3c_master_enqueue_xfer()
414 list_add_tail(&xfer->node, &master->xferqueue.list); in dw_i3c_master_enqueue_xfer()
416 master->xferqueue.cur = xfer; in dw_i3c_master_enqueue_xfer()
419 spin_unlock_irqrestore(&master->xferqueue.lock, flags); in dw_i3c_master_enqueue_xfer()
425 if (master->xferqueue.cur == xfer) { in dw_i3c_master_dequeue_xfer_locked()
428 master->xferqueue.cur = NULL; in dw_i3c_master_dequeue_xfer_locked()
446 spin_lock_irqsave(&master->xferqueue.lock, flags); in dw_i3c_master_dequeue_xfer()
448 spin_unlock_irqrestore(&master->xferqueue.lock, flags); in dw_i3c_master_dequeue_xfer()
453 struct dw_i3c_xfer *xfer = master->xferqueue.cur; in dw_i3c_master_end_xfer_locked()
508 xfer = list_first_entry_or_null(&master->xferqueue.list, in dw_i3c_master_end_xfer_locked()
514 master->xferqueue.cur = xfer; in dw_i3c_master_end_xfer_locked()
1091 spin_lock(&master->xferqueue.lock); in dw_i3c_master_irq_handler()
1095 spin_unlock(&master->xferqueue.lock); in dw_i3c_master_irq_handler()
1143 spin_lock_init(&master->xferqueue.lock); in dw_i3c_probe()
1144 INIT_LIST_HEAD(&master->xferqueue.list); in dw_i3c_probe()