Lines Matching refs:gdesc
368 union Vmxnet3_GenericDesc *gdesc;
370 gdesc = tq->comp_ring.base + tq->comp_ring.next2proc;
371 while (VMXNET3_TCD_GET_GEN(&gdesc->tcd) == tq->comp_ring.gen) {
372 /* Prevent any &gdesc->tcd field from being (speculatively)
373 * read before (&gdesc->tcd)->gen is read.
378 &gdesc->tcd), tq, adapter->pdev,
382 gdesc = tq->comp_ring.base + tq->comp_ring.next2proc;
683 union Vmxnet3_GenericDesc *gdesc;
692 gdesc = ctx->sop_txd; /* both loops below can be skipped */
740 gdesc = tq->tx_ring.base + tq->tx_ring.next2fill;
741 BUG_ON(gdesc->txd.gen == tq->tx_ring.gen);
743 gdesc->txd.addr = cpu_to_le64(tbi->dma_addr);
744 gdesc->dword[2] = cpu_to_le32(dw2);
745 gdesc->dword[3] = 0;
749 tq->tx_ring.next2fill, le64_to_cpu(gdesc->txd.addr),
750 le32_to_cpu(gdesc->dword[2]), gdesc->dword[3]);
782 gdesc = tq->tx_ring.base + tq->tx_ring.next2fill;
783 BUG_ON(gdesc->txd.gen == tq->tx_ring.gen);
785 gdesc->txd.addr = cpu_to_le64(tbi->dma_addr);
786 gdesc->dword[2] = cpu_to_le32(dw2);
787 gdesc->dword[3] = 0;
791 tq->tx_ring.next2fill, le64_to_cpu(gdesc->txd.addr),
792 le32_to_cpu(gdesc->dword[2]), gdesc->dword[3]);
801 ctx->eop_txd = gdesc;
1032 union Vmxnet3_GenericDesc *gdesc;
1126 gdesc = &tempTxDesc;
1127 gdesc->dword[2] = ctx.sop_txd->dword[2];
1128 gdesc->dword[3] = ctx.sop_txd->dword[3];
1130 gdesc = ctx.sop_txd;
1135 gdesc->txd.hlen = ctx.l4_offset + ctx.l4_hdr_size;
1136 gdesc->txd.om = VMXNET3_OM_ENCAP;
1137 gdesc->txd.msscof = ctx.mss;
1140 gdesc->txd.oco = 1;
1142 gdesc->txd.hlen = ctx.l4_offset + ctx.l4_hdr_size;
1143 gdesc->txd.om = VMXNET3_OM_TSO;
1144 gdesc->txd.msscof = ctx.mss;
1146 num_pkts = (skb->len - gdesc->txd.hlen + ctx.mss - 1) / ctx.mss;
1151 gdesc->txd.hlen = ctx.l4_offset +
1153 gdesc->txd.om = VMXNET3_OM_ENCAP;
1154 gdesc->txd.msscof = 0; /* Reserved */
1156 gdesc->txd.hlen = ctx.l4_offset;
1157 gdesc->txd.om = VMXNET3_OM_CSUM;
1158 gdesc->txd.msscof = ctx.l4_offset +
1162 gdesc->txd.om = 0;
1163 gdesc->txd.msscof = 0;
1171 gdesc->txd.ti = 1;
1172 gdesc->txd.tci = skb_vlan_tag_get(skb);
1175 /* Ensure that the write to (&gdesc->txd)->gen will be observed after
1176 * all other writes to &gdesc->txd.
1181 gdesc->dword[2] = cpu_to_le32(le32_to_cpu(gdesc->dword[2]) ^
1187 vmxnet3_TxDescToLe((struct Vmxnet3_TxDesc *)gdesc,
1189 gdesc = ctx.sop_txd;
1194 tq->tx_ring.base), le64_to_cpu(gdesc->txd.addr),
1195 le32_to_cpu(gdesc->dword[2]), le32_to_cpu(gdesc->dword[3]));
1232 union Vmxnet3_GenericDesc *gdesc)
1234 if (!gdesc->rcd.cnc && adapter->netdev->features & NETIF_F_RXCSUM) {
1235 if (gdesc->rcd.v4 &&
1236 (le32_to_cpu(gdesc->dword[3]) &
1239 if ((le32_to_cpu(gdesc->dword[0]) &
1243 WARN_ON_ONCE(!(gdesc->rcd.tcp || gdesc->rcd.udp) &&
1244 !(le32_to_cpu(gdesc->dword[0]) &
1246 WARN_ON_ONCE(gdesc->rcd.frg &&
1247 !(le32_to_cpu(gdesc->dword[0]) &
1249 } else if (gdesc->rcd.v6 && (le32_to_cpu(gdesc->dword[3]) &
1252 if ((le32_to_cpu(gdesc->dword[0]) &
1256 WARN_ON_ONCE(!(gdesc->rcd.tcp || gdesc->rcd.udp) &&
1257 !(le32_to_cpu(gdesc->dword[0]) &
1259 WARN_ON_ONCE(gdesc->rcd.frg &&
1260 !(le32_to_cpu(gdesc->dword[0]) &
1263 if (gdesc->rcd.csum) {
1264 skb->csum = htons(gdesc->rcd.csum);
1305 union Vmxnet3_GenericDesc *gdesc)
1316 BUG_ON(gdesc->rcd.tcp == 0);
1329 if (gdesc->rcd.v4) {
1336 } else if (gdesc->rcd.v6) {
1508 union Vmxnet3_GenericDesc *gdesc;
1511 gdesc = (union Vmxnet3_GenericDesc *)rcd;
1518 encap_lro = (le32_to_cpu(gdesc->dword[0]) &