Lines Matching full:rxd
126 void mac_drv_rx_complete(struct s_smc *smc, volatile struct s_smt_fp_rxd *rxd,
128 void mac_drv_requeue_rxd(struct s_smc *smc, volatile struct s_smt_fp_rxd *rxd,
131 void mac_drv_clear_rxd(struct s_smc *smc, volatile struct s_smt_fp_rxd *rxd,
1336 * It allocates the memory for the RxD and TxD descriptors.
1440 * descr - A pointer to a TxD or RxD, respectively.
1549 * be received. It also fills the RxD ring with new receive buffers if
1554 * rxd - A pointer to the first RxD which is used by the receive frame.
1563 void mac_drv_rx_complete(struct s_smc *smc, volatile struct s_smt_fp_rxd *rxd, in mac_drv_rx_complete() argument
1576 goto RequeueRxd; // Re-use the given RXD(s). in mac_drv_rx_complete()
1579 skb = rxd->rxd_os.skb; in mac_drv_rx_complete()
1581 pr_debug("No skb in rxd\n"); in mac_drv_rx_complete()
1646 rxd->rxd_os.skb = NULL; in mac_drv_rx_complete()
1656 pr_debug("Rx: re-queue RXD.\n"); in mac_drv_rx_complete()
1657 mac_drv_requeue_rxd(smc, rxd, frag_count); in mac_drv_rx_complete()
1670 * to the RxD and the frag_count into the receive queue again. This
1675 * rxd - A pointer to the first RxD which is used by the receive frame.
1682 void mac_drv_requeue_rxd(struct s_smc *smc, volatile struct s_smt_fp_rxd *rxd, in mac_drv_requeue_rxd() argument
1697 src_rxd = rxd; in mac_drv_requeue_rxd()
1700 rxd = HWM_GET_CURR_RXD(smc); in mac_drv_requeue_rxd()
1705 pr_debug("Requeue with no skb in rxd!\n"); in mac_drv_requeue_rxd()
1709 rxd->rxd_os.skb = skb; in mac_drv_requeue_rxd()
1716 rxd->rxd_os.dma_addr = b_addr; in mac_drv_requeue_rxd()
1720 rxd->rxd_os.skb = NULL; in mac_drv_requeue_rxd()
1725 // we use skb from old rxd in mac_drv_requeue_rxd()
1726 rxd->rxd_os.skb = skb; in mac_drv_requeue_rxd()
1730 rxd->rxd_os.dma_addr = b_addr; in mac_drv_requeue_rxd()
1745 * to fill the RxD ring with receive buffers. It is also called by
1747 * receive buffers into the RxD ring. mac_drv_fill_rxd queues new
1762 volatile struct s_smt_fp_rxd *rxd; in mac_drv_fill_rxd() local
1770 // Check if there is any RXD left. in mac_drv_fill_rxd()
1774 rxd = HWM_GET_CURR_RXD(smc); in mac_drv_fill_rxd()
1783 rxd->rxd_os.dma_addr = b_addr; in mac_drv_fill_rxd()
1795 rxd->rxd_os.skb = skb; in mac_drv_fill_rxd()
1814 * rxd - A pointer to the first RxD which is used by the receive buffer.
1821 void mac_drv_clear_rxd(struct s_smc *smc, volatile struct s_smt_fp_rxd *rxd, in mac_drv_clear_rxd() argument
1834 skb = rxd->rxd_os.skb; in mac_drv_clear_rxd()
1840 rxd->rxd_os.dma_addr, MaxFrameSize, in mac_drv_clear_rxd()
1844 rxd->rxd_os.skb = NULL; in mac_drv_clear_rxd()
1846 rxd = rxd->rxd_next; // Next RXD. in mac_drv_clear_rxd()