Lines Matching refs:hwdescr

262 spider_net_get_descr_status(struct spider_net_hw_descr *hwdescr)  in spider_net_get_descr_status()  argument
264 return hwdescr->dmac_cmd_status & SPIDER_NET_DESCR_IND_PROC_MASK; in spider_net_get_descr_status()
282 descr->hwdescr->next_descr_addr = 0; in spider_net_free_chain()
306 struct spider_net_hw_descr *hwdescr; in spider_net_init_chain() local
319 hwdescr = chain->hwring; in spider_net_init_chain()
321 for (i=0; i < chain->num_desc; i++, descr++, hwdescr++) { in spider_net_init_chain()
322 hwdescr->dmac_cmd_status = SPIDER_NET_DESCR_NOT_IN_USE; in spider_net_init_chain()
323 hwdescr->next_descr_addr = 0; in spider_net_init_chain()
325 descr->hwdescr = hwdescr; in spider_net_init_chain()
356 pci_unmap_single(card->pdev, descr->hwdescr->buf_addr, in spider_net_free_rx_chain_contents()
380 struct spider_net_hw_descr *hwdescr = descr->hwdescr; in spider_net_prepare_rx_descr() local
401 hwdescr->buf_size = bufsize; in spider_net_prepare_rx_descr()
402 hwdescr->result_size = 0; in spider_net_prepare_rx_descr()
403 hwdescr->valid_size = 0; in spider_net_prepare_rx_descr()
404 hwdescr->data_status = 0; in spider_net_prepare_rx_descr()
405 hwdescr->data_error = 0; in spider_net_prepare_rx_descr()
420 hwdescr->dmac_cmd_status = SPIDER_NET_DESCR_NOT_IN_USE; in spider_net_prepare_rx_descr()
422 hwdescr->buf_addr = buf; in spider_net_prepare_rx_descr()
424 hwdescr->dmac_cmd_status = SPIDER_NET_DESCR_CARDOWNED | in spider_net_prepare_rx_descr()
495 while (spider_net_get_descr_status(chain->head->hwdescr) == in spider_net_refill_rx_chain()
520 descr->prev->hwdescr->next_descr_addr = descr->bus_addr; in spider_net_alloc_rx_skbs()
646 struct spider_net_hw_descr *hwdescr; in spider_net_prepare_tx_descr() local
666 hwdescr = descr->hwdescr; in spider_net_prepare_tx_descr()
670 hwdescr->buf_addr = buf; in spider_net_prepare_tx_descr()
671 hwdescr->buf_size = skb->len; in spider_net_prepare_tx_descr()
672 hwdescr->next_descr_addr = 0; in spider_net_prepare_tx_descr()
673 hwdescr->data_status = 0; in spider_net_prepare_tx_descr()
675 hwdescr->dmac_cmd_status = in spider_net_prepare_tx_descr()
682 hwdescr->dmac_cmd_status |= SPIDER_NET_DMAC_TCP; in spider_net_prepare_tx_descr()
685 hwdescr->dmac_cmd_status |= SPIDER_NET_DMAC_UDP; in spider_net_prepare_tx_descr()
691 descr->prev->hwdescr->next_descr_addr = descr->bus_addr; in spider_net_prepare_tx_descr()
701 struct spider_net_hw_descr *hwdescr; in spider_net_set_low_watermark() local
710 status = descr->hwdescr->dmac_cmd_status & SPIDER_NET_DESCR_NOT_IN_USE; in spider_net_set_low_watermark()
729 descr->hwdescr->dmac_cmd_status |= SPIDER_NET_DESCR_TXDESFLG; in spider_net_set_low_watermark()
731 hwdescr = card->low_watermark->hwdescr; in spider_net_set_low_watermark()
732 hwdescr->dmac_cmd_status = in spider_net_set_low_watermark()
733 hwdescr->dmac_cmd_status & ~SPIDER_NET_DESCR_TXDESFLG; in spider_net_set_low_watermark()
758 struct spider_net_hw_descr *hwdescr; in spider_net_release_tx_chain() local
771 hwdescr = descr->hwdescr; in spider_net_release_tx_chain()
773 status = spider_net_get_descr_status(hwdescr); in spider_net_release_tx_chain()
809 hwdescr->dmac_cmd_status |= SPIDER_NET_DESCR_NOT_IN_USE; in spider_net_release_tx_chain()
812 buf_addr = hwdescr->buf_addr; in spider_net_release_tx_chain()
847 if (spider_net_get_descr_status(descr->hwdescr) == in spider_net_kick_tx_dma()
941 struct spider_net_hw_descr *hwdescr = descr->hwdescr; in spider_net_pass_skb_up() local
944 u32 data_status = hwdescr->data_status; in spider_net_pass_skb_up()
945 u32 data_error = hwdescr->data_error; in spider_net_pass_skb_up()
947 skb_put(skb, hwdescr->valid_size); in spider_net_pass_skb_up()
981 struct spider_net_hw_descr *hwd = start->hwdescr; in show_rx_chain()
1002 hwd = descr->hwdescr; in show_rx_chain()
1043 struct spider_net_hw_descr *hwd = descr->hwdescr; in show_rx_chain()
1082 status = spider_net_get_descr_status(descr->hwdescr); in spider_net_resync_head_ptr()
1090 status = spider_net_get_descr_status(descr->hwdescr); in spider_net_resync_head_ptr()
1094 status = spider_net_get_descr_status(descr->hwdescr); in spider_net_resync_head_ptr()
1109 status = spider_net_get_descr_status(descr->hwdescr); in spider_net_resync_tail_ptr()
1115 status = spider_net_get_descr_status(descr->hwdescr); in spider_net_resync_tail_ptr()
1141 struct spider_net_hw_descr *hwdescr = descr->hwdescr; in spider_net_decode_one_descr() local
1145 status = spider_net_get_descr_status(hwdescr); in spider_net_decode_one_descr()
1156 hw_buf_addr = hwdescr->buf_addr; in spider_net_decode_one_descr()
1157 hwdescr->buf_addr = 0xffffffff; in spider_net_decode_one_descr()
1181 if (hwdescr->data_error & SPIDER_NET_DESTROY_RX_FLAGS) { in spider_net_decode_one_descr()
1186 hwdescr->data_status, hwdescr->data_error); in spider_net_decode_one_descr()
1190 if (hwdescr->dmac_cmd_status & SPIDER_NET_DESCR_BAD_STATUS) { in spider_net_decode_one_descr()
1192 hwdescr->dmac_cmd_status); in spider_net_decode_one_descr()
1194 pr_err("buf_size=x%08x\n", hwdescr->buf_size); in spider_net_decode_one_descr()
1195 pr_err("next_descr_addr=x%08x\n", hwdescr->next_descr_addr); in spider_net_decode_one_descr()
1196 pr_err("result_size=x%08x\n", hwdescr->result_size); in spider_net_decode_one_descr()
1197 pr_err("valid_size=x%08x\n", hwdescr->valid_size); in spider_net_decode_one_descr()
1198 pr_err("data_status=x%08x\n", hwdescr->data_status); in spider_net_decode_one_descr()
1199 pr_err("data_error=x%08x\n", hwdescr->data_error); in spider_net_decode_one_descr()
1209 hwdescr->dmac_cmd_status = SPIDER_NET_DESCR_NOT_IN_USE; in spider_net_decode_one_descr()
1217 hwdescr->dmac_cmd_status = SPIDER_NET_DESCR_NOT_IN_USE; in spider_net_decode_one_descr()