• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/net/

Lines Matching refs:rx

437 struct rx {
438 struct rx *next, *prev;
565 struct rx *rxs ____cacheline_aligned;
566 struct rx *rx_to_use;
567 struct rx *rx_to_clean;
1852 static inline void e100_start_receiver(struct nic *nic, struct rx *rx)
1858 if (!rx) rx = nic->rxs;
1861 if (rx->skb) {
1862 e100_exec_cmd(nic, ruc_start, rx->dma_addr);
1868 static int e100_rx_alloc_skb(struct nic *nic, struct rx *rx)
1870 if (!(rx->skb = netdev_alloc_skb_ip_align(nic->netdev, RFD_BUF_LEN)))
1874 skb_copy_to_linear_data(rx->skb, &nic->blank_rfd, sizeof(struct rfd));
1875 rx->dma_addr = pci_map_single(nic->pdev, rx->skb->data,
1878 if (pci_dma_mapping_error(nic->pdev, rx->dma_addr)) {
1879 dev_kfree_skb_any(rx->skb);
1880 rx->skb = NULL;
1881 rx->dma_addr = 0;
1888 if (rx->prev->skb) {
1889 struct rfd *prev_rfd = (struct rfd *)rx->prev->skb->data;
1890 put_unaligned_le32(rx->dma_addr, &prev_rfd->link);
1891 pci_dma_sync_single_for_device(nic->pdev, rx->prev->dma_addr,
1898 static int e100_rx_indicate(struct nic *nic, struct rx *rx,
1902 struct sk_buff *skb = rx->skb;
1910 pci_dma_sync_single_for_cpu(nic->pdev, rx->dma_addr,
1930 pci_dma_sync_single_for_device(nic->pdev, rx->dma_addr,
1942 pci_unmap_single(nic->pdev, rx->dma_addr,
1978 rx->skb = NULL;
1986 struct rx *rx;
1988 struct rx *old_before_last_rx, *new_before_last_rx;
1992 for (rx = nic->rx_to_clean; rx->skb; rx = nic->rx_to_clean = rx->next) {
1993 err = e100_rx_indicate(nic, rx, work_done, work_to_do);
2013 for (rx = nic->rx_to_use; !rx->skb; rx = nic->rx_to_use = rx->next) {
2014 if (unlikely(e100_rx_alloc_skb(nic, rx)))
2061 struct rx *rx;
2067 for (rx = nic->rxs, i = 0; i < count; rx++, i++) {
2068 if (rx->skb) {
2069 pci_unmap_single(nic->pdev, rx->dma_addr,
2071 dev_kfree_skb(rx->skb);
2083 struct rx *rx;
2090 if (!(nic->rxs = kcalloc(count, sizeof(struct rx), GFP_ATOMIC)))
2093 for (rx = nic->rxs, i = 0; i < count; rx++, i++) {
2094 rx->next = (i + 1 < count) ? rx + 1 : nic->rxs;
2095 rx->prev = (i == 0) ? nic->rxs + count - 1 : rx - 1;
2096 if (e100_rx_alloc_skb(nic, rx)) {
2108 rx = nic->rxs->prev->prev;
2109 before_last = (struct rfd *)rx->skb->data;
2112 pci_dma_sync_single_for_device(nic->pdev, rx->dma_addr,
2536 netif_info(nic, drv, nic->netdev, "Ring Param settings: rx: %d, tx %d\n",