Lines Matching refs:mq
257 struct omap_mbox_queue *mq = in mbox_rx_work() local
263 while (kfifo_len(&mq->fifo) >= sizeof(msg)) { in mbox_rx_work()
264 len = kfifo_out(&mq->fifo, (unsigned char *)&msg, sizeof(msg)); in mbox_rx_work()
268 mbox_chan_received_data(mq->mbox->chan, (void *)data); in mbox_rx_work()
269 spin_lock_irq(&mq->lock); in mbox_rx_work()
270 if (mq->full) { in mbox_rx_work()
271 mq->full = false; in mbox_rx_work()
272 _omap_mbox_enable_irq(mq->mbox, IRQ_RX); in mbox_rx_work()
274 spin_unlock_irq(&mq->lock); in mbox_rx_work()
290 struct omap_mbox_queue *mq = mbox->rxq; in __mbox_rx_interrupt() local
295 if (unlikely(kfifo_avail(&mq->fifo) < sizeof(msg))) { in __mbox_rx_interrupt()
297 mq->full = true; in __mbox_rx_interrupt()
303 len = kfifo_in(&mq->fifo, (unsigned char *)&msg, sizeof(msg)); in __mbox_rx_interrupt()
329 struct omap_mbox_queue *mq; in mbox_queue_alloc() local
334 mq = kzalloc(sizeof(*mq), GFP_KERNEL); in mbox_queue_alloc()
335 if (!mq) in mbox_queue_alloc()
338 spin_lock_init(&mq->lock); in mbox_queue_alloc()
340 if (kfifo_alloc(&mq->fifo, mbox_kfifo_size, GFP_KERNEL)) in mbox_queue_alloc()
343 INIT_WORK(&mq->work, work); in mbox_queue_alloc()
344 return mq; in mbox_queue_alloc()
347 kfree(mq); in mbox_queue_alloc()
360 struct omap_mbox_queue *mq; in omap_mbox_startup() local
362 mq = mbox_queue_alloc(mbox, mbox_rx_work); in omap_mbox_startup()
363 if (!mq) in omap_mbox_startup()
365 mbox->rxq = mq; in omap_mbox_startup()
366 mq->mbox = mbox; in omap_mbox_startup()