Lines Matching defs:rxq

688   amb_rxq * rxq = &dev->rxq[pool];
693 spin_lock_irqsave (&rxq->lock, flags);
695 if (rxq->pending < rxq->maximum) {
696 PRINTD (DBG_RX, "RX in slot %p", rxq->in.ptr);
698 *rxq->in.ptr = *rx;
699 rxq->pending++;
700 rxq->in.ptr = NEXTQ (rxq->in.ptr, rxq->in.start, rxq->in.limit);
702 wr_mem (dev, offsetof(amb_mem, mb.adapter.rx_address[pool]), virt_to_bus (rxq->in.ptr));
704 spin_unlock_irqrestore (&rxq->lock, flags);
707 spin_unlock_irqrestore (&rxq->lock, flags);
713 amb_rxq * rxq = &dev->rxq[pool];
718 spin_lock_irqsave (&rxq->lock, flags);
720 if (rxq->pending && (rxq->out.ptr->status || rxq->out.ptr->length)) {
722 rx_complete (dev, rxq->out.ptr);
724 rxq->out.ptr->status = 0;
725 rxq->out.ptr->length = 0;
727 rxq->pending--;
728 rxq->out.ptr = NEXTQ (rxq->out.ptr, rxq->out.start, rxq->out.limit);
730 if (rxq->pending < rxq->low)
731 rxq->low = rxq->pending;
732 spin_unlock_irqrestore (&rxq->lock, flags);
735 if (!rxq->pending && rxq->buffers_wanted)
736 rxq->emptied++;
737 spin_unlock_irqrestore (&rxq->lock, flags);
746 amb_rxq * rxq = &dev->rxq[pool];
756 if (rxq->pending > rxq->buffers_wanted) {
763 while (rxq->pending > rxq->buffers_wanted)
784 amb_rxq * rxq;
791 rxq = &dev->rxq[pool];
792 while (rxq->pending < rxq->maximum && rxq->pending < rxq->buffers_wanted) {
794 struct sk_buff * skb = alloc_skb (rxq->buffer_size, priority);
1107 if ((unsigned int) rxtp->max_sdu <= dev->rxq[pool].buffer_size) {
1109 pool, rxtp->max_sdu, dev->rxq[pool].buffer_size);
1193 if (!dev->rxq[pool].buffers_wanted)
1194 dev->rxq[pool].buffers_wanted = rx_lats;
1195 dev->rxq[pool].buffers_wanted += 1;
1289 dev->rxq[pool].buffers_wanted -= 1;
1290 if (dev->rxq[pool].buffers_wanted == rx_lats) {
1291 dev->rxq[pool].buffers_wanted = 0;
1458 amb_rxq * r = &dev->rxq[pool];
1469 amb_rxq * r = &dev->rxq[pool];
1590 amb_rxq * rxq = &dev->rxq[pool];
1592 rxq->buffer_size = rx_buffer_sizes[pool];
1593 rxq->buffers_wanted = 0;
1595 rxq->pending = 0;
1596 rxq->low = rxs[pool] - 1;
1597 rxq->emptied = 0;
1598 rxq->maximum = rxs[pool] - 1;
1600 rxq->in.start = in;
1601 rxq->in.ptr = in;
1602 rxq->in.limit = in + rxs[pool];
1604 memory = rxq->in.limit;
1607 rxq->out.start = out;
1608 rxq->out.ptr = out;
1609 rxq->out.limit = out + rxs[pool];
1611 memory = rxq->out.limit;
1629 // includes txq.in, txq.out, rxq[].in and rxq[].out
1998 a.rec_struct[pool].buffer_start = bus_addr (dev->rxq[pool].in.start);
1999 a.rec_struct[pool].buffer_end = bus_addr (dev->rxq[pool].in.limit);
2000 a.rec_struct[pool].rx_start = bus_addr (dev->rxq[pool].out.start);
2001 a.rec_struct[pool].rx_end = bus_addr (dev->rxq[pool].out.limit);
2002 a.rec_struct[pool].buffer_size = cpu_to_be32 (dev->rxq[pool].buffer_size);
2163 spin_lock_init (&dev->rxq[pool].lock);