rpd
for (i = 0; i < rpd->nseg; i++) {
buffer = FORE200E_HDL2BUF(rpd->rsd[ i ].handle);
rpd->rsd[i].length, DMA_FROM_DEVICE);
skb_put_data(skb, buffer->data.align_addr, rpd->rsd[i].length);
rpd->rsd[i].length, DMA_FROM_DEVICE);
fore200e_collect_rpd(struct fore200e* fore200e, struct rpd* rpd)
for (i = 0; i < rpd->nseg; i++) {
buffer = FORE200E_HDL2BUF(rpd->rsd[ i ].handle);
vc_map = FORE200E_VC_MAP(fore200e, entry->rpd->atm_header.vpi, entry->rpd->atm_header.vci);
entry->rpd->atm_header.vpi, entry->rpd->atm_header.vci);
fore200e_push_rpd(fore200e, vcc, entry->rpd);
entry->rpd->atm_header.vpi, entry->rpd->atm_header.vci);
fore200e_collect_rpd(fore200e, entry->rpd);
&rxq->rpd,
sizeof(struct rpd),
rxq->host_entry[ i ].rpd =
FORE200E_INDEX(rxq->rpd.align_addr, struct rpd, i);
FORE200E_DMA_INDEX(rxq->rpd.dma_addr, struct rpd, i);
fore200e->bus->write(FORE200E_DMA_INDEX(rxq->rpd.dma_addr, struct rpd, i),
fore200e_dma_chunk_free(fore200e, &fore200e->host_rxq.rpd);
fore200e_push_rpd(struct fore200e* fore200e, struct atm_vcc* vcc, struct rpd* rpd)
cell_header = (rpd->atm_header.gfc << ATM_HDR_GFC_SHIFT) |
(rpd->atm_header.vpi << ATM_HDR_VPI_SHIFT) |
(rpd->atm_header.vci << ATM_HDR_VCI_SHIFT) |
(rpd->atm_header.plt << ATM_HDR_PTI_SHIFT) |
rpd->atm_header.clp;
for (i = 0; i < rpd->nseg; i++)
pdu_len += rpd->rsd[ i ].length;
struct rpd* rpd; /* addr of receive PDU descriptor */
struct chunk rpd; /* array of rpds */
aer_isr_one_error(rpc->rpd, &e_src);
struct pci_dev *rp = rpc->rpd;
struct pci_dev *pdev = rpc->rpd;
struct pci_dev *pdev = rpc->rpd;
rpc->rpd = port;
struct pci_dev *rpd; /* Root Port device */