Lines Matching refs:tx_ring
359 struct tx_ring { struct
489 struct tx_ring tx_ring; member
1643 struct tx_ring *tx_ring = &adapter->tx_ring; in et131x_config_tx_dma_regs() local
1646 writel(upper_32_bits(tx_ring->tx_desc_ring_pa), &txdma->pr_base_hi); in et131x_config_tx_dma_regs()
1647 writel(lower_32_bits(tx_ring->tx_desc_ring_pa), &txdma->pr_base_lo); in et131x_config_tx_dma_regs()
1653 writel(upper_32_bits(tx_ring->tx_status_pa), &txdma->dma_wb_base_hi); in et131x_config_tx_dma_regs()
1654 writel(lower_32_bits(tx_ring->tx_status_pa), &txdma->dma_wb_base_lo); in et131x_config_tx_dma_regs()
1656 *tx_ring->tx_status = 0; in et131x_config_tx_dma_regs()
1659 tx_ring->send_idx = 0; in et131x_config_tx_dma_regs()
1756 struct tx_ring *tx_ring = &adapter->tx_ring; in et131x_init_send() local
1757 struct tcb *tcb = tx_ring->tcb_ring; in et131x_init_send()
1759 tx_ring->tcb_qhead = tcb; in et131x_init_send()
1769 tx_ring->tcb_qtail = tcb; in et131x_init_send()
1772 tx_ring->send_head = NULL; in et131x_init_send()
1773 tx_ring->send_tail = NULL; in et131x_init_send()
2361 struct tx_ring *tx_ring = &adapter->tx_ring; in et131x_tx_dma_memory_alloc() local
2364 tx_ring->tcb_ring = kcalloc(NUM_TCB, sizeof(struct tcb), in et131x_tx_dma_memory_alloc()
2366 if (!tx_ring->tcb_ring) in et131x_tx_dma_memory_alloc()
2370 tx_ring->tx_desc_ring = dma_alloc_coherent(&adapter->pdev->dev, in et131x_tx_dma_memory_alloc()
2372 &tx_ring->tx_desc_ring_pa, in et131x_tx_dma_memory_alloc()
2374 if (!tx_ring->tx_desc_ring) { in et131x_tx_dma_memory_alloc()
2380 tx_ring->tx_status = dma_alloc_coherent(&adapter->pdev->dev, in et131x_tx_dma_memory_alloc()
2382 &tx_ring->tx_status_pa, in et131x_tx_dma_memory_alloc()
2384 if (!tx_ring->tx_status) { in et131x_tx_dma_memory_alloc()
2395 struct tx_ring *tx_ring = &adapter->tx_ring; in et131x_tx_dma_memory_free() local
2397 if (tx_ring->tx_desc_ring) { in et131x_tx_dma_memory_free()
2402 tx_ring->tx_desc_ring, in et131x_tx_dma_memory_free()
2403 tx_ring->tx_desc_ring_pa); in et131x_tx_dma_memory_free()
2404 tx_ring->tx_desc_ring = NULL; in et131x_tx_dma_memory_free()
2408 if (tx_ring->tx_status) { in et131x_tx_dma_memory_free()
2411 tx_ring->tx_status, in et131x_tx_dma_memory_free()
2412 tx_ring->tx_status_pa); in et131x_tx_dma_memory_free()
2414 tx_ring->tx_status = NULL; in et131x_tx_dma_memory_free()
2417 kfree(tx_ring->tcb_ring); in et131x_tx_dma_memory_free()
2432 struct tx_ring *tx_ring = &adapter->tx_ring; in nic_send_packet() local
2504 if (++tx_ring->since_irq == PARM_TX_NUM_BUFS_DEF) { in nic_send_packet()
2508 tx_ring->since_irq = 0; in nic_send_packet()
2519 tcb->index_start = tx_ring->send_idx; in nic_send_packet()
2522 thiscopy = NUM_DESC_PER_RING_TX - INDEX10(tx_ring->send_idx); in nic_send_packet()
2531 memcpy(tx_ring->tx_desc_ring + INDEX10(tx_ring->send_idx), in nic_send_packet()
2535 add_10bit(&tx_ring->send_idx, thiscopy); in nic_send_packet()
2537 if (INDEX10(tx_ring->send_idx) == 0 || in nic_send_packet()
2538 INDEX10(tx_ring->send_idx) == NUM_DESC_PER_RING_TX) { in nic_send_packet()
2539 tx_ring->send_idx &= ~ET_DMA10_MASK; in nic_send_packet()
2540 tx_ring->send_idx ^= ET_DMA10_WRAP; in nic_send_packet()
2544 memcpy(tx_ring->tx_desc_ring, in nic_send_packet()
2548 add_10bit(&tx_ring->send_idx, remainder); in nic_send_packet()
2551 if (INDEX10(tx_ring->send_idx) == 0) { in nic_send_packet()
2552 if (tx_ring->send_idx) in nic_send_packet()
2557 tcb->index = tx_ring->send_idx - 1; in nic_send_packet()
2562 if (tx_ring->send_tail) in nic_send_packet()
2563 tx_ring->send_tail->next = tcb; in nic_send_packet()
2565 tx_ring->send_head = tcb; in nic_send_packet()
2567 tx_ring->send_tail = tcb; in nic_send_packet()
2571 tx_ring->used++; in nic_send_packet()
2576 writel(tx_ring->send_idx, &adapter->regs->txdma.service_request); in nic_send_packet()
2593 struct tx_ring *tx_ring = &adapter->tx_ring; in send_packet() local
2601 tcb = tx_ring->tcb_qhead; in send_packet()
2608 tx_ring->tcb_qhead = tcb->next; in send_packet()
2610 if (tx_ring->tcb_qhead == NULL) in send_packet()
2611 tx_ring->tcb_qtail = NULL; in send_packet()
2623 if (tx_ring->tcb_qtail) in send_packet()
2624 tx_ring->tcb_qtail->next = tcb; in send_packet()
2627 tx_ring->tcb_qhead = tcb; in send_packet()
2629 tx_ring->tcb_qtail = tcb; in send_packet()
2633 WARN_ON(tx_ring->used > NUM_TCB); in send_packet()
2644 struct tx_ring *tx_ring = &adapter->tx_ring; in free_send_packet() local
2655 desc = tx_ring->tx_desc_ring + in free_send_packet()
2671 } while (desc != tx_ring->tx_desc_ring + INDEX10(tcb->index)); in free_send_packet()
2683 if (tx_ring->tcb_qtail) in free_send_packet()
2684 tx_ring->tcb_qtail->next = tcb; in free_send_packet()
2686 tx_ring->tcb_qhead = tcb; in free_send_packet()
2688 tx_ring->tcb_qtail = tcb; in free_send_packet()
2691 WARN_ON(tx_ring->used < 0); in free_send_packet()
2700 struct tx_ring *tx_ring = &adapter->tx_ring; in et131x_free_busy_send_packets() local
2705 tcb = tx_ring->send_head; in et131x_free_busy_send_packets()
2710 tx_ring->send_head = next; in et131x_free_busy_send_packets()
2713 tx_ring->send_tail = NULL; in et131x_free_busy_send_packets()
2715 tx_ring->used--; in et131x_free_busy_send_packets()
2724 tcb = tx_ring->send_head; in et131x_free_busy_send_packets()
2731 tx_ring->used = 0; in et131x_free_busy_send_packets()
2745 struct tx_ring *tx_ring = &adapter->tx_ring; in et131x_handle_send_pkts() local
2755 tcb = tx_ring->send_head; in et131x_handle_send_pkts()
2760 tx_ring->used--; in et131x_handle_send_pkts()
2761 tx_ring->send_head = tcb->next; in et131x_handle_send_pkts()
2763 tx_ring->send_tail = NULL; in et131x_handle_send_pkts()
2770 tcb = tx_ring->send_head; in et131x_handle_send_pkts()
2775 tx_ring->used--; in et131x_handle_send_pkts()
2776 tx_ring->send_head = tcb->next; in et131x_handle_send_pkts()
2778 tx_ring->send_tail = NULL; in et131x_handle_send_pkts()
2785 tcb = tx_ring->send_head; in et131x_handle_send_pkts()
2789 if (tx_ring->used <= NUM_TCB / 3) in et131x_handle_send_pkts()
3370 struct tx_ring *tx_ring = &adapter->tx_ring; in et131x_isr() local
3397 struct tcb *tcb = tx_ring->send_head; in et131x_isr()
3780 struct tx_ring *tx_ring = &adapter->tx_ring; in et131x_tx() local
3783 if (tx_ring->used >= NUM_TCB - 1 && !netif_queue_stopped(netdev)) in et131x_tx()
3790 if (tx_ring->used >= NUM_TCB) in et131x_tx()
3817 struct tx_ring *tx_ring = &adapter->tx_ring; in et131x_tx_timeout() local
3839 tcb = tx_ring->send_head; in et131x_tx_timeout()